This closes #291
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/86934c91 Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/86934c91 Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/86934c91 Branch: refs/heads/master Commit: 86934c91e65f0a2bf58a5286433da50e60ca9fdd Parents: 2c430e5 96849a4 Author: Clebert Suconic <[email protected]> Authored: Tue Jan 5 09:14:57 2016 -0500 Committer: Clebert Suconic <[email protected]> Committed: Tue Jan 5 09:14:57 2016 -0500 ---------------------------------------------------------------------- .gitignore | 8 +- .../apache/activemq/artemis/utils/ByteUtil.java | 37 ++- .../activemq/artemis/utils/ByteUtilTest.java | 8 + .../core/protocol/core/impl/ChannelImpl.java | 4 + .../src/main/assembly/source-assembly.xml | 15 ++ .../core/io/IOCriticalErrorListener.java | 2 +- .../openwire/amq/AMQServerConsumer.java | 37 +-- .../core/management/impl/QueueControlImpl.java | 4 +- .../artemis/core/paging/PagingStore.java | 2 + .../artemis/core/paging/PagingStoreFactory.java | 2 + .../artemis/core/paging/cursor/PageCache.java | 11 - .../core/paging/cursor/PageCursorProvider.java | 5 +- .../core/paging/cursor/PageSubscription.java | 5 +- .../core/paging/cursor/PagedReference.java | 3 +- .../core/paging/cursor/PagedReferenceImpl.java | 36 ++- .../paging/cursor/impl/LivePageCacheImpl.java | 10 - .../core/paging/cursor/impl/PageCacheImpl.java | 37 +-- .../cursor/impl/PageCursorProviderImpl.java | 61 +++-- .../cursor/impl/PageSubscriptionImpl.java | 147 +++++++---- .../core/paging/impl/PagingStoreFactoryNIO.java | 4 + .../core/paging/impl/PagingStoreImpl.java | 6 + .../core/persistence/StorageManager.java | 2 + .../impl/journal/JournalStorageManager.java | 25 +- .../impl/nullpm/NullStorageManager.java | 23 +- .../core/postoffice/DuplicateIDCache.java | 2 + .../artemis/core/postoffice/PostOffice.java | 2 +- .../postoffice/impl/DuplicateIDCacheImpl.java | 93 ++++++- .../core/postoffice/impl/PostOfficeImpl.java | 36 +-- .../core/ServerSessionPacketHandler.java | 90 ++++--- .../artemis/core/server/MessageReference.java | 4 +- .../activemq/artemis/core/server/Queue.java | 7 +- .../core/server/ScheduledDeliveryHandler.java | 5 +- .../artemis/core/server/ServerSession.java | 2 + .../cluster/impl/ClusterConnectionImpl.java | 2 +- .../core/server/impl/ActiveMQServerImpl.java | 30 +-- .../core/server/impl/LastValueQueue.java | 79 ++++-- .../core/server/impl/MessageReferenceImpl.java | 2 +- .../artemis/core/server/impl/QueueImpl.java | 87 ++++--- .../artemis/core/server/impl/RefsOperation.java | 27 +- .../impl/ScheduledDeliveryHandlerImpl.java | 5 +- .../core/server/impl/ServerConsumerImpl.java | 62 ++++- .../core/server/impl/ServerSessionImpl.java | 15 ++ .../impl/ScheduledDeliveryHandlerTest.java | 4 +- .../transaction/impl/TransactionImplTest.java | 5 + pom.xml | 8 + .../integration/DuplicateDetectionTest.java | 249 ++++++------------- .../storage/PersistMultiThreadTest.java | 4 + .../core/paging/impl/PagingStoreImplTest.java | 4 + .../impl/DuplicateDetectionUnitTest.java | 2 +- .../core/server/impl/fakes/FakeConsumer.java | 60 +++-- .../core/server/impl/fakes/FakePostOffice.java | 3 +- 51 files changed, 815 insertions(+), 568 deletions(-) ----------------------------------------------------------------------
