Skip to content

Releases: real-logic/artio

0.153

12 Jun 14:29
5941c09
Compare
Choose a tag to compare
  • Fix an issue where values of required temporal fields would get retained on decoders after reset. This should rarely be a problem, considering they are required and hence replaced on next decode.
  • Add --delimiter option to FixArchivePrinter to replace field delimiters in printed messages (#509).

0.152

04 Jun 13:57
2a2bebb
Compare
Choose a tag to compare
  • Upgrade Agrona to 1.21.2 to prevent a potential exception when pruning archive.
  • Fix FixReplayerSession state scope when running multiple Artio instances in a single JVM.
  • Fix adminEnginePublication stream name when printAeronStreamIdentifiers is enabled.

0.151

30 May 09:15
59c3a04
Compare
Choose a tag to compare
  • Fix float parsing of numbers which were fractions using scientific notation with a non-zero exponent with trailing zeros, e.g. 1.2e10. Also tighten up scientific notation validation a bit.
  • Upgrade to ByteBuddy 1.14.16.

0.150

10 May 14:30
80b53d3
Compare
Choose a tag to compare
  • Fix typo in FixArchivePrinter
  • Fix an issue in sole-library mode, where reconnecting sessions many times and a library timeout can lead to an exception such as the one below.
    java.lang.IllegalArgumentException: count outside allowed range: count=1142
    at uk.co.real_logic.artio.messages.ControlNotificationEncoder$SessionsEncoder.wrap(ControlNotificationEncoder.java:226)
    at uk.co.real_logic.artio.messages.ControlNotificationEncoder.sessionsCount(ControlNotificationEncoder.java:203)
    at uk.co.real_logic.artio.protocol.GatewayPublication.saveControlNotification(GatewayPublication.java:1009)
    at uk.co.real_logic.artio.engine.framer.Framer.saveControlNotification(Framer.java:1917)
    at uk.co.real_logic.artio.engine.framer.Framer.onLibraryConnect(Framer.java:1851)
    at uk.co.real_logic.artio.protocol.EngineProtocolSubscription.onLibraryConnect(EngineProtocolSubscription.java:224)
    at uk.co.real_logic.artio.protocol.EngineProtocolSubscription.onFragment(EngineProtocolSubscription.java:80)
    at uk.co.real_logic.artio.protocol.ProtocolSubscription.lambda$of$0(ProtocolSubscription.java:59)
    at io.aeron.ControlledFragmentAssembler.onFragment(ControlledFragmentAssembler.java:123)
    at io.aeron.Image.controlledPoll(Image.java:369)
    at io.aeron.Subscription.controlledPoll(Subscription.java:235)
    at uk.co.real_logic.artio.engine.framer.Framer.sendOutboundMessages(Framer.java:447)
    at uk.co.real_logic.artio.engine.framer.Framer.doWork(Framer.java:382)
    at org.agrona.concurrent.AgentRunner.doWork(AgentRunner.java:304)
    at org.agrona.concurrent.AgentRunner.workLoop(AgentRunner.java:296)
    at org.agrona.concurrent.AgentRunner.run(AgentRunner.java:162)
    at java.base/java.lang.Thread.run(Thread.java:840)
    
    
    This issue was due to the engine keeping offline sessions and attempting to encode more sessions than the encoding permits into a ControlNotification.
  • Upgraded to ByteBuddy 1.14.14.

0.139.5

19 Apr 08:36
74a8858
Compare
Choose a tag to compare
  • Fix an issue in sole-library mode, where reconnecting sessions many times and a library timeout can lead to an exception such as the one below.
    java.lang.IllegalArgumentException: count outside allowed range: count=1142
    at uk.co.real_logic.artio.messages.ControlNotificationEncoder$SessionsEncoder.wrap(ControlNotificationEncoder.java:226)
    at uk.co.real_logic.artio.messages.ControlNotificationEncoder.sessionsCount(ControlNotificationEncoder.java:203)
    at uk.co.real_logic.artio.protocol.GatewayPublication.saveControlNotification(GatewayPublication.java:1009)
    at uk.co.real_logic.artio.engine.framer.Framer.saveControlNotification(Framer.java:1917)
    at uk.co.real_logic.artio.engine.framer.Framer.onLibraryConnect(Framer.java:1851)
    at uk.co.real_logic.artio.protocol.EngineProtocolSubscription.onLibraryConnect(EngineProtocolSubscription.java:224)
    at uk.co.real_logic.artio.protocol.EngineProtocolSubscription.onFragment(EngineProtocolSubscription.java:80)
    at uk.co.real_logic.artio.protocol.ProtocolSubscription.lambda$of$0(ProtocolSubscription.java:59)
    at io.aeron.ControlledFragmentAssembler.onFragment(ControlledFragmentAssembler.java:123)
    at io.aeron.Image.controlledPoll(Image.java:369)
    at io.aeron.Subscription.controlledPoll(Subscription.java:235)
    at uk.co.real_logic.artio.engine.framer.Framer.sendOutboundMessages(Framer.java:447)
    at uk.co.real_logic.artio.engine.framer.Framer.doWork(Framer.java:382)
    at org.agrona.concurrent.AgentRunner.doWork(AgentRunner.java:304)
    at org.agrona.concurrent.AgentRunner.workLoop(AgentRunner.java:296)
    at org.agrona.concurrent.AgentRunner.run(AgentRunner.java:162)
    at java.base/java.lang.Thread.run(Thread.java:840)
    
    
    This issue was due to the engine keeping offline sessions and attempting to encode more sessions than the encoding permits into a ControlNotification.

0.149

12 Apr 09:55
f4eb706
Compare
Choose a tag to compare
  • Add connectTimeoutNs to ArtioAdmin and await connection to the FixEngine before allowing any commands to be executed
  • Upgrade to Aeron 1.44.1 and SBE 1.31.1.

0.148

09 Apr 12:07
3e6af88
Compare
Choose a tag to compare
  • Fix a bug where sometimes a sequence reset would result in the replay index deleting only some of the index segment files.
  • Fix a bug where an exception was triggered when logging slow consumers in FixSenderEndPoint.
  • Upgrade to Aeron 1.44.0, SBE 1.31.0, Agrona 1.21.1.
  • Upgrade to ByteBuddy 1.14.13.
  • Upgrade to ASM 9.7.

0.139.4

02 Apr 17:54
db3f43d
Compare
Choose a tag to compare
  • Fix a bug where sometimes a sequence reset would result in the replay index deleting only some of the index segment files.
  • Fix a bug where an exception was triggered when logging slow consumers in FixSenderEndPoint.

0.147

14 Mar 12:48
5fe9918
Compare
Choose a tag to compare
  • Improve FixArchive{Printer,Scanner} default settings (fixes #468, fixes #492, closes #493).
  • Log ASCII instead of byte array for FIX_MESSAGE_TCP log message on writes.
  • Make the engine reuse its outbound recording consistently.

0.146

23 Feb 16:19
ba4b55f
Compare
Choose a tag to compare
  • Invalid/unnecessary JavaDocs on toEncoder/copyTo methods are no longer generated.
  • Added optional support for encoding any fields.
  • Started testing with Java 21.
  • Upgraded to JUnit 5.10.2.
  • Upgraded to ByteBuddy 1.14.12.
  • Upgraded to Versions 0.51.0.