A concurrent Merkle tree is a Merkle tree that is optimized for concurrent reads and writes. It stores a secure changelog of the most recent changes, their root hash, and the proof to derive it. The maximum number of changes is known as the maxBufferSize

when a validator receives change requests to an on-chain Merkle tree in rapid succession, it can use this changelog as a source of truth allowing for up to maxBufferSize changes to the tree in the same slot.

  • Max depth
  • Max buffer size
  • Canopy depth