Skip to content

Same merges produce different mergeKeys, causing merge races #2299

Closed
@marta-lokhova

Description

It looks like maxProtocolVersion is used to create MergeKey in the merge re-attachment map. During normal operation in addBatch it uses current protocol version, but when FutureBucket calls makeLive is over-approximates it to Config::CURRENT_LEDGER_PROTOCOL_VERSION, so I think same merges could produce different keys in the merge map, if supported protocol version differs from current protocol version. I think this may cause redoing some of the merges, since we won't be able to retrieve finished/running merge due to differing keys.

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions