[ https://issues.apache.org/jira/browse/BOOKKEEPER-312?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13567977#comment-13567977 ]
Hudson commented on BOOKKEEPER-312: ----------------------------------- Integrated in bookkeeper-trunk #83 (See [https://builds.apache.org/job/bookkeeper-trunk/83/]) BOOKKEEPER-312: Implementation of JMS provider (mridul via ivank) (Revision 1441108) Result = FAILURE ivank : Files : * /zookeeper/bookkeeper/trunk/CHANGES.txt * /zookeeper/bookkeeper/trunk/hedwig-client-jms * /zookeeper/bookkeeper/trunk/hedwig-client-jms/pom.xml * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/grammar * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/grammar/javacc * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/grammar/javacc/readme.html * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/grammar/javacc/selector_grammar.jjt * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/ConnectionImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/ConnectionMetaDataImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/DebugUtil.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/LRUCacheMap.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/LRUCacheSet.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/MessagingSessionFacade.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/Mutable.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/SessionImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/StateManager.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/jndi * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/jndi/HedwigInitialContext.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/jndi/HedwigInitialContextFactory.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/jndi/package-info.html * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/BytesMessageImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/MapMessageImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/MessageImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/MessageUtil.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/ObjectMessageImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/StreamMessageImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/TextMessageImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/header * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/header/JmsHeader.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/header/MetadataProcessor.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/message/package-info.html * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/package-info.html * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/BinaryArithmeticFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/BinaryExprFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/ExprFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/InterpretSelectorParserVisitor.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/LogicalComparisonFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/MyNode.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/PropertyExprFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/SelectorConstant.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/SelectorEvalState.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/SelectorEvaluationException.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/TreeDumperSelectorParserVisitor.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/UnaryArithmeticFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/UnaryExprFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/ValueComparisonFunction.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/selector/package-info.html * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/HedwigConnectionFactoryImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/HedwigConnectionImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/HedwigMessagingSessionFacade.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/MessageConsumerImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/MessageProducerImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/QueueSessionImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/TopicPublisherImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/TopicSessionImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/TopicSubscriberImpl.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/java/org/apache/hedwig/jms/spi/package-info.html * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/protobuf * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/protobuf/JmsHeader.proto * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/resources * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/main/resources/log4j.properties * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/AutoFailTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/CombinationTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/ConnectionCleanupTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/ConsumerReceiveWithTimeoutTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/ExpiryHogTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JMSConsumerTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JMSDurableTopicRedeliverTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JMSIndividualAckTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JMSMessageTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JMSUsecaseTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsAutoAckListenerTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsAutoAckTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsBenchmark.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsClientAckListenerTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsClientAckTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsConnectionStartStopTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsConsumerResetActiveListenerTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsCreateConsumerInOnMessageTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsDurableTopicSelectorTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsDurableTopicSendReceiveTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsDurableTopicTransactionTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsMultipleClientsTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsRedeliveredTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsRollbackRedeliveryTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsSendReceiveTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsSendReceiveWithMessageExpirationTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsSendWithAsyncCallbackTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicCompositeSendReceiveTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicRedeliverTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicSelectorTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicSendReceiveSubscriberTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicSendReceiveTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicSendReceiveWithTwoConnectionsTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicSendReceiveWithTwoConnectionsWithJMXTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicSendSameMessageTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTopicTransactionTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/JmsTransactionTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/LoadTestBurnIn.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/RedeliveryPolicyTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/TestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/TimeStampTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/demo * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/demo/SimpleConsumer.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/demo/SimpleProducer.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/load * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/load/LoadClient.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/load/LoadController.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/load/LoadTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/ConnectionChurnTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/InactiveDurableTopicTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/NetworkedSyncTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/NumberOfDestinationsTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/PerfConsumer.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/PerfProducer.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/PerfRate.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SimpleDurableTopicNetworkTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SimpleDurableTopicTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SimpleNetworkTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SimpleNonPersistentTopicTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SimpleTopicTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SlowConsumer.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SlowConsumerTopicTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/perf/SlowDurableConsumerTopicTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/JmsResourceProvider.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/JmsSendReceiveTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/JmsTopicSendReceiveTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/JmsTopicSendReceiveWithTwoConnectionsAndByteSelectorTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/JmsTopicSendReceiveWithTwoConnectionsTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/TestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/rollback * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/test/rollback/DelegatingTransactionalMessageListener.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/ChangeSentMessageTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/ChangeSessionDeliveryModeTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/CompositeConsumeTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/CompositePublishTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/ConcurrentProducerDurableConsumerTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/DiscriminatingConsumerLoadTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/DispatchMultipleConsumersTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/DurableConsumerCloseAndReconnectTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/DurableSubProcessTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/DurableSubSelectorDelayTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/DurableSubscriptionHangTestCase.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/MyObject.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/NonBlockingConsumerRedeliveryTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/ObjectMessageNotSerializableTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/ProducerConsumerTestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/PublishOnDurableTopicConsumedMessageTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/PublishOnTopicConsumedMessageTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/SubscribeClosePublishThenConsumeTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/TestSupport.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/TopicRedeliverTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/TransactionRollbackOrderTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/usecases/TransactionTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/ConsumerThread.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/DefaultTestAppender.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/IdGenerator.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/MessageIdList.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/ProducerThread.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/SimplePojo.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/activemq/util/Wait.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/JmsTestBase.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms/BasicJMSTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms/selector * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms/selector/BasicSelectorGrammarTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms/selector/activemq * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms/selector/activemq/SelectorParserTest.java * /zookeeper/bookkeeper/trunk/hedwig-client-jms/src/test/java/org/apache/hedwig/jms/selector/activemq/SelectorTest.java * /zookeeper/bookkeeper/trunk/pom.xml > Implementation of JMS provider > ------------------------------ > > Key: BOOKKEEPER-312 > URL: https://issues.apache.org/jira/browse/BOOKKEEPER-312 > Project: Bookkeeper > Issue Type: Sub-task > Reporter: Mridul Muralidharan > Assignee: Mridul Muralidharan > Fix For: 4.3.0 > > Attachments: BOOKKEEPER-312.diff, hedwig-client-jms.patch.10 > > > The JMS provider implementation conforming to the 1.1 spec. > The limitations as of now are : > 1) No support for Queue's : Hedwig currently does not have a notion of JMS > queue's for us to leverage. > 2) No support for noLocal : Hedwig DOES NOT conform to JMS model of > connection -(n)-> session -(n)-> publisher/subscriber. Each session has a > hedwig connection. > Currently I am simulating noLocal, but this IS fragile and works for the > duration of connection - ONLY until the message id is still in a LRUCache. As > mentioned before, this is a kludge, and not a good solution. > 3) Note that everything is durable in hedwig - so we do not support > NON_PERSISTENT delivery mode. > 4) Calling unsubscribe on a durable subscription will fail if it was NOT > created in the current session. > In hedwig, to unsubscribe, we need the subscription id and the topic ... > To simulate unsubscribe(), we store the subscriberId to topicName mapping > when a create* api is invoked. Hence, if create* was NOT called, then we have > no way to infer which topic the subscription-id refers to from hedwig, and so > cant unsubscribe. > The workaround is - simply create a durable subsriber just as a workaround of > this limitation - the topicName will be known to the user/client anyway. > 5) Explicit session recovery is not supported. > Reconnection of hedwig session (either explicitly or implicitly by underlying > client implementation) will automatically trigger redelivery of > un-acknowledged messages. > 6) Because of the above, setting the JMSRedelivered flag is almost impossible > in a consistent way. > Currently, we simulate it for redelivery due to provider side events : > rollback of txn, exception in message listener (primarily). > At best we can simulate it with a kludge - at risk of potentially running out > of resources ... this is being investigated : but unlikely to have a clean > fix. > 7) Hedwig only supports marking all messages until seq-id as received : while > JMS indicates ability to acknowledge individual messages. > This distinction is currently unsupported. > 8) JMS spec requires > "A connection's delivery of incoming messages can be temporarily stopped > using its stop() method. It can be restarted using its start() method. When > the connection is stopped, delivery to all the connection’s MessageConsumers > is inhibited: synchronous receives block, and messages are not delivered to > MessageListeners." > We honor this for undelivered messages from server - but if stop is called > while there are pending messages yet to be delivered to a listener (or > buffered in subscriber for receive), then they will be delivered irrespective > of stop(). -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira