Skip to content

Release v20.69.1

Choose a tag to compare

@github-actions github-actions released this 01 Aug 09:16
6df1286

Summary

concurrency: true on a command declared a guarantee that has never been in force.

Fixed

  • A command scoped with concurrency: true now actually participates in the concurrency check. The scope carries an expected sequence number resolved by the configured concurrency strategy, instead of a hardcoded EventSequenceNumber.Unavailable that the kernel skipped.
  • Declaring concurrency: true no longer leaves a command with weaker protection than declaring nothing. The scope it built was not NotSet, so it displaced the strategy the event sequence would otherwise have applied.
  • The scope is bound to the event source being appended to. A null event source id made the kernel compute the tail across every event source sharing the type.
  • A command appending across streams gets a concurrency scope per target event source, instead of one scope carrying a single stream's expected tail applied to all of them.