Releases: artiofix/artio
Releases · artiofix/artio
0.153
- 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 toFixArchivePrinter
to replace field delimiters in printed messages (#509).
0.152
- 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 whenprintAeronStreamIdentifiers
is enabled.
0.151
- 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
- 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.
This issue was due to the engine keeping offline sessions and attempting to encode more sessions than the encoding permits into a ControlNotification.
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)
- Upgraded to ByteBuddy 1.14.14.
0.139.5
- 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.
This issue was due to the engine keeping offline sessions and attempting to encode more sessions than the encoding permits into a ControlNotification.
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)
0.149
0.148
- 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
0.147
0.146
- 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.