Skip to content

Releases: real-logic/artio

0.130

26 Jun 13:49
Compare
Choose a tag to compare
  • Fix bug where FixMessageLogger could output messages out of order if their timestamps were equal
  • Fix bug where resend requests didn't work with logging disabled
  • Make TCP level connection disconnects more prompt in the case of a fix heartbeat timeout
  • Add a way to disable heartbeats in response to test requests in order to enable testing
  • Fix bug where reconnecting an initiator in a running instance which had previously disconnected and only setting it's resetseqnum flag the second time wouldn't get set

0.129

07 Jun 08:13
Compare
Choose a tag to compare
  • Return AsciiSequenceView instead of void for more fluent decoder API
  • Add encoder configuration parameter to avoid throwing when decoding optional strings
  • Add @generated annotation to generated types
  • Fix bug where a session could receive it's replay complete notification after the counter-party receives the full replay.
  • Fix bug where a replay of missing messages could stall future replays of a connection
  • Fix potentially sending two replay completes
  • Fix race between spamming messages and offline sequence number handover.

0.128

12 May 09:43
Compare
Choose a tag to compare
  • Rewrite the implementation of slow consumer behaviour, this has several implications:
  1. Artio buffers messages in the SenderEndPoint and not re-scan the archive, which potentially uses more memory but removes error prone and complex code.
  2. Artio no longer back-pressures FIX sessions during replay.
  3. The backpressureMessagesDuringReplay configuration option has been removed from Artio as it's no longer needed.

0.127

20 Apr 14:09
Compare
Choose a tag to compare
  • Improve logging around replay events
  • Add sessionId and firmId long support to Binary Entrypoint forNextSessionVerID
  • Fix race condition in receiving valid resend request messages in the SenderEndPoint
  • Improve reliability of the FIXP acceptor replay
  • Don't accidentally requeue replay correlation ids once they've already been processed
  • Upgrade to Agrona 1.15.1, SBE 1.25.3, and Aeron 1.38.1.

0.126

11 Apr 09:03
Compare
Choose a tag to compare
  • Fix bug where two archive prunes one after another don't properly prune the second time
  • Fix bug race condition in applying sequence number update redacts.
  • Fix windows specific file locking bug when a reset sequence number operation happens
  • Fix bug where repeated attempts to initiate a connection that always failed leaked counters
  • Fix bug in String subsequence equality matching.
  • Fix bug in SenderTargetAndSubSessionIdStrategy where the localSubID should be compared with targetSubID as is taken from a received header.

0.125

06 Apr 10:29
Compare
Choose a tag to compare
  • Add a maximumBufferSize to the FixArchiveScanner reorder buffer to avoid buffering more data than an array can store.
  • Improve disconnect detection during replays and fix issue where disconnects during replays can go undetected.
  • Improve logging of replay related operations
  • Clarify and improve FIXP javadoc
  • Add support for a NEXT_SESSION_VERSION_ID feature for FIXP acceptor sessions

0.124

31 Mar 11:07
Compare
Choose a tag to compare
  • Enable initiating offline sessions
  • Ensure that session version id is setup with an acceptor fixp connection
  • Add in a resend request completion callback and improve tracking of the resend completion.
  • Fix bug where an offline sequence reset that increases the sequence number results in messages not being delivered in a subsequent resend.

0.123

22 Mar 10:38
Compare
Choose a tag to compare
  • Improve performance of fix archive scanner in pathological cases
  • Improve indexer thread performance
  • Improve performance of replay index with large numbers of sessions
  • Add the ability to set a custom archive context to the fix archive scanner
  • Add a forced heartbeat configuration option to make testing easier
  • Add option to disable index checksums
  • Fix overflow if a large enough replay index file capacity was set
  • Fix two bugs that trigger subtle back-pressure blockage issues when processing resend requests.
  • Fix a bug where metadata causes the Resending: log line to print unnecesary stuff at the beginning
  • Fix bug in FixMessageConsumer where the offset and length were incorrectly calculated

0.122

14 Mar 11:06
Compare
Choose a tag to compare
  • Improve validation around handling a session sequence number reset case more explicitly
  • Improve debuggability of rejected authentications
  • FIXP improvements: be more flexible in terms of what you accept on a followerSession in terms of fromNegotiate
  • Fix bug using the LocalMktDateEncoder#encode(byte[]) method and improve documentation of LocalMktDate encoder and decoder.
  • Fix bug where ending a stream early could result in FixArchiveScanner stalling.
  • Fix a race between closing the archive and resetting state.
  • Fix bug where overlapping encoder rejects in a back-pressure scenario could cause the last one to be written to both connections.

0.121

02 Mar 21:00
Compare
Choose a tag to compare
  • Don't increment sequence index after a sequence reset that increases sequence numbers with improved handling of resend requests after sending sequence reset messages
  • Improve support for huge replay indices by splitting files into segments that grow incrementally
  • Bump the default maximum replay index size
  • Remove ability to size replay index files by bytes - only by number of records
  • Resolve latency issues whilst lingering a connection that was authentication rejected with a custom reject message.