Support bucket versioning (#9377)

- Implement a new xl.json 2.0.0 format to support,
  this moves the entire marshaling logic to POSIX
  layer, top layer always consumes a common FileInfo
  construct which simplifies the metadata reads.
- Implement list object versions
- Migrate to siphash from crchash for new deployments
  for object placements.

Fixes #2111
This commit is contained in:
Harshavardhana
2020-06-12 20:04:01 -07:00
committed by GitHub
parent 43d6e3ae06
commit 4915433bd2
203 changed files with 13833 additions and 6919 deletions

View File

@@ -34,7 +34,7 @@ import (
func getLocalCPUOBDInfo(ctx context.Context, r *http.Request) madmin.ServerCPUOBDInfo {
addr := r.Host
if globalIsDistXL {
if globalIsDistErasure {
addr = GetLocalPeer(globalEndpoints)
}
@@ -103,8 +103,9 @@ func getLocalDrivesOBD(ctx context.Context, parallel bool, endpointZones Endpoin
}
}
wg.Wait()
addr := r.Host
if globalIsDistXL {
if globalIsDistErasure {
addr = GetLocalPeer(endpointZones)
}
if parallel {
@@ -121,7 +122,7 @@ func getLocalDrivesOBD(ctx context.Context, parallel bool, endpointZones Endpoin
func getLocalMemOBD(ctx context.Context, r *http.Request) madmin.ServerMemOBDInfo {
addr := r.Host
if globalIsDistXL {
if globalIsDistErasure {
addr = GetLocalPeer(globalEndpoints)
}
@@ -150,7 +151,7 @@ func getLocalMemOBD(ctx context.Context, r *http.Request) madmin.ServerMemOBDInf
func getLocalProcOBD(ctx context.Context, r *http.Request) madmin.ServerProcOBDInfo {
addr := r.Host
if globalIsDistXL {
if globalIsDistErasure {
addr = GetLocalPeer(globalEndpoints)
}
@@ -371,7 +372,7 @@ func getLocalProcOBD(ctx context.Context, r *http.Request) madmin.ServerProcOBDI
func getLocalOsInfoOBD(ctx context.Context, r *http.Request) madmin.ServerOsOBDInfo {
addr := r.Host
if globalIsDistXL {
if globalIsDistErasure {
addr = GetLocalPeer(globalEndpoints)
}