avoid doing unnecessary work:
benchmark old ns/op new ns/op delta BenchmarkBatch-4 20738739 17047158 -17.80% benchmark old allocs new allocs delta BenchmarkBatch-4 136423 136160 -0.19% benchmark old bytes new bytes delta BenchmarkBatch-4 20277781 7168772 -64.65%
This commit is contained in:
parent
c8538c835f
commit
f6f1628b15
|
@ -100,12 +100,14 @@ func (c *Compensator) Migrate(docID []byte, docNum uint64, oldDocNums []uint64)
|
|||
defer c.deletedMutex.Unlock()
|
||||
|
||||
// clone deleted doc numbers and mutate
|
||||
newDeletedDocNumbers := c.deletedDocNumbers.Clone()
|
||||
for _, oldDocNum := range oldDocNums {
|
||||
newDeletedDocNumbers.Set(uint(oldDocNum))
|
||||
if len(oldDocNums) > 0 {
|
||||
newDeletedDocNumbers := c.deletedDocNumbers.Clone()
|
||||
for _, oldDocNum := range oldDocNums {
|
||||
newDeletedDocNumbers.Set(uint(oldDocNum))
|
||||
}
|
||||
// update pointer
|
||||
c.deletedDocNumbers = newDeletedDocNumbers
|
||||
}
|
||||
// update pointer
|
||||
c.deletedDocNumbers = newDeletedDocNumbers
|
||||
|
||||
// remove entry from in-flight if it still has same doc num
|
||||
val := c.inFlight.Get(&InFlightItem{docID: docID})
|
||||
|
|
Loading…
Reference in New Issue
Block a user