Releases: real-logic/aeron
Releases · real-logic/aeron
1.2.4
- Update CnC file to accommodate counters with labels up to 380 bytes. This bumps the CNC_VERSION so all clients and the driver on the same machine need to be upgraded at the same time.
- Truncate log buffers when a stream is closed so space can be reclaimed as soon as possible.
- Add
Image.controlledPeek
to peek ahead into a stream without advancing the subscriber position. - Improve the efficiency of Aeron startup and shutdown.
- Back pressure a Publication as soon as its timeout is triggered due to not receiving status messages so that low throughput connections signal NOT_CONNECTED sooner. Also applies to IPC when all Subscriptions are closed.
- Add per
Subscription
callbacks for notification ofImage
availability and unavailability. - Make media driver conductor more efficient so it can deal with a higher number of connected streams.
- Add the ability to create an
ExclusivePublication
with initial state set so it can replay existing archived data. - Add
ExclusivePublication
for higher throughput single threaded publisher. - Allow the Aeron client to start before the media driver when an existing CnC file is present.
- Clean up
Aeron.Context
if an error occurs when trying to establish a connection with the media driver. - Add
Aeron.nextCorrelationId()
. - Avoid a recursive close in the Aeron Java client when a timeout occurs.
- Upgrade to sevntu-checks 1.23.1.
- Upgrade to Checkstyle 7.6.1.
- Upgrade to Byte Buddy 1.6.12.
- Upgrade to Mockito 2.7.21.
- Upgrade to Agrona 0.9.4.
Java binaries can be found here...
1.2.3
1.2.2
1.2.1
- Fix bug with IPC
Publication
s goingNOT_CONNECTED
with very slow subscribers that are still connected. - Grow fragment assembly buffer using the golden ratio rather than doubling on a
Subscription
. - Improve Javadoc for Multi-Destination-Cast params.
- Upgrade to SBE 1.6.0.
Java binaries can be found here...
1.2.0
- Multi-Destination-Cast for multicast like semantics over multiple UDP unicast streams.
- Linger networked
Publication
s that have spies until the spies have caught up with the sender position. - Manage
Image
availability andSubscription
s for IPC in the same way as for network streams. - Performance improvements from fixing a few false sharing issues.
- Fix network frame logging with debugging agent.
- Fix intermittent system tests on Windows.
- Make the Java client more robust to misuse.
- Windows C++ compilation fixes.
- Be more strict with validating client parameters before mutating state.
- Ability to set the MTU length on individual UDP streams.
- Upgrade to Checkstyle 7.5.1.
- Upgrade to Byte Buddy 1.6.9.
- Upgrade to Mockito 2.7.9.
- Upgrade to Agrona 0.9.3.
Java binaries can be found here...
1.1.0
- Numerous small performance improvements.
- Fix bug with publications going NOT_CONNECTED because nano time was used rather than the epoch clock.
- Ability to subscribe to a stream as
reliable=false
which enables gaps being filled without invoking the reliable recovery process. - Loss Reporting by stream for monitoring.
- OSI layer 4 congestion control/avoidance service which can optionally be enabled on congested networks.
- Support for running 32-bit C++ clients on ARM.
- Rework of loss detection to make it more efficient.
- Ability to measure RTT added to the network protocol.
- Upgrade to Mockito 2.6.8.
- Upgrade to Checkstyle 7.4.
- Upgrade to sevntu-checks 1.23.0.
- Upgrade to ByteBuddy 1.6.5.
- Upgrade to Agrona 0.9.2.
- Upgrade to Gradle 3.3.
Java binaries can be found here...
v1.0.5
- Use
BusySpinIdleStrategy
for the conductor in theLowLatencyMediaDriver
to reduce some latency outliers at the expense of more CPU usage. - Fix some cases of false sharing on key data structures.
- Remove OSGi plugin from aeron-agent to fix issue that prevented debug logging due to premain not in manifest.
- Allow driver and examples to be shutdown with SIGTERM as well as SIGINT.
- New flow control strategies for minimum and preferred receivers on multicast as additions to existing max strategy.
- Add receiver ID to status messages to enable additional flow control strategies such as preferred receiver.
- Remove deprecated channel URI format support.
- Added warm up cycle to C++ ping pong example.
- Apply
const
where possible in C++ client code. - Fix checks against max message and max payload length in C++ publication claim.
- Upgrade to Mockito 2.2.29.
- Upgrade to Checkstyle 7.3.
- Upgrade to sevntu-checks 1.22.0.
- Upgrade to ByteBuddy 1.5.9.
- Upgrade to Agrona 0.9.1.
- Upgrade to Gradle 3.2.1.
Java binaries can be found here...
v1.0.4
- Detect Aeron Client use after close operations and improve locking strategy.
- Park the client conductor when waiting on the driver response.
- Fix concurrency issues in system tests.
- Added OSGi Gradle plugin.
- Upgrade to Mockito 2.2.16.
- Upgrade to sevntu-checks 1.21.1.
- Upgrade to ByteBuddy 1.5.5.
- Upgrade to Agrona 0.9.0.
- Upgrade to Gradle 3.2.
Binaries can be found here...
v1.0.3
- Linger client resources before informing driver to remove reference to avoid race when client is suffering resource starvation.
- Sleep for less than a millisecond between polls for completed admin actions to make setup more responsive.
- Remove subscription spies before cleaning up
NetworkPublication
s to avoid potential SIGEV. - Use project based file reference to allow for composable Gradle builds.
- Increase default low file space warning to 10 times term length.
- Upgrade to Mockito 2.2.9.
- Upgrade to Checkstyle 7.0.
- Upgrade to ByteBuddy 1.5.0.
- Upgrade to Agrona 0.5.6.
Binaries can be found here...
v1.0.2
- Bugfix for double free of counters that resulted in issues #269 and #281.
- Enable high resolution timer on Windows for more regular polling.
- Add sender limit as a counter for extra telemetry.
- Avoid false sharing on
Sender
andSubscription
round robin counters. - Make rebuilding of
PublicationImage
s a pure monotonic function to avoid unlikely but possible regression in state. - Validate flow control window before accepting a heartbeat message.
- Poll for control messages as a ratio to data packets sent, default to 4, to allow for scaling to larger numbers of connections.
- Allow multi-digit version numbering with C++ build.
- Inline logging code when activated rather than delegating for better performance.
- Low file space warnings and error checks for sufficient space in volume holding log files.
- Update to ByteBuddy 1.4.32.
- Update to Gradle 3.1.
- Update to Agrona 0.5.5.
Binaries can be found here...