Release Notes

0.11.0 (15-07-2024)

Upgrade instructions

Upgrade your Synapse installation to 0.10 by performing the following steps:

  • Stop your Synapse instance.

  • Replace your previous axonsynapse-*.jar file with the new one from the distribution package.

  • Start your Synapse instance.

New features, improvements, and bug fixes

  • Synapse supports messages (event, command, and query) without body.

  • The maximum size of a gRPC message can be specified through the synapse.axon-server.max-message-size property.

Known issues

  • Returned error body doesn’t follow its OpenApi specification.

0.10.0 (16-02-2024)

Upgrade instructions

Upgrade your Synapse installation to 0.10 by performing the following steps:

  • Stop your Synapse instance.

  • Replace your previous axonsynapse-*.jar file with the new one from the distribution package.

  • Start your Synapse instance.

New features, improvements, and bug fixes

  • Event handler batching no longer sends one-sized batches, except for the first batch.

  • Message identifier, payload revision and metadata are correctly propagated for queries and query responses.

  • A query message handler isn’t required to return a body anymore.

  • Axon Server connections are closed only after an inactivity timeout. This fixes an observable race condition.

Known issues

  • Returned error body doesn’t follow its OpenApi specification.

0.9.0 (19-01-2024)

Upgrade instructions

Upgrade your Synapse installation to 0.9 by performing the following steps:

  • Stop your Synapse instance.

  • Replace your previous axonsynapse-*.jar file with the new one from the distribution package.

  • Start your Synapse instance.

New features, improvements, and bug fixes

  • A command handler follows the concurrent execution restriction from the maxConcurrency attribute. The concurrency attribute is deprecated in favor of the maxConcurrency.

  • The event.handler.threads property is deprecated and has no effect anymore.

  • An Axon Server authorization token passed in the X-API-KEY header is uniformly propagated to Axon Server for all message types (event, command, and query) and message representations (payload as body and message as body).

  • The synapse.auth.enabled property is no longer required to send a message with an authorization token in the X-API-KEY header.

  • A potential StackOverflowError, which could occur during a reconnection to Axon Server, is fixed.

Known issues

  • Returned error body doesn’t follow its OpenApi specification.

0.8.0 (15-09-2023)

Upgrade instructions

Upgrade your Synapse installation to 0.8 by performing the following steps:

  • Stop your Synapse instance.

  • Replace your previous axonsynapse-*.jar file with the new one from the distribution package.

  • Start your Synapse instance.

New features, improvements, and bug fixes

  • Query defaults to java.lang.Object for the responseType.

  • Synapse doesn’t require the Axon Server to run during the startup.

  • Synapse doesn’t initiate multiple synapse-storage connections to Axon Server when the original connection breaks.

  • Fixed the issue of an event handler not always publishing processor information.

  • Deleting a non-existing handler returns 204 No Content.

  • Referencing a non-existent clientAuthenticationId or serverAuthenticationId returns 400 Bad Request.

  • Exposing he first and last token of a context at the /v1/contexts/{context}/events endpoint.

  • The dateTime of a message sent to a message handler follows the format of ISO 8601.

  • A command message handler isn’t required to return a body anymore.

  • Configure the Content-Type header for an event list handler to application/json through the property synapse.http.handlers.event.list.content-type=application-json.

  • Payload revision is correctly propagated from a command response to the sender.

  • Synapse supports the optional header AxonIQ-MessageId for specifying a message identifier for raw messages.

  • Routing key is correctly propagated to command handlers.

  • Context endpoint doesn’t return Axon Server internal contexts starting with the _ anymore.

  • The endpoint /actuator/info provides the Synapse version.

  • Resume event streaming to event handlers after Axon Server reconnection.

  • Synapse is available as a docker image at axoniq/synapse.

Known issues

  • Returned error body doesn’t follow its OpenApi specification.

0.7.0 (08-08-2023)

Upgrade instructions

Upgrade your Synapse installation to 0.7 by performing the following steps:

  • Stop your Synapse instance.

  • Replace your previous axonsynapse-*.jar file with the new one from the distribution package.

  • Start your Synapse instance.

New features, improvements, and bug fixes

  • Share Axon Server-based configuration storage among all Synapse instances.

  • Event handler balancing across many Synapse instances.

  • Date and time parsing improvement.

  • The HTTP PUT method for creating or replacing a message handler doesn’t require the handler to exist.

  • Sending a command or issuing a query that causes an error in a handler results in the 502 Bad Gateway response.

  • Publishing a domain event with invalid sequenceNumber results in the 409 Conflict response.

  • Property synapse.is-use-tls deprecated in favor of synapse.axon-server.tls-enabled.

  • Property synapse.certificate-chain deprecated in favor of synapse.axon-server.trust-manager-file.

  • Property synapse.server-list deprecated in favor of synapse.axon-server.server-list.

Known issues

  • Issuing a query to an Axon Framework-based query handler requires specifying responseType.

  • Synapse won’t boot up when it can’t establish an initial connection to Axon Server.

  • Synapse may initiate multiple synapse-storage connections to Axon Server when the original connection breaks.

  • Returned error body doesn’t follow its OpenApi specification.

0.6.2 (19-04-2023)