[ 
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

Reply via email to