Releases: real-logic/aeron
Releases · real-logic/aeron
1.14.0
- Lots of testing on Cluster in preparation for release.
- Avoid using unmapped files during an interrupt close which can cause seg faults. Issue #607.
- Store full channel URI in counters labels for the C media driver.
- Default build to include the C media driver with C++ client.
- Enable the setting of
mtu
,term-length
,sparse
,linger
, andreliable
as channel URI params for the C media driver. - Macro guard against missing PROJECT_SOURCE_DIR. PR #601.
- Clean up of warnings in native code.
- Fix unblocking of full ring buffers when clients die.
- Fix clearing of
linger
andsparse
params inChannelUriStringBuilder
. - Fix issue with stripped channel keeping
linger
andsparse
params that would make stop recording fail. - Fix 'extended alignment' error in Visual Studio 2017 (>15.8). Issue #599.
- Add definition for Add definition for PROJECT_SOURCE_DIR to aeron_client's C++ public interface. PR #596.
- Upgrade to Google Benchmark 1.4.1.
- Upgrade to Checkstyle 8.16.
- Upgrade to SBE 1.10.2.
- Upgrade to Agrona 0.9.29.
Java binaries can be found here...
1.13.0
- Improve throughput and latency of archive replay, significantly so on Windows and OS X.
- Add OS X to Travis for native build.
- Improve handling of compilation flags with CMake. PR #572.
- Fix Page Size constants on Mac OS. Issue #592.
- Fix contains match when listing recordings by URI and improve its performance.
- Add assertions and cleanup C++ client. PR #582.
- Support
alias
in URI parameters. - Fix disparity between Java and C++ for handling of raw tail on publications. Issue #589.
- Deprecate Subscription
pollEndOfStreams
as Images should be used directly. - Use relative source location in C++ exceptions. PR #588.
- Account for EOS when using multi-destination subscriptions.
- Keep an Image around while draining without a timeout to facilitate slow consumers.
- Add the ability to linger an archive replay publication to better cope will lossy networks.
- Refine parsing of tags to allocate less.
- Eliminate unnecessary direct buffer allocations when allocating publication and images.
- Warnings clean up in code base.
- Fix some false sharing issues between agent threads.
- Upgrade to Checkstyle 8.15.
- Upgrade to Gradle 4.10.3.
- Upgrade to SBE 1.10.1.
- Upgrade to Agrona 0.9.28.
Java binaries can be found here...
1.12.0
- Add
ErrorHandler
toAeronArchive
client to better handle async errors from the archive. - Deprecate use of Java
ExclusiveBufferClaim
now that baseBufferClaim
has all the necessary functionality. - Numerous performance improvements.
- More consistent use of
const
and formatting in C++ client. - Add a configurable connection timeout for response and replay streams from the archive.
- Fix overflow in partition index calculation based on position resulting in SIGSEGV in C++ client. Issue #579.
- Fix case of a recording failing with messages > 2MB at the end of term or on unblocking.
- Force close Java publications and subscriptions on channel errors. Issue #456.
- Add monitoring counter for Aeron clients which have timed out.
- Improve
Image
block polling to better handle padding frames. - Add more checks to input parameters on publications, images, and the archive to catch usage errors.
- Add 2 buffer offer to Java
Publication
to avoid need for vectored offer. - Add context to C++
Header
in fragment callback for access to theImage
. - Upgrade to Shadow 4.0.3.
- Upgrade to Byte Buddy 1.9.3.
- Upgrade to Mockito 2.23.4.
- Upgrade to SBE 1.10.0.
- Upgrade to Agrona 0.9.27.
Java binaries can be found here...
1.11.3
- This is the first release that supports building and running on Java 11.
- Account for negative initialisation or wrap on
System.nanoTime()
when checking deadlines. - Add a build matrix for C/C++ and Java on Travis.
- Revert failing C++ build due to PR #555. Issue #560.
- Make the C/C++ build more modular. PR #561.
- Preserve original segment file length when extending a recording.
- Update Java samples showing how IPv4 can give better performance.
- Add support for multi-destination subscriptions to the C++ client. PR #568.
- Correct typos in documentation.
- Add the ability to query the
stopPosition
of a recording in a single call. - Add the ability to query for the last recording matching
channel/stream-id/session-id
in the archive. - Don't attempt replay of archive entries that are marked invalid.
- Set better example with list recordings samples from the Archive. Issue #565.
- Detect and handle thread interrupt in Aeron, Archive, and Cluster Java clients.
- Initialise variable in
StringUtil.h
. Issue #562. - Allow replay from the current recorded position in the Archive.
- Add missing copy assignment operators to C++ client.
- Upgrade to Byte Buddy 1.9.0.
- Upgrade to Mockito 2.23.0.
- Upgrade to Checkstyle 8.14.
- Upgrade to SBE 1.9.0.
- Upgrade to Agrona 0.9.26.
Java binaries can be found here...
1.11.2
- Fix formatting of counter label for stream positions that would corrupt channel and join position. Issue #558.
- Fix potential race condition with updating receiver window for Java and C Media drivers. Impact likely to be more significant on 32-bit platforms.
- Allow accepting of subscriptions when image is in the INIT state. It could be observed that 2 or more subscriptions could see only the first succeed when done in quick succession on a dedicated thread mode.
- Fix potential overflow in position calculations when updating the Archive Catalog after an unclean shutdown.
- Use relative source for exceptions in C++ client. PR #555.
- Fix SHARED_NETWORK threading mode for C Media Driver.
- Upgrade to Shadow 4.0.0.
- Upgrade to SBE 1.8.9.
- Upgrade to Agrona 0.9.25.
Java binaries can be found here...
1.11.1
1.11.0
- Account for message header when listing descriptors from the archive. Issue #550.
- Reduce allocation of exceptions when network issues occur.
- Delete log buffers that are no longer referenced in C media driver.
- Add system counter for failed attempted deletes of log buffers on Windows.
- Fix build of C++ client on Clang 3.9, 4, and 5. Issue #544.
- Prepare for building on Java 11.
- Finally get Aeron working on Sparc. Issue #359.
- Allow for debug logging in the Java driver via the
aeron.event.log.filename
system property and reduce allocation when using this. - Upgrade to Byte Buddy 1.8.21.
- Upgrade to Mockito 2.22.0.
- Upgrade to Gradle 4.10.
- Upgrade to SBE 1.8.8.
- Upgrade to Agrona 0.9.24.
Java binaries can be found here...
1.10.5
- Fix issue with running Java version of Aeron on Sparc CPUs due to endianess.
- Improve efficiency and significantly reduce allocation when performing agent logging in Java driver.
- Fix regression to agent logging for Java driver due to broken pointcut.
- Make resource linger configurable in the Java client.
- Fix buffer overrun in C driver with system counters.
- Reduce footprint for Java subscriptions in the client.
- Fix issue with adding and removing destination to manual MDC publications when publication is not original.
- Improve resource lingering code in Java and C++ clients to narrow the possibility of a seg fault when buffers are unmapped in a low resource utilisation scenario.
- Fix bug when 1GB term lengths are used in Java driver.
- Apply
const
to methods and arguments in C++ client where appropriate. - Added a busy spin idle strategy to C driver that uses X86 PAUSE and make the noop idle strategy truly no op.
- Added
NoOpIdleStrategy
to C++ client. - Fix overflow in large reassembly buffers. PR #538.
- Set
ByteBuffer
s in Java client to be little endian for underlying log buffers. - Upgrade to Checkstyle 8.12.
- Upgrade to Byte Buddy 1.8.15.
- Upgrade to Mockito 2.21.0.
- Upgrade to SBE 1.8.7.
- Upgrade to Agrona 0.9.23.
Java binaries can be found here...
1.10.4
- Small improvement to startup time for Java Media Driver.
- Fix C++ compile for Visual Studio on Windows. PR #528.
- Fix issue causing a seg fault on Windows when connections are closed but clients are holding subscriptions.
- Set control channel to be sparse for faster connections with the archive.
- Allow setting of log buffers to be sparse on a per connection basis by using
sparse=true
as a channel URI param. - Cluster refinements in preparation for beta.
- Upgrade to SBE 1.8.6.
- Upgrade to Agrona 0.9.22.
- Upgrade to Mockito 2.20.1.
- Upgrade to Gradle 4.9.
Java binaries can be found here...