All Versions
51
Latest Version
Avg Release Cycle
136 days
Latest Release
-

Changelog History
Page 4

  • v2.10.1 Changes

    • ๐Ÿ› Bug fix, correct OSGI metadata.
    • โœ‚ Remove unnecessary code in wait strategies.
  • v2.10 Changes

    • โœ‚ Remove deprecated timeout methods.
    • โž• Added OSGI metadata to jar file.
    • โœ‚ Removed PaddedAtomicLong and use Sequence in all places.
    • ๐Ÿ›  Fix various generics warnings.
    • ๐ŸŽ Change Sequence implementation to work around IBM JDK bug and improve performance by ~10%.
    • โž• Add a remainingCapacity() call to the Sequencer class.
  • v2.9 Changes

    • ๐Ÿ—„ Deprecate timeout methods for publishing.
    • โž• Add tryNext and tryPublishEvent for events that shouldn't block during delivery.
    • ๐ŸŽ Small performance enhancement for MultithreadClaimStrategy.
  • v2.8 Changes

    • Create new MultithreadClaimStrategy that works between when threads are highly contended. Previous implementation is now called MultithreadLowContentionClaimStrategy
    • ๐Ÿ›  Fix for bug where EventProcessors weren't being added as gating sequences to the ring buffer.
    • ๐Ÿ›  Fix range tracking bug in Histogram
  • v2.7.1 Changes

    • ๐Ÿ‘€ Artefacts made available via maven central repository. (groupId:com.googlecode.disruptor, artifactId:disruptor) See UsingDisruptorInYourProject for details.
  • v2.7 Changes

    • ๐Ÿ”„ Changed construction API to allow user supplied claim and wait strategies
    • โž• Added AggregateEventHandler to support multiple EventHandlers from a single BatchEventProcessor
    • ๐Ÿ‘Œ Support exception handling from LifecycleAware
    • โž• Added timeout API calls for claiming a sequence when publishing
    • ๐Ÿšค Use LockSupport.parkNanos() instead of Thread.sleep() to reduce latency
    • ๐ŸŽ Reworked performance tests to better support profiling and use LinkedBlockingQueue for comparison because it performs better on the latest processors
    • ๐Ÿ›  Minor bugfixes
  • v2.6 Changes

    • ๐Ÿ‘ท Introduced WorkerPool to allow the one time consumption of events by a worker in a pool of EventProcessors.
    • ๐Ÿ†• New internal implementation of SequenceGroup which is lock free at all times and garbage free for get and set operations.
    • SequenceBarrier now checks alert status on every call whether it is blocking or not.
    • โž• Added scripts in preparation for publishing binaries to maven repository.
  • v2.5.1 Changes

    • ๐Ÿ›  Bugfix for supporting SequenceReportingEventHandler from DSL. (issue 9)
    • ๐Ÿ›  Bugfix for multi-threaded publishing to multiple ring buffers (issue 10)
    • ๐Ÿ”„ Change SequenceBarrier to always check alert status before entering waitFor cycle. Previously this was only checked when the requested sequence was not available.
    • ๐Ÿ”„ Change ClaimStrategy to not spin when the buffer has no available capacity, instead go straight to yielding to allow event processors to catch up.
  • v2.5 Changes

    • ๐Ÿ”„ Changed RingBuffer and publisher API so any mutable object can be placed in the RingBuffer without having to extend AbstractEvent
    • โž• Added EventPublisher implementation to allow the publishing steps to be combined into one action
    • ๐Ÿ‘ DisruptorWizard has been renamed to Disruptor with added support for any subtype of EventProcessor
    • ๐ŸŽ Introduced a new Sequencer class that allows the Disruptor to be applied to other data structures such as multiple arrays. This can be a very useful pattern when multiple event processors work on the same event and you want to avoid false sharing. The Diamond for FizzBuzz is a good example of the issue. It is also higher performance by avoiding the pointer indirection when arrays of primitives are used.
    • ๐ŸŽ Further increased performance and scalability by reducing false sharing.
    • โž• Added progressive backoff strategy to the MultiThreadedClaimStrategy to prevent publisher getting into the claim cycle when the buffer is full because of a slow EventProcessor.
    • ๐ŸŽ Significantly improved performance to WaitStrategy.Option.BLOCKING
    • Introduced SequenceGroup to allow dynamic registration of EventProcessors.
  • v2.0.2 Changes

    • ๐ŸŽ Rework of "False Sharing" prevention which makes the performance much more predictable across all platforms. Special thanks to Jeff Hain for helping focus in on a solution.