Axon Framework - Release 4.4.6

I would like to announce that Axon Framework release 4.4.6 has been brought out the 21st of January 2021. Quite some hard to spot bugs have been uncovered in this release, plenty of which have seen help from our contributors. I would thus like to extend a massive “thank you” to all of them. For those interested in whom they are, the release notes cover all the contributors to 4.4.6.

Now, let me high light some of the things which have been resolved:

  • Contributor “Rafaesp” noted that a registered CommandHandlerInterceptor in the AggregateTestFixture could be invoked more often than desired.
    This only occurred if the fixture’s givenCommands(...) method was invoked, but nonetheless this behaviour was incorrect.
    The issue is marked under #1665 and resolved in pull request #1666.

  • In 4.4.4, a fix was introduced which ensured a ChildEntity (read, the Aggregate Members) was no longer duplicated in an aggregate hierarchy.
    This fix had the troublesome side effect that aggregate member command handlers weren’t registered on every level of the aggregate hierarchy anymore.
    The resolution to this problem can be found in pull request #1674.

  • Using the subscription query in a distributed environment had a possible troublesome side effect.
    If a consumer of updates was closed for whatever reason, it could also close the producing side.
    This is obviously undesired, as no single consumer should influence if the producer should still dispatch updates to other consumers.
    The problem was marked under issue #1680 and resolved in this commit.

  • Right before we aimed to release 4.4.6, contributor “haraldk” provided a thorough issue description when using the SequenceEventStorageEngine.
    He noted that if snapshots were used for an aggregate, there was a window of opportunity that the ‘active’ EventStorageEngine in the sequencing engine did not return any events.
    This followed from the sequence number logic, which wrongfully defaulted to position “0”, even though the starting sequence number is per definition higher if a snapshot has been found.
    The clarifying issue can be found here, with its resolution present in pull request #1683.

For a complete overview of all the changes, you can check the release notes here. As always, please let us know what you think!