mirror of
https://github.com/minio/minio.git
synced 2025-02-09 04:38:09 -05:00
Minor fixes to bucket replication (#18578)
This commit is contained in:
parent
961b0b524e
commit
c397fb6c7a
@ -3163,10 +3163,11 @@ func (p *ReplicationPool) persistMRF() {
|
|||||||
if !ok {
|
if !ok {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
entries[e.versionID] = e
|
||||||
|
|
||||||
if len(entries) >= mrfMaxEntries {
|
if len(entries) >= mrfMaxEntries {
|
||||||
saveMRFToDisk()
|
saveMRFToDisk()
|
||||||
}
|
}
|
||||||
entries[e.versionID] = e
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3190,6 +3191,8 @@ func (p *ReplicationPool) queueMRFSave(entry MRFReplicateEntry) {
|
|||||||
select {
|
select {
|
||||||
case p.mrfSaveCh <- entry:
|
case p.mrfSaveCh <- entry:
|
||||||
default:
|
default:
|
||||||
|
atomic.AddUint64(&globalReplicationStats.mrfStats.TotalDroppedCount, 1)
|
||||||
|
atomic.AddUint64(&globalReplicationStats.mrfStats.TotalDroppedBytes, uint64(entry.sz))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3255,8 +3258,8 @@ func (p *ReplicationPool) loadMRF() (mrfRec MRFReplicateEntries, err error) {
|
|||||||
if !p.initialized() {
|
if !p.initialized() {
|
||||||
return re, nil
|
return re, nil
|
||||||
}
|
}
|
||||||
data := make([]byte, 4)
|
var data [4]byte
|
||||||
n, err := rc.Read(data)
|
n, err := rc.Read(data[:])
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return re, err
|
return re, err
|
||||||
}
|
}
|
||||||
@ -3370,7 +3373,7 @@ func (p *ReplicationPool) initialized() bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// getMRF returns MRF entries for this node.
|
// getMRF returns MRF entries for this node.
|
||||||
func (p *ReplicationPool) getMRF(ctx context.Context, bucket string) (ch chan madmin.ReplicationMRF, err error) {
|
func (p *ReplicationPool) getMRF(ctx context.Context, bucket string) (ch <-chan madmin.ReplicationMRF, err error) {
|
||||||
mrfRec, err := p.loadMRF()
|
mrfRec, err := p.loadMRF()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@ -3380,7 +3383,7 @@ func (p *ReplicationPool) getMRF(ctx context.Context, bucket string) (ch chan ma
|
|||||||
go func() {
|
go func() {
|
||||||
defer close(mrfCh)
|
defer close(mrfCh)
|
||||||
for vID, e := range mrfRec.Entries {
|
for vID, e := range mrfRec.Entries {
|
||||||
if e.Bucket != bucket && bucket != "" {
|
if bucket != "" && e.Bucket != bucket {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
select {
|
select {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user