diff options
Diffstat (limited to 'qpid/cpp/tests')
45 files changed, 0 insertions, 7567 deletions
diff --git a/qpid/cpp/tests/.vg-supp b/qpid/cpp/tests/.vg-supp deleted file mode 100644 index bb73c53744..0000000000 --- a/qpid/cpp/tests/.vg-supp +++ /dev/null @@ -1,2481 +0,0 @@ -{ - x17984_1 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_2 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker6BrokerEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker6BrokerEEC1IS3_EEPT_ - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_3 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker15HeadersExchangeEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker8ExchangeEEC1INS2_15HeadersExchangeEEEPT_ - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_4 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker14FanOutExchangeEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker8ExchangeEEC1INS2_14FanOutExchangeEEEPT_ - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_5 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker13TopicExchangeEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker8ExchangeEEC1INS2_13TopicExchangeEEEPT_ - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_6 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid3sys11APRAcceptorEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid3sys8AcceptorEEC1INS2_11APRAcceptorEEEPT_ - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_7 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid3sys7APRBase11getInstanceEv - fun:_ZN4qpid3sys7APRBase9incrementEv - fun:_ZN4qpid3sys7APRPoolC1Ev - fun:_ZN5boost7details4pool17singleton_defaultIN4qpid3sys7APRPoolEE8instanceEv - fun:_ZN4qpid3sys7APRPool3getEv - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_8 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znam - fun:_ZN4qpid3sys11LFProcessorC1EP10apr_pool_tiii - fun:_ZN4qpid3sys11APRAcceptorC1Esiib - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_9 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid7framing5Value12decode_valueERNS0_6BufferE - fun:_ZN4qpid7framing10FieldTable6decodeERNS0_6BufferE - fun:_ZN4qpid7framing6Buffer13getFieldTableERNS0_10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody13decodeContentERNS0_6BufferE - fun:_ZN4qpid7framing13AMQMethodBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid7framing5ValueEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid7framing5ValueEEC1IS3_EEPT_ - fun:_ZN4qpid7framing10FieldTable6decodeERNS0_6BufferE - fun:_ZN4qpid7framing6Buffer13getFieldTableERNS0_10FieldTableE -} -{ - x17984_10 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker14DirectExchangeEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker8ExchangeEEC1INS2_14DirectExchangeEEEPT_ - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_11 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISsE8allocateEmPKv - fun:_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEm - fun:_ZNSt12_Vector_baseISsSaISsEEC2EmRKS0_ - fun:_ZNSt6vectorISsSaISsEEC2ERKS1_ - fun:_ZN4qpid6broker6TokensC2ERKS1_ - fun:_ZN4qpid6broker12TopicPatternC1ERKS1_ - fun:_ZNSt4pairIKN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS8_EEEC1ERKSB_ - fun:_ZN9__gnu_cxx13new_allocatorISt4pairIKN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS3_5QueueEEESaISA_EEEE9constructEPSD_RKSD_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE14_M_create_nodeERKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE9_M_insertEPSt18_Rb_tree_node_baseSK_RKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE13insert_uniqueERKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE13insert_uniqueESt17_Rb_tree_iteratorISC_ERKSC_ - fun:_ZNSt3mapIN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS7_EESt4lessIS2_ESaISt4pairIKS2_S9_EEE6insertESt17_Rb_tree_iteratorISE_ERKSE_ - fun:_ZNSt3mapIN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS7_EESt4lessIS2_ESaISt4pairIKS2_S9_EEEixERSD_ - fun:_ZN4qpid6broker13TopicExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone -} -{ - x17984_12 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_13 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN5boost10shared_ptrIN4qpid6broker5QueueEEEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE15_M_allocate_mapEm - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EEC2ERKS6_m - fun:_ZNSt5dequeIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EEC1ERKS7_ - fun:_ZNSt5queueIN5boost10shared_ptrIN4qpid6broker5QueueEEESt5dequeIS5_SaIS5_EEEC1ERKS8_ - fun:_ZN4qpid6broker10AutoDeleteC1EPNS0_13QueueRegistryEj - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_14 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid7framing5Value12decode_valueERNS0_6BufferE - fun:_ZN4qpid7framing10FieldTable6decodeERNS0_6BufferE - fun:_ZN4qpid7framing6Buffer13getFieldTableERNS0_10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody13decodeContentERNS0_6BufferE - fun:_ZN4qpid7framing13AMQMethodBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZNSs4_Rep9_S_createEmmRKSaIcE - fun:_ZNSs9_M_mutateEmmm - fun:_ZNSs15_M_replace_safeEmmPKcm - fun:_ZN4qpid7framing6Buffer13getLongStringERSs -} -{ - x17984_15 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueESt17_Rb_tree_iteratorIS8_ERKS8_ - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid6broker5QueueEEESt4lessISsESaISt4pairIKSsS5_EEE6insertESt17_Rb_tree_iteratorISA_ERKSA_ - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid6broker5QueueEEESt4lessISsESaISt4pairIKSsS5_EEEixERS9_ - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm -} -{ - x17984_16 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN4qpid6broker13Configuration6OptionEE8allocateEmPKv - fun:_ZNSt12_Vector_baseIPN4qpid6broker13Configuration6OptionESaIS4_EE11_M_allocateEm - fun:_ZNSt6vectorIPN4qpid6broker13Configuration6OptionESaIS4_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_ - fun:_ZNSt6vectorIPN4qpid6broker13Configuration6OptionESaIS4_EE9push_backERKS4_ - fun:_ZN4qpid6broker13ConfigurationC1Ev - fun:main -} -{ - x17984_17 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_18 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker14FanOutExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__ZdlPv - fun:_ZN9__gnu_cxx13new_allocatorIN5boost10shared_ptrIN4qpid6broker5QueueEEEE10deallocateEPS6_m - fun:_ZNSt12_Vector_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE13_M_deallocateEPS5_m - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS5_S7_EERKS5_ - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE9push_backERKS5_ - fun:_ZN4qpid6broker14FanOutExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt -} -{ - x17984_19 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker15HeadersExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__ZdlPv - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEEEE10deallocateEPSB_m - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS8_E - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE12destroy_nodeEPSt13_Rb_tree_nodeIS8_E - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EED1Ev - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid7framing5ValueEEESt4lessISsESaISt4pairIKSsS5_EEED1Ev -} -{ - x17984_20 - Memcheck:Leak - fun:_vgrZU_libcZdsoZa_malloc - fun:apr_allocator_create - fun:apr_pool_initialize - fun:apr_initialize - fun:_ZN4qpid3sys7APRBaseC1Ev - fun:_ZN4qpid3sys7APRBase11getInstanceEv - fun:_ZN4qpid3sys7APRBase9incrementEv - fun:_ZN4qpid3sys7APRPoolC1Ev - fun:_ZN5boost7details4pool17singleton_defaultIN4qpid3sys7APRPoolEE8instanceEv - fun:_ZN4qpid3sys7APRPool3getEv - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_21 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid7framing5ValueEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid7framing5ValueEEC1IS3_EEPT_ - fun:_ZN4qpid7framing10FieldTable6decodeERNS0_6BufferE - fun:_ZN4qpid7framing6Buffer13getFieldTableERNS0_10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody13decodeContentERNS0_6BufferE - fun:_ZN4qpid7framing13AMQMethodBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_ -} -{ - x17984_22 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker13TopicExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__ZdlPv - fun:_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsm - fun:_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsm - fun:_ZNSt12_Vector_baseISsSaISsEED2Ev - fun:_ZNSt6vectorISsSaISsEED2Ev - fun:_ZN4qpid6broker6TokensD2Ev - fun:_ZN4qpid6broker12TopicPatternD1Ev - fun:_ZN4qpid6broker13TopicExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE -} -{ - x17984_23 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS2_6broker5QueueEEEEE8allocateEmPKv - fun:_ZNSt12_Vector_baseISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE11_M_allocateEm - fun:_ZNSt6vectorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS9_SB_EERKS9_ - fun:_ZNSt6vectorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE9push_backERKS9_ - fun:_ZN4qpid6broker15HeadersExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_ -} -{ - x17984_24 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker7Channel8completeERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker14MessageBuilder5routeEv - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN4qpid6broker4TxOpEE8allocateEmPKv - fun:_ZNSt12_Vector_baseIPN4qpid6broker4TxOpESaIS3_EE11_M_allocateEm - fun:_ZNSt6vectorIPN4qpid6broker4TxOpESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_ - fun:_ZNSt6vectorIPN4qpid6broker4TxOpESaIS3_EE9push_backERKS3_ - fun:_ZN4qpid6broker8TxBuffer6enlistEPNS0_4TxOpE -} -{ - x17984_25 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_26 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS4_5QueueEEESaISB_EEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE14_M_create_nodeERKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE9_M_insertEPSt18_Rb_tree_node_baseSK_RKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE13insert_uniqueERKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE13insert_uniqueESt17_Rb_tree_iteratorISC_ERKSC_ - fun:_ZNSt3mapIN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS7_EESt4lessIS2_ESaISt4pairIKS2_S9_EEE6insertESt17_Rb_tree_iteratorISE_ERKSE_ - fun:_ZNSt3mapIN4qpid6broker12TopicPatternESt6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS7_EESt4lessIS2_ESaISt4pairIKS2_S9_EEEixERSD_ - fun:_ZN4qpid6broker13TopicExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_27 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN4qpid6broker8ConsumerEE8allocateEmPKv - fun:_ZNSt12_Vector_baseIPN4qpid6broker8ConsumerESaIS3_EE11_M_allocateEm - fun:_ZNSt6vectorIPN4qpid6broker8ConsumerESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_ - fun:_ZNSt6vectorIPN4qpid6broker8ConsumerESaIS3_EE9push_backERKS3_ - fun:_ZN4qpid6broker5Queue7consumeEPNS0_8ConsumerEb - fun:_ZN4qpid6broker7Channel7consumeERSsN5boost10shared_ptrINS0_5QueueEEEbbPNS0_15ConnectionTokenEPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7consumeEttRKSsS4_bbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16BasicConsumeBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN4qpid6broker7Channel12ConsumerImplEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsPN4qpid6broker7Channel12ConsumerImplEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_get_nodeEv -} -{ - x17984_28 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueESt17_Rb_tree_iteratorIS8_ERKS8_ - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid6broker8ExchangeEEESt4lessISsESaISt4pairIKSsS5_EEE6insertESt17_Rb_tree_iteratorISA_ERKSA_ - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid6broker8ExchangeEEESt4lessISsESaISt4pairIKSsS5_EEEixERS9_ - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_29 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS8_E - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_M_copyEPKSt13_Rb_tree_nodeIS8_EPSG_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_M_copyEPKSt13_Rb_tree_nodeIS8_EPSG_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EEC1ERKSE_ - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid7framing5ValueEEESt4lessISsESaISt4pairIKSsS5_EEEC1ERKSC_ - fun:_ZN4qpid7framing10FieldTableC1ERKS1_ - fun:_ZNSt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS0_6broker5QueueEEEEC1ERKS8_ - fun:_ZSt10_ConstructISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEES9_EvPT_RKT0_ - fun:_ZSt24__uninitialized_copy_auxIN9__gnu_cxx17__normal_iteratorIPSt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS3_6broker5QueueEEEESt6vectorISB_SaISB_EEEESG_ET0_T_SI_SH_12__false_type - fun:_ZSt18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPSt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS3_6broker5QueueEEEESt6vectorISB_SaISB_EEEESG_ET0_T_SI_SH_ - fun:_ZSt22__uninitialized_copy_aIN9__gnu_cxx17__normal_iteratorIPSt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS3_6broker5QueueEEEESt6vectorISB_SaISB_EEEESG_SB_ET0_T_SI_SH_SaIT1_E - fun:_ZNSt6vectorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS9_SB_EERKS9_ - fun:_ZNSt6vectorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE9push_backERKS9_ - fun:_ZN4qpid6broker15HeadersExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv -} -{ - x17984_30 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN4qpid3sys16LFSessionContextEE8allocateEmPKv - fun:_ZNSt12_Vector_baseIPN4qpid3sys16LFSessionContextESaIS3_EE11_M_allocateEm - fun:_ZNSt6vectorIPN4qpid3sys16LFSessionContextESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_ - fun:_ZNSt6vectorIPN4qpid3sys16LFSessionContextESaIS3_EE9push_backERKS3_ - fun:_ZN4qpid3sys11LFProcessor3addEPK12apr_pollfd_t - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x17984_31 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZNSs4_Rep9_S_createEmmRKSaIcE - obj:/usr/lib/libstdc++.so.6.0.8 - fun:_ZNSsC1EPKcRKSaIcE - fun:_ZN4qpid6broker7ChannelC1ERNS_7framing15ProtocolVersionEPNS2_13OutputHandlerEijPNS0_12MessageStoreEm - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid7framing16AMQP_ClientProxy7Channel6openOkEt - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE -} -{ - x17984_32 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIN5boost10shared_ptrIN4qpid7framing14AMQContentBodyEEEE8allocateEmPKv - fun:_ZNSt12_Vector_baseIN5boost10shared_ptrIN4qpid7framing14AMQContentBodyEEESaIS5_EE11_M_allocateEm - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid7framing14AMQContentBodyEEESaIS5_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS5_S7_EERKS5_ - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid7framing14AMQContentBodyEEESaIS5_EE9push_backERKS5_ - fun:_ZN4qpid6broker15InMemoryContent3addEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Message10addContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZNSs4_Rep9_S_createEmmRKSaIcE -} -{ - x17984_33 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid7framing14AMQContentBodyEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid7framing7AMQBodyEEC1INS2_14AMQContentBodyEEEPT_ - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone -} -{ - x17984_34 - Memcheck:Leak - fun:_vgrZU_libcZdsoZa_calloc - fun:_dl_allocate_tls - fun:pthread_create@@GLIBC_2.2.5 - fun:_ZN4qpid3sys6ThreadC1EPNS0_8RunnableE - fun:_ZN4qpid6broker10AutoDelete5startEv - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_35 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid7framing14AMQContentBodyEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid7framing7AMQBodyEEC1INS2_14AMQContentBodyEEEPT_ - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZNSs4_Rep9_S_createEmmRKSaIcE - fun:_ZNSs9_M_mutateEmmm - fun:_ZNSs15_M_replace_safeEmmPKcm - fun:_ZN4qpid7framing6Buffer10getRawDataERSsj - fun:_ZN4qpid7framing14AMQContentBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE -} -{ - x17984_36 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid7framing13AMQHeaderBodyEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid7framing7AMQBodyEEC1INS2_13AMQHeaderBodyEEEPT_ - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__ZdlPv - fun:_ZN4qpid7framing16BasicPublishBodyD0Ev - fun:_ZN5boost14checked_deleteIN4qpid7framing13AMQMethodBodyEEEvPT_ - fun:_ZN5boost6detail17sp_counted_impl_pIN4qpid7framing13AMQMethodBodyEE7disposeEv - fun:_ZN5boost6detail15sp_counted_base7releaseEv - fun:_ZN5boost6detail12shared_countaSERKS1_ - fun:_ZN5boost10shared_ptrIN4qpid7framing7AMQBodyEEaSERKS4_ - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj -} -{ - x17984_37 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker7MessageEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker7MessageEEC1IS3_EEPT_ - fun:_ZN4qpid6broker7Channel13handlePublishEPNS0_7MessageEN5boost10shared_ptrINS0_8ExchangeEEE - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7publishEttRKSsS4_bb - fun:_ZN4qpid7framing16BasicPublishBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_38 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker14MessageBuilder9setHeaderERN5boost10shared_ptrINS_7framing13AMQHeaderBodyEEE - fun:_ZN4qpid6broker7Channel12handleHeaderEN5boost10shared_ptrINS_7framing13AMQHeaderBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl12handleHeaderEtN5boost10shared_ptrINS_7framing13AMQHeaderBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_39 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_40 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN5boost6detail12shared_countC1IN4qpid6broker5QueueEEEPT_ - fun:_ZN5boost10shared_ptrIN4qpid6broker5QueueEEC1IS3_EEPT_ - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueERKS8_ -} -{ - x17984_41 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker5Queue9configureERKNS_7framing10FieldTableE - fun:_ZN4qpid6broker5Queue6createERKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIN5boost10shared_ptrIN4qpid6broker5QueueEEEE8allocateEmPKv - fun:_ZNSt12_Vector_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE11_M_allocateEm - fun:_ZNSt12_Vector_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EEC2EmRKS6_ - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EEC1ERKS7_ - fun:_ZNSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS7_EEEC1ERS0_RKS9_ - fun:_ZNSt3mapISsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS6_EESt4lessISsESaISt4pairIKSsS8_EEEixERSC_ -} -{ - x17984_42 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIN5boost10shared_ptrIN4qpid6broker5QueueEEEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE16_M_allocate_nodeEv - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE15_M_create_nodesEPPS5_S9_ - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EEC2ERKS6_m - fun:_ZNSt5dequeIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EEC1ERKS7_ - fun:_ZNSt5queueIN5boost10shared_ptrIN4qpid6broker5QueueEEESt5dequeIS5_SaIS5_EEEC1ERKS8_ - fun:_ZN4qpid6broker10AutoDeleteC1EPNS0_13QueueRegistryEj - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsmj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x17984_43 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaISA_EEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE14_M_create_nodeERKSB_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE9_M_insertEPSt18_Rb_tree_node_baseSJ_RKSB_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE13insert_uniqueERKSB_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE13insert_uniqueESt17_Rb_tree_iteratorISB_ERKSB_ - fun:_ZNSt3mapISsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS6_EESt4lessISsESaISt4pairIKSsS8_EEE6insertESt17_Rb_tree_iteratorISD_ERKSD_ - fun:_ZNSt3mapISsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS6_EESt4lessISsESaISt4pairIKSsS8_EEEixERSC_ - fun:_ZN4qpid6broker14DirectExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_44 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7publishEttRKSsS4_bb - fun:_ZN4qpid7framing16BasicPublishBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_45 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker14DirectExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_46 - Memcheck:Leak - fun:_vgrZU_libcZdsoZa_malloc - fun:__new_exitfn - fun:__cxa_atexit - fun:_Z41__static_initialization_and_destruction_0ii - fun:_GLOBAL__I__ZN4qpid6broker9TxPublishC2EN5boost10shared_ptrINS0_7MessageEEEPKSs - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_47 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN5boost10shared_ptrIN4qpid6broker7MessageEEEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE15_M_allocate_mapEm - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EEC2ERKS6_m - fun:_ZNSt5dequeIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EEC1ERKS7_ - fun:_ZNSt5queueIN5boost10shared_ptrIN4qpid6broker7MessageEEESt5dequeIS5_SaIS5_EEEC1ERKS8_ - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm -} -{ - x17984_48 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPPN4qpid6broker7BindingEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE15_M_allocate_mapEm - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EEC2ERKS4_m - fun:_ZNSt5dequeIPN4qpid6broker7BindingESaIS3_EEC1ERKS5_ - fun:_ZNSt5queueIPN4qpid6broker7BindingESt5dequeIS3_SaIS3_EEEC1ERKS6_ - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm -} -{ - x17984_49 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE14_M_create_nodeERKS8_ - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE13insert_uniqueERKS8_ - fun:_ZNSt3mapImPFPN4qpid7framing13AMQMethodBodyEhhESt4lessImESaISt4pairIKmS5_EEE6insertERKSA_ - fun:_ZN4qpid7framing21AMQP_MethodVersionMapC1Ev - fun:_Z41__static_initialization_and_destruction_0ii - fun:_GLOBAL__I__ZN4qpid7framing8AMQFrame10versionMapE - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEEEE8allocateEmPKv - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE11_M_get_nodeEv - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE14_M_create_nodeERKS8_ - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeImSt4pairIKmPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessImESaIS8_EE13insert_uniqueERKS8_ -} -{ - x17984_50 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid7framing13AMQHeaderBody16createPropertiesEi - fun:_ZN4qpid7framing13AMQHeaderBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_51 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZNSs4_Rep9_S_createEmmRKSaIcE - obj:/usr/lib/libstdc++.so.6.0.8 - fun:_ZNSsC1EPKcRKSaIcE - fun:_ZN4qpid6broker7ChannelC1ERNS_7framing15ProtocolVersionEPNS2_13OutputHandlerEijPNS0_12MessageStoreEm - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv -} -{ - x17984_52 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZNSs4_Rep9_S_createEmmRKSaIcE - obj:/usr/lib/libstdc++.so.6.0.8 - fun:_ZNSsC1EPKcRKSaIcE - fun:_Z41__static_initialization_and_destruction_0ii - fun:_GLOBAL__I__ZN4qpid6broker6TokensaSERKSs - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_53 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPPN4qpid6broker7BindingEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE15_M_allocate_mapEm - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EEC2ERKS4_m - fun:_ZNSt5dequeIPN4qpid6broker7BindingESaIS3_EEC1ERKS4_ - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE -} -{ - x17984_54 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIN5boost10shared_ptrIN4qpid6broker7MessageEEEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE16_M_allocate_nodeEv - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE15_M_create_nodesEPPS5_S9_ - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EEC2ERKS6_m - fun:_ZNSt5dequeIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EEC1ERKS7_ - fun:_ZNSt5queueIN5boost10shared_ptrIN4qpid6broker7MessageEEESt5dequeIS5_SaIS5_EEEC1ERKS8_ - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_55 - Memcheck:Leak - fun:_vgrZU_libstdcZpZpZa__Znwm - fun:_ZN9__gnu_cxx13new_allocatorIPN4qpid6broker7BindingEE8allocateEmPKv - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE16_M_allocate_nodeEv - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE15_M_create_nodesEPPS3_S7_ - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE17_M_initialize_mapEm - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EEC2ERKS4_m - fun:_ZNSt5dequeIPN4qpid6broker7BindingESaIS3_EEC1ERKS5_ - fun:_ZNSt5queueIPN4qpid6broker7BindingESt5dequeIS3_SaIS3_EEEC1ERKS6_ - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:start_thread - fun:clone - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_56 - Memcheck:Leak - fun:_vgrZU_libcZdsoZa_malloc - fun:apr_pool_create_ex - fun:apr_pool_initialize - fun:apr_initialize - fun:_ZN4qpid3sys7APRBaseC1Ev - fun:_ZN4qpid3sys7APRBase11getInstanceEv - fun:_ZN4qpid3sys7APRBase9incrementEv - fun:_ZN4qpid3sys7APRPoolC1Ev - fun:_ZN5boost7details4pool17singleton_defaultIN4qpid3sys7APRPoolEE8instanceEv - fun:_ZN4qpid3sys7APRPool3getEv - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home_old/e/work/rh/rhn/messaging-clean/trunk/qpid-help2man/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:* - obj:* - obj:* - obj:* -} -{ - x17984_57 - Memcheck:Leak - fun:_vgrZU_libcZdsoZa_malloc - fun:apr_palloc - fun:apr_pollset_create - fun:_ZN4qpid3sys11LFProcessorC1EP10apr_pool_tiii - fun:_ZN4qpid3sys11APRAcceptorC1Esiib - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} - -{ - x7393_1 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_2 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs -} -{ - x7393_3 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_4 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_5 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser -} -{ - x7393_6 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE15_M_create_nodesEPPS5_S9_ - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE17_M_initialize_mapEj - fun:_ZN4qpid6broker10AutoDeleteC1EPNS0_13QueueRegistryEj - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsyj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_7 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_8 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker14MessageBuilder9setHeaderERN5boost10shared_ptrINS_7framing13AMQHeaderBodyEEE - fun:_ZN4qpid6broker7Channel12handleHeaderEN5boost10shared_ptrINS_7framing13AMQHeaderBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl12handleHeaderEtN5boost10shared_ptrINS_7framing13AMQHeaderBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_9 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker7Channel13handlePublishEPNS0_7MessageEN5boost10shared_ptrINS0_8ExchangeEEE - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7publishEttRKSsS4_bb - fun:_ZN4qpid7framing16BasicPublishBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_10 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker18SessionHandlerImplC1EPNS_3sys14SessionContextEPNS0_13QueueRegistryEPNS0_16ExchangeRegistryEPNS0_10AutoDeleteERKNS0_8SettingsE - fun:_ZN4qpid6broker25SessionHandlerFactoryImpl6createEPNS_3sys14SessionContextE - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_11 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker5QueueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueESt17_Rb_tree_iteratorIS8_ERKS8_ - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_12 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS5_S7_EERKS5_ - fun:_ZN4qpid6broker14DirectExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_13 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeItSt4pairIKtPN4qpid6broker7ChannelEESt10_Select1stIS6_ESt4lessItESaIS6_EE9_M_insertEPSt18_Rb_tree_node_baseSE_RKS6_ - fun:_ZNSt8_Rb_treeItSt4pairIKtPN4qpid6broker7ChannelEESt10_Select1stIS6_ESt4lessItESaIS6_EE13insert_uniqueERKS6_ - fun:_ZNSt8_Rb_treeItSt4pairIKtPN4qpid6broker7ChannelEESt10_Select1stIS6_ESt4lessItESaIS6_EE13insert_uniqueESt17_Rb_tree_iteratorIS6_ERKS6_ - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_14 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_15 - Memcheck:Leak - fun:calloc - fun:_dl_allocate_tls - fun:pthread_create@@GLIBC_2.1 - fun:apr_thread_create - fun:_ZN4qpid6broker10AutoDelete5startEv - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsyj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_16 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeISsSt4pairIKSsPN4qpid6broker7Channel12ConsumerImplEESt10_Select1stIS7_ESt4lessISsESaIS7_EE9_M_insertEPSt18_Rb_tree_node_baseSF_RKS7_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsPN4qpid6broker7Channel12ConsumerImplEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13insert_uniqueERKS7_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsPN4qpid6broker7Channel12ConsumerImplEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13insert_uniqueESt17_Rb_tree_iteratorIS7_ERKS7_ - fun:_ZN4qpid6broker7Channel7consumeERSsN5boost10shared_ptrINS0_5QueueEEEbbPNS0_15ConnectionTokenEPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7consumeEttRKSsS4_bbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16BasicConsumeBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_17 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker7Channel7consumeERSsN5boost10shared_ptrINS0_5QueueEEEbbPNS0_15ConnectionTokenEPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7consumeEttRKSsS4_bbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16BasicConsumeBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_18 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker5Queue9configureERKNS_7framing10FieldTableE - fun:_ZN4qpid6broker5Queue6createERKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_19 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker7Channel7deliverERN5boost10shared_ptrINS0_7MessageEEERKSsRNS3_INS0_5QueueEEEb - fun:_ZN4qpid6broker7Channel12ConsumerImpl7deliverERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker5Queue8dispatchERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker5Queue8dispatchEv - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7consumeEttRKSsS4_bbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16BasicConsumeBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_20 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIPN4qpid7framing8AMQFrameESaIS3_EE17_M_initialize_mapEj - fun:_ZN4qpid3sys16LFSessionContextC1EP10apr_pool_tP12apr_socket_tPNS0_11LFProcessorEb - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_21 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE9_M_insertEPSt18_Rb_tree_node_baseSJ_RKSB_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE13insert_uniqueERKSB_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE13insert_uniqueESt17_Rb_tree_iteratorISB_ERKSB_ - fun:_ZNSt3mapISsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS6_EESt4lessISsESaISt4pairIKSsS8_EEEixERSC_ - fun:_ZN4qpid6broker14DirectExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_22 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker14DirectExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_23 - Memcheck:Leak - fun:calloc - fun:__new_exitfn - fun:__cxa_atexit - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - fun:call_init - fun:_dl_init - obj:/lib/ld-2.4.so -} -{ - x7393_24 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE17_M_initialize_mapEj - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_25 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE17_M_initialize_mapEj - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_26 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7publishEttRKSsS4_bb - fun:_ZN4qpid7framing16BasicPublishBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_27 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeIySt4pairIKyPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessIyESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeIySt4pairIKyPFPN4qpid7framing13AMQMethodBodyEhhEESt10_Select1stIS8_ESt4lessIyESaIS8_EE13insert_uniqueERKS8_ - fun:_ZN4qpid7framing21AMQP_MethodVersionMapC1Ev - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - fun:call_init - fun:_dl_init - obj:/lib/ld-2.4.so -} -{ - x7393_28 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid7framing13AMQHeaderBody16createPropertiesEi - fun:_ZN4qpid7framing13AMQHeaderBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_29 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_30 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker25SessionHandlerFactoryImpl6createEPNS_3sys14SessionContextE - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_31 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_32 - Memcheck:Leak - fun:_Znwj - fun:_ZNSs4_Rep9_S_createEjjRKSaIcE - obj:/usr/lib/libstdc++.so.6.0.8 - fun:_ZNSsC1EPKcRKSaIcE - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/broker/.libs/libqpidbroker.so.0.1.0 - fun:call_init - fun:_dl_init - obj:/lib/ld-2.4.so -} -{ - x7393_33 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker18SessionHandlerImpl9initiatedEPNS_7framing18ProtocolInitiationE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_34 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIPN4qpid7framing8AMQFrameESaIS3_EE15_M_create_nodesEPPS3_S7_ - fun:_ZNSt11_Deque_baseIPN4qpid7framing8AMQFrameESaIS3_EE17_M_initialize_mapEj - fun:_ZN4qpid3sys16LFSessionContextC1EP10apr_pool_tP12apr_socket_tPNS0_11LFProcessorEb - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_35 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE15_M_create_nodesEPPS5_S9_ - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker7MessageEEESaIS5_EE17_M_initialize_mapEj - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_36 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE15_M_create_nodesEPPS3_S7_ - fun:_ZNSt11_Deque_baseIPN4qpid6broker7BindingESaIS3_EE17_M_initialize_mapEj - fun:_ZN4qpid6broker5QueueC1ERKSsjPNS0_12MessageStoreEPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker13QueueRegistry7declareERKSsbjPKNS0_15ConnectionTokenE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl7declareEttRKSsbbbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16QueueDeclareBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_37 - Memcheck:Leak - fun:malloc - fun:apr_palloc - fun:apr_pollset_create - fun:_ZN4qpid3sys11LFProcessorC1EP10apr_pool_tiii - fun:_ZN4qpid3sys11APRAcceptorC1Esiib - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_38 - Memcheck:Leak - fun:malloc - fun:apr_pool_create_ex - fun:apr_pool_initialize - fun:apr_initialize - fun:_ZN4qpid3sys7APRBaseC1Ev - fun:_ZN4qpid3sys7APRBase11getInstanceEv - fun:_ZN4qpid3sys7APRBase9incrementEv - fun:_ZN4qpid3sys7APRPoolC1Ev - fun:_ZN4qpid3sys7APRPool3getEv - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - fun:call_init - fun:_dl_init - obj:/lib/ld-2.4.so -} -{ - x7393_39 - Memcheck:Leak - fun:_Znaj - fun:_ZN4qpid7framing6BufferC1Ej - fun:_ZN4qpid3sys16LFSessionContextC1EP10apr_pool_tP12apr_socket_tPNS0_11LFProcessorEb - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_40 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_41 - Memcheck:Leak - fun:malloc - fun:_dl_new_object - fun:_dl_map_object_from_fd - fun:_dl_map_object - fun:openaux - fun:_dl_catch_error - fun:_dl_map_object_deps - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_42 - Memcheck:Leak - fun:malloc - fun:_dl_map_object - fun:openaux - fun:_dl_catch_error - fun:_dl_map_object_deps - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_43 - Memcheck:Leak - fun:malloc - fun:_dl_map_object_deps - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_44 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_45 - Memcheck:Leak - fun:realloc - fun:add_to_global - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_46 - Memcheck:Leak - fun:realloc - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_47 - Memcheck:Leak - fun:calloc - fun:_dl_check_map_versions - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_48 - Memcheck:Leak - fun:_Znwj - fun:_ZNSs4_Rep9_S_createEjjRKSaIcE - obj:/usr/lib/libstdc++.so.6.0.8 - fun:_ZNSsC1EPKcRKSaIcE - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestRunner13WrappingSuite3runEPNS_10TestResultE - fun:_ZN7CppUnit10TestResult7runTestEPNS_4TestE - fun:_ZN7CppUnit10TestRunner3runERNS_10TestResultERKSs - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_49 - Memcheck:Leak - fun:calloc - fun:_dl_new_object - fun:_dl_map_object_from_fd - fun:_dl_map_object - fun:openaux - fun:_dl_catch_error - fun:_dl_map_object_deps - fun:dl_open_worker - fun:_dl_catch_error - fun:_dl_open - fun:dlopen_doit - fun:_dl_catch_error - fun:_dlerror_run - fun:dlopen@GLIBC_2.0 - fun:_ZN7CppUnit21DynamicLibraryManager13doLoadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManager11loadLibraryERKSs - fun:_ZN7CppUnit21DynamicLibraryManagerC1ERKSs - fun:_ZN7CppUnit13PlugInManager4loadERKSsRKNS_16PlugInParametersE - fun:_Z8runTestsRK17CommandLineParser - fun:main -} -{ - x7393_50 - Memcheck:Leak - fun:_Znwj - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - fun:_ZNK7CppUnit21TestCaseMethodFunctorclEv - fun:_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZNK7CppUnit14ProtectorChain14ProtectFunctorclEv - fun:_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE - fun:_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKSs - fun:_ZN7CppUnit8TestCase3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE - fun:_ZN7CppUnit13TestComposite3runEPNS_10TestResultE -} -{ - x7393_51 - Memcheck:Param - epoll_ctl(event) - fun:epoll_ctl - fun:_ZN4qpid3sys11LFProcessor3addEPK12apr_pollfd_t - fun:_ZN4qpid3sys16LFSessionContext4initEPNS0_14SessionHandlerE - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_52 - Memcheck:Param - epoll_ctl(event) - fun:epoll_ctl - fun:_ZN4qpid3sys11LFProcessor10reactivateEPK12apr_pollfd_t - fun:_ZN4qpid3sys16LFSessionContext14stopProcessingEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_53 - Memcheck:Param - epoll_ctl(event) - fun:epoll_ctl - fun:_ZN4qpid3sys11LFProcessor6updateEPK12apr_pollfd_t - fun:_ZN4qpid3sys16LFSessionContext4sendEPNS_7framing8AMQFrameE - fun:_ZN4qpid6broker7Message7deliverEPNS_7framing13OutputHandlerEiRKSsyjPNS2_15ProtocolVersionE - fun:_ZN4qpid6broker7Channel7deliverERN5boost10shared_ptrINS0_7MessageEEERKSsRNS3_INS0_5QueueEEEb - fun:_ZN4qpid6broker7Channel12ConsumerImpl7deliverERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker5Queue8dispatchERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker5Queue7processERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker5Queue7deliverERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker18DeliverableMessage9deliverToERN5boost10shared_ptrINS0_5QueueEEE - fun:_ZN4qpid6broker15HeadersExchange5routeERNS0_11DeliverableERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker7Channel8completeERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker14MessageBuilder5routeEv - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_54 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE9_M_insertEPSt18_Rb_tree_node_baseSJ_RKSB_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS8_EEESt10_Select1stISB_ESt4lessISsESaISB_EE13insert_uniqueESt17_Rb_tree_iteratorISB_ERKSB_ - fun:_ZNSt3mapISsSt6vectorIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS6_EESt4lessISsESaISt4pairIKSsS8_EEEixERSC_ - fun:_ZN4qpid6broker14DirectExchange5routeERNS0_11DeliverableERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker7Channel8completeERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker14MessageBuilder5routeEv - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_55 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsyj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_56 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid3sys7APRBase11getInstanceEv - fun:_ZN4qpid3sys7APRBase9incrementEv - fun:_ZN4qpid3sys7APRPoolC1Ev - fun:_ZN4qpid3sys7APRPool3getEv - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - fun:call_init - fun:_dl_init - obj:/lib/ld-2.4.so -} -{ - x7393_57 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_58 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsyj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_59 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_60 - Memcheck:Leak - fun:_Znaj - fun:_ZN4qpid3sys11LFProcessorC1EP10apr_pool_tiii - fun:_ZN4qpid3sys11APRAcceptorC1Esiib - fun:_ZN4qpid3sys8Acceptor6createEsiib - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_61 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid7framing5Value12decode_valueERNS0_6BufferE - fun:_ZN4qpid7framing10FieldTable6decodeERNS0_6BufferE - fun:_ZN4qpid7framing6Buffer13getFieldTableERNS0_10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody13decodeContentERNS0_6BufferE - fun:_ZN4qpid7framing13AMQMethodBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_62 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker7Channel8completeERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker14MessageBuilder5routeEv - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_63 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE9_M_insertEPSt18_Rb_tree_node_baseSK_RKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE13insert_uniqueERKSC_ - fun:_ZNSt8_Rb_treeIN4qpid6broker12TopicPatternESt4pairIKS2_St6vectorIN5boost10shared_ptrINS1_5QueueEEESaIS9_EEESt10_Select1stISC_ESt4lessIS2_ESaISC_EE13insert_uniqueESt17_Rb_tree_iteratorISC_ERKSC_ - fun:_ZN4qpid6broker13TopicExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_64 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt11_Deque_baseIN5boost10shared_ptrIN4qpid6broker5QueueEEESaIS5_EE17_M_initialize_mapEj - fun:_ZN4qpid6broker10AutoDeleteC1EPNS0_13QueueRegistryEj - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsyj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_65 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorIPN4qpid6broker13Configuration6OptionESaIS4_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_ - fun:_ZN4qpid6broker13ConfigurationC1Ev - fun:main -} -{ - x7393_66 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid7framing5ValueEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_M_copyEPKSt13_Rb_tree_nodeIS8_EPSG_ - fun:_ZNSt6vectorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS9_SB_EERKS9_ - fun:_ZN4qpid6broker15HeadersExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_67 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker14FanOutExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_68 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker15HeadersExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_69 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorIPN4qpid6broker4TxOpESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_ - fun:_ZN4qpid6broker8TxBuffer6enlistEPNS0_4TxOpE - fun:_ZN4qpid6broker7Channel8completeERN5boost10shared_ptrINS0_7MessageEEE - fun:_ZN4qpid6broker14MessageBuilder5routeEv - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_70 - Memcheck:Leak - fun:malloc - fun:apr_allocator_create - fun:apr_pool_initialize - fun:apr_initialize - fun:_ZN4qpid3sys7APRBaseC1Ev - fun:_ZN4qpid3sys7APRBase11getInstanceEv - fun:_ZN4qpid3sys7APRBase9incrementEv - fun:_ZN4qpid3sys7APRPoolC1Ev - fun:_ZN4qpid3sys7APRPool3getEv - fun:_Z41__static_initialization_and_destruction_0ii - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - obj:/home/gordon/qpid/trunk/qpid/cpp/lib/common/.libs/libqpidcommon.so.0.1.0 - fun:call_init - fun:_dl_init - obj:/lib/ld-2.4.so -} -{ - x7393_71 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid6broker13TopicExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_72 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorISt4pairIN4qpid7framing10FieldTableEN5boost10shared_ptrINS1_6broker5QueueEEEESaIS9_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS9_SB_EERKS9_ - fun:_ZN4qpid6broker15HeadersExchange4bindEN5boost10shared_ptrINS0_5QueueEEERKSsPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16QueueHandlerImpl4bindEttRKSsS4_S4_bRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_73 - Memcheck:Leak - fun:_Znwj - fun:_ZN4qpid7framing10FieldTable6decodeERNS0_6BufferE - fun:_ZN4qpid7framing6Buffer13getFieldTableERNS0_10FieldTableE - fun:_ZN4qpid7framing13QueueBindBody13decodeContentERNS0_6BufferE - fun:_ZN4qpid7framing13AMQMethodBody6decodeERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame10decodeBodyERNS0_6BufferEj - fun:_ZN4qpid7framing8AMQFrame6decodeERNS0_6BufferE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_74 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorIPN4qpid6broker8ConsumerESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_ - fun:_ZN4qpid6broker5Queue7consumeEPNS0_8ConsumerEb - fun:_ZN4qpid6broker7Channel7consumeERSsN5boost10shared_ptrINS0_5QueueEEEbbPNS0_15ConnectionTokenEPKNS_7framing10FieldTableE - fun:_ZN4qpid6broker18SessionHandlerImpl16BasicHandlerImpl7consumeEttRKSsS4_bbbbRKNS_7framing10FieldTableE - fun:_ZN4qpid7framing16BasicConsumeBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_75 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE9_M_insertEPSt18_Rb_tree_node_baseSG_RKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueERKS8_ - fun:_ZNSt8_Rb_treeISsSt4pairIKSsN5boost10shared_ptrIN4qpid6broker8ExchangeEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13insert_uniqueESt17_Rb_tree_iteratorIS8_ERKS8_ - fun:_ZNSt3mapISsN5boost10shared_ptrIN4qpid6broker8ExchangeEEESt4lessISsESaISt4pairIKSsS5_EEEixERS9_ - fun:_ZN4qpid6broker16ExchangeRegistry7declareERKSsS3_ - fun:_ZN4qpid6broker25SessionHandlerFactoryImplC1ERKSsyj - fun:_ZN4qpid6broker6BrokerC1ERKNS0_13ConfigurationE - fun:_ZN4qpid6broker6Broker6createERKNS0_13ConfigurationE - fun:main -} -{ - x7393_76 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorIPN4qpid3sys16LFSessionContextESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_ - fun:_ZN4qpid3sys11LFProcessor3addEPK12apr_pollfd_t - fun:_ZN4qpid3sys16LFSessionContext4initEPNS0_14SessionHandlerE - fun:_ZN4qpid3sys11APRAcceptor3runEPNS0_21SessionHandlerFactoryE - fun:_ZN4qpid6broker6Broker3runEv - fun:main -} -{ - x7393_77 - Memcheck:Leak - fun:_Znwj - fun:_ZNSt6vectorIN5boost10shared_ptrIN4qpid7framing14AMQContentBodyEEESaIS5_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS5_S7_EERKS5_ - fun:_ZN4qpid6broker15InMemoryContent3addEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Message10addContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker14MessageBuilder10addContentERN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker7Channel13handleContentEN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl13handleContentEtN5boost10shared_ptrINS_7framing14AMQContentBodyEEE - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} -{ - x7393_78 - Memcheck:Leak - fun:_Znwj - fun:_ZNSs4_Rep9_S_createEjjRKSaIcE - obj:/usr/lib/libstdc++.so.6.0.8 - fun:_ZNSsC1EPKcRKSaIcE - fun:_ZN4qpid6broker7ChannelC1ERNS_7framing15ProtocolVersionEPNS2_13OutputHandlerEijPNS0_12MessageStoreEy - fun:_ZN4qpid6broker18SessionHandlerImpl18ChannelHandlerImpl4openEtRKSs - fun:_ZN4qpid7framing15ChannelOpenBody6invokeERNS0_21AMQP_ServerOperationsEt - fun:_ZN4qpid6broker18SessionHandlerImpl8receivedEPNS_7framing8AMQFrameE - fun:_ZN4qpid3sys16LFSessionContext4readEv - fun:_ZN4qpid3sys11LFProcessor3runEv - fun:_ZN4qpid3sys6Thread11runRunnableEP12apr_thread_tPv - fun:dummy_worker - fun:start_thread - fun:clone -} diff --git a/qpid/cpp/tests/APRBaseTest.cpp b/qpid/cpp/tests/APRBaseTest.cpp deleted file mode 100644 index 7d95c3bf52..0000000000 --- a/qpid/cpp/tests/APRBaseTest.cpp +++ /dev/null @@ -1,47 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <apr/APRBase.h> -#include <qpid_test_plugin.h> -#include <iostream> - -using namespace qpid::sys; - -class APRBaseTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(APRBaseTest); - CPPUNIT_TEST(testMe); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testMe() - { - APRBase::increment(); - APRBase::increment(); - APRBase::decrement(); - APRBase::decrement(); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(APRBaseTest); - diff --git a/qpid/cpp/tests/AcceptorTest.cpp b/qpid/cpp/tests/AcceptorTest.cpp deleted file mode 100644 index 394dfea463..0000000000 --- a/qpid/cpp/tests/AcceptorTest.cpp +++ /dev/null @@ -1,95 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <iostream> -#include <boost/bind.hpp> - -#include "sys/Thread.h" -#include "sys/Acceptor.h" -#include "sys/Socket.h" -#include "framing/Buffer.h" -#include "qpid_test_plugin.h" - -#include "MockSessionHandler.h" - -using namespace qpid::sys; -using namespace qpid::framing; -using namespace std; - -const char hello[] = "hello"; -const size_t size = sizeof(hello); - - -class AcceptorTest : public CppUnit::TestCase, private Runnable -{ - CPPUNIT_TEST_SUITE(AcceptorTest); - CPPUNIT_TEST(testAccept); - CPPUNIT_TEST_SUITE_END(); - - private: - MockSessionHandlerFactory factory; - Acceptor::shared_ptr acceptor; - - public: - - void run() { - acceptor->run(factory); - } - - void setUp() { - acceptor = Acceptor::create(0, 10, 3); - } - - void tearDown() { - acceptor.reset(); - } - - void testAccept() - { - int port = acceptor->getPort(); - CPPUNIT_ASSERT(port > 0); - Thread runThread(*this); - // Connect to the acceptor - Socket client = Socket::createTcp(); - client.connect("localhost", port); - factory.waitForHandler(); - CPPUNIT_ASSERT(factory.handler != 0); - // Send a protocol initiation. - Buffer buf(1024); - ProtocolInitiation(4,2).encode(buf); - buf.flip(); - client.send(buf.start(), buf.available()); - - // Verify session handler got the protocol init. - ProtocolInitiation init = factory.handler->waitForProtocolInit(); - CPPUNIT_ASSERT_EQUAL(int(4), int(init.getMajor())); - CPPUNIT_ASSERT_EQUAL(int(2), int(init.getMinor())); - - acceptor->shutdown(); - runThread.join(); - factory.handler->waitForClosed(); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(AcceptorTest); - diff --git a/qpid/cpp/tests/AccumulatedAckTest.cpp b/qpid/cpp/tests/AccumulatedAckTest.cpp deleted file mode 100644 index a2ee3df752..0000000000 --- a/qpid/cpp/tests/AccumulatedAckTest.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <AccumulatedAck.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <list> - -using std::list; -using namespace qpid::broker; - -class AccumulatedAckTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(AccumulatedAckTest); - CPPUNIT_TEST(testCovers); - CPPUNIT_TEST(testUpdateAndConsolidate); - CPPUNIT_TEST_SUITE_END(); - - public: - void testCovers() - { - AccumulatedAck ack(5); - ack.individual.push_back(7); - ack.individual.push_back(9); - - CPPUNIT_ASSERT(ack.covers(1)); - CPPUNIT_ASSERT(ack.covers(2)); - CPPUNIT_ASSERT(ack.covers(3)); - CPPUNIT_ASSERT(ack.covers(4)); - CPPUNIT_ASSERT(ack.covers(5)); - CPPUNIT_ASSERT(ack.covers(7)); - CPPUNIT_ASSERT(ack.covers(9)); - - CPPUNIT_ASSERT(!ack.covers(6)); - CPPUNIT_ASSERT(!ack.covers(8)); - CPPUNIT_ASSERT(!ack.covers(10)); - } - - void testUpdateAndConsolidate() - { - AccumulatedAck ack(0); - ack.update(1, false); - ack.update(3, false); - ack.update(10, false); - ack.update(8, false); - ack.update(6, false); - ack.update(3, true); - ack.update(2, true); - ack.update(5, true); - ack.consolidate(); - CPPUNIT_ASSERT_EQUAL((u_int64_t) 5, ack.range); - CPPUNIT_ASSERT_EQUAL((size_t) 3, ack.individual.size()); - list<u_int64_t>::iterator i = ack.individual.begin(); - CPPUNIT_ASSERT_EQUAL((u_int64_t) 6, *i); - i++; - CPPUNIT_ASSERT_EQUAL((u_int64_t) 8, *i); - i++; - CPPUNIT_ASSERT_EQUAL((u_int64_t) 10, *i); - - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(AccumulatedAckTest); - diff --git a/qpid/cpp/tests/BodyHandlerTest.cpp b/qpid/cpp/tests/BodyHandlerTest.cpp deleted file mode 100644 index bf60dd21e3..0000000000 --- a/qpid/cpp/tests/BodyHandlerTest.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <iostream> -#include <AMQP_HighestVersion.h> -#include <amqp_framing.h> -#include <qpid_test_plugin.h> -using namespace qpid::framing; - -class BodyHandlerTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(BodyHandlerTest); - CPPUNIT_TEST(testMethod); - CPPUNIT_TEST(testHeader); - CPPUNIT_TEST(testContent); - CPPUNIT_TEST(testHeartbeat); - CPPUNIT_TEST_SUITE_END(); -private: - - class TestBodyHandler : public BodyHandler{ - AMQMethodBody* const method; - AMQHeaderBody* const header; - AMQContentBody* const content; - AMQHeartbeatBody* const heartbeat; - - public: - - TestBodyHandler(AMQMethodBody* _method) : method(_method), header(0), content(0), heartbeat(0){} - TestBodyHandler(AMQHeaderBody* _header) : method(0), header(_header), content(0), heartbeat(0){} - TestBodyHandler(AMQContentBody* _content) : method(0), header(0), content(_content), heartbeat(0){} - TestBodyHandler(AMQHeartbeatBody* _heartbeat) : method(0), header(0), content(0), heartbeat(_heartbeat){} - - virtual void handleMethod(AMQMethodBody::shared_ptr body){ - CPPUNIT_ASSERT(method); - CPPUNIT_ASSERT_EQUAL(method, body.get()); - } - virtual void handleHeader(AMQHeaderBody::shared_ptr body){ - CPPUNIT_ASSERT(header); - CPPUNIT_ASSERT_EQUAL(header, body.get()); - } - virtual void handleContent(AMQContentBody::shared_ptr body){ - CPPUNIT_ASSERT(content); - CPPUNIT_ASSERT_EQUAL(content, body.get()); - } - virtual void handleHeartbeat(AMQHeartbeatBody::shared_ptr body){ - CPPUNIT_ASSERT(heartbeat); - CPPUNIT_ASSERT_EQUAL(heartbeat, body.get()); - } - }; - ProtocolVersion v; - -public: - - BodyHandlerTest() : v(8, 0) {} - - void testMethod() - { - AMQMethodBody* method = new QueueDeclareBody(v); - AMQFrame frame(highestProtocolVersion, 0, method); - TestBodyHandler handler(method); - handler.handleBody(frame.getBody()); - } - - void testHeader() - { - AMQHeaderBody* header = new AMQHeaderBody(); - AMQFrame frame(highestProtocolVersion, 0, header); - TestBodyHandler handler(header); - handler.handleBody(frame.getBody()); - } - - void testContent() - { - AMQContentBody* content = new AMQContentBody(); - AMQFrame frame(highestProtocolVersion, 0, content); - TestBodyHandler handler(content); - handler.handleBody(frame.getBody()); - } - - void testHeartbeat() - { - AMQHeartbeatBody* heartbeat = new AMQHeartbeatBody(); - AMQFrame frame(highestProtocolVersion, 0, heartbeat); - TestBodyHandler handler(heartbeat); - handler.handleBody(frame.getBody()); - } -}; - - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(BodyHandlerTest); - diff --git a/qpid/cpp/tests/ChannelTest.cpp b/qpid/cpp/tests/ChannelTest.cpp deleted file mode 100644 index f0860b8a28..0000000000 --- a/qpid/cpp/tests/ChannelTest.cpp +++ /dev/null @@ -1,325 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <BrokerChannel.h> -#include <BrokerMessage.h> -#include <BrokerQueue.h> -#include <FanOutExchange.h> -#include <NullMessageStore.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <memory> -#include <AMQP_HighestVersion.h> - - -using namespace boost; -using namespace qpid::broker; -using namespace qpid::framing; -using namespace qpid::sys; -using std::string; -using std::queue; - -struct DummyHandler : OutputHandler{ - std::vector<AMQFrame*> frames; - - virtual void send(AMQFrame* frame){ - frames.push_back(frame); - } -}; - - -class ChannelTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(ChannelTest); - CPPUNIT_TEST(testConsumerMgmt); - CPPUNIT_TEST(testDeliveryNoAck); - CPPUNIT_TEST(testDeliveryAndRecovery); - CPPUNIT_TEST(testStaging); - CPPUNIT_TEST(testQueuePolicy); - CPPUNIT_TEST_SUITE_END(); - - class MockMessageStore : public NullMessageStore - { - struct MethodCall - { - const string name; - Message* const msg; - const string data;//only needed for appendContent - - void check(const MethodCall& other) const - { - CPPUNIT_ASSERT_EQUAL(name, other.name); - CPPUNIT_ASSERT_EQUAL(msg, other.msg); - CPPUNIT_ASSERT_EQUAL(data, other.data); - } - }; - - queue<MethodCall> expected; - bool expectMode;//true when setting up expected calls - - void handle(const MethodCall& call) - { - if (expectMode) { - expected.push(call); - } else { - call.check(expected.front()); - expected.pop(); - } - } - - void handle(const string& name, Message* msg, const string& data) - { - MethodCall call = {name, msg, data}; - handle(call); - } - - public: - - MockMessageStore() : expectMode(false) {} - - void stage(Message* const msg) - { - if(!expectMode) msg->setPersistenceId(1); - MethodCall call = {"stage", msg, ""}; - handle(call); - } - - void appendContent(Message* msg, const string& data) - { - MethodCall call = {"appendContent", msg, data}; - handle(call); - } - - void destroy(Message* msg) - { - MethodCall call = {"destroy", msg, ""}; - handle(call); - } - - void expect() - { - expectMode = true; - } - - void test() - { - expectMode = false; - } - - void check() - { - CPPUNIT_ASSERT(expected.empty()); - } - }; - - - public: - - void testConsumerMgmt(){ - Queue::shared_ptr queue(new Queue("my_queue")); - Channel channel(qpid::framing::highestProtocolVersion, 0, 0, 0); - CPPUNIT_ASSERT(!channel.exists("my_consumer")); - - ConnectionToken* owner = 0; - string tag("my_consumer"); - channel.consume(tag, queue, false, false, owner); - string tagA; - string tagB; - channel.consume(tagA, queue, false, false, owner); - channel.consume(tagB, queue, false, false, owner); - CPPUNIT_ASSERT_EQUAL((u_int32_t) 3, queue->getConsumerCount()); - CPPUNIT_ASSERT(channel.exists("my_consumer")); - CPPUNIT_ASSERT(channel.exists(tagA)); - CPPUNIT_ASSERT(channel.exists(tagB)); - channel.cancel(tagA); - CPPUNIT_ASSERT_EQUAL((u_int32_t) 2, queue->getConsumerCount()); - CPPUNIT_ASSERT(channel.exists("my_consumer")); - CPPUNIT_ASSERT(!channel.exists(tagA)); - CPPUNIT_ASSERT(channel.exists(tagB)); - channel.close(); - CPPUNIT_ASSERT_EQUAL((u_int32_t) 0, queue->getConsumerCount()); - } - - void testDeliveryNoAck(){ - DummyHandler handler; - Channel channel(qpid::framing::highestProtocolVersion, &handler, 7, 10000); - - const string data("abcdefghijklmn"); - - Message::shared_ptr msg(createMessage("test", "my_routing_key", "my_message_id", 14)); - addContent(msg, data); - Queue::shared_ptr queue(new Queue("my_queue")); - ConnectionToken* owner(0); - string tag("no_ack"); - channel.consume(tag, queue, false, false, owner); - - queue->deliver(msg); - CPPUNIT_ASSERT_EQUAL((size_t) 3, handler.frames.size()); - CPPUNIT_ASSERT_EQUAL((u_int16_t) 7, handler.frames[0]->getChannel()); - CPPUNIT_ASSERT_EQUAL((u_int16_t) 7, handler.frames[1]->getChannel()); - CPPUNIT_ASSERT_EQUAL((u_int16_t) 7, handler.frames[2]->getChannel()); - BasicDeliverBody::shared_ptr deliver(dynamic_pointer_cast<BasicDeliverBody, AMQBody>(handler.frames[0]->getBody())); - AMQHeaderBody::shared_ptr contentHeader(dynamic_pointer_cast<AMQHeaderBody, AMQBody>(handler.frames[1]->getBody())); - AMQContentBody::shared_ptr contentBody(dynamic_pointer_cast<AMQContentBody, AMQBody>(handler.frames[2]->getBody())); - CPPUNIT_ASSERT(deliver); - CPPUNIT_ASSERT(contentHeader); - CPPUNIT_ASSERT(contentBody); - CPPUNIT_ASSERT_EQUAL(data, contentBody->getData()); - } - - void testDeliveryAndRecovery(){ - DummyHandler handler; - Channel channel(qpid::framing::highestProtocolVersion, &handler, 7, 10000); - const string data("abcdefghijklmn"); - - Message::shared_ptr msg(createMessage("test", "my_routing_key", "my_message_id", 14)); - addContent(msg, data); - - Queue::shared_ptr queue(new Queue("my_queue")); - ConnectionToken* owner(0); - string tag("ack"); - channel.consume(tag, queue, true, false, owner); - - queue->deliver(msg); - CPPUNIT_ASSERT_EQUAL((size_t) 3, handler.frames.size()); - CPPUNIT_ASSERT_EQUAL((u_int16_t) 7, handler.frames[0]->getChannel()); - CPPUNIT_ASSERT_EQUAL((u_int16_t) 7, handler.frames[1]->getChannel()); - CPPUNIT_ASSERT_EQUAL((u_int16_t) 7, handler.frames[2]->getChannel()); - BasicDeliverBody::shared_ptr deliver(dynamic_pointer_cast<BasicDeliverBody, AMQBody>(handler.frames[0]->getBody())); - AMQHeaderBody::shared_ptr contentHeader(dynamic_pointer_cast<AMQHeaderBody, AMQBody>(handler.frames[1]->getBody())); - AMQContentBody::shared_ptr contentBody(dynamic_pointer_cast<AMQContentBody, AMQBody>(handler.frames[2]->getBody())); - CPPUNIT_ASSERT(deliver); - CPPUNIT_ASSERT(contentHeader); - CPPUNIT_ASSERT(contentBody); - CPPUNIT_ASSERT_EQUAL(data, contentBody->getData()); - } - - void testStaging(){ - MockMessageStore store; - DummyHandler handler; - Channel channel(qpid::framing::highestProtocolVersion, &handler, 1, 1000/*framesize*/, &store, 10/*staging threshold*/); - const string data[] = {"abcde", "fghij", "klmno"}; - - Message* msg = new Message(0, "my_exchange", "my_routing_key", false, false); - - store.expect(); - store.stage(msg); - for (int i = 0; i < 3; i++) { - store.appendContent(msg, data[i]); - } - store.destroy(msg); - store.test(); - - Exchange::shared_ptr exchange(new FanOutExchange("my_exchange")); - Queue::shared_ptr queue(new Queue("my_queue")); - exchange->bind(queue, "", 0); - - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - u_int64_t contentSize(0); - for (int i = 0; i < 3; i++) { - contentSize += data[i].size(); - } - header->setContentSize(contentSize); - channel.handlePublish(msg, exchange); - channel.handleHeader(header); - - for (int i = 0; i < 3; i++) { - AMQContentBody::shared_ptr body(new AMQContentBody(data[i])); - channel.handleContent(body); - } - Message::shared_ptr msg2 = queue->dequeue(); - CPPUNIT_ASSERT_EQUAL(msg, msg2.get()); - msg2.reset();//should trigger destroy call - - store.check(); - } - - - //NOTE: strictly speaking this should/could be part of QueueTest, - //but as it can usefully use the same utility classes as this - //class it is defined here for simpllicity - void testQueuePolicy() - { - MockMessageStore store; - {//must ensure that store is last thing deleted as it is needed by destructor of lazy loaded content - const string data1("abcd"); - const string data2("efghijk"); - const string data3("lmnopqrstuvwxyz"); - Message::shared_ptr msg1(createMessage("e", "A", "MsgA", data1.size())); - Message::shared_ptr msg2(createMessage("e", "B", "MsgB", data2.size())); - Message::shared_ptr msg3(createMessage("e", "C", "MsgC", data3.size())); - addContent(msg1, data1); - addContent(msg2, data2); - addContent(msg3, data3); - - QueuePolicy policy(2, 0);//third message should be stored on disk and lazy loaded - FieldTable settings; - policy.update(settings); - - store.expect(); - store.stage(msg3.get()); - store.destroy(msg3.get()); - store.test(); - - Queue::shared_ptr queue(new Queue("my_queue", false, &store, 0)); - queue->configure(settings);//set policy - queue->deliver(msg1); - queue->deliver(msg2); - queue->deliver(msg3); - - Message::shared_ptr next = queue->dequeue(); - CPPUNIT_ASSERT_EQUAL(msg1, next); - CPPUNIT_ASSERT_EQUAL((u_int32_t) data1.size(), next->encodedContentSize()); - next = queue->dequeue(); - CPPUNIT_ASSERT_EQUAL(msg2, next); - CPPUNIT_ASSERT_EQUAL((u_int32_t) data2.size(), next->encodedContentSize()); - next = queue->dequeue(); - CPPUNIT_ASSERT_EQUAL(msg3, next); - CPPUNIT_ASSERT_EQUAL((u_int32_t) 0, next->encodedContentSize()); - - next.reset(); - msg1.reset(); - msg2.reset(); - msg3.reset();//must clear all references to messages to allow them to be destroyed - - } - store.check(); - } - - Message* createMessage(const string& exchange, const string& routingKey, const string& messageId, u_int64_t contentSize) - { - Message* msg = new Message(0, exchange, routingKey, false, false); - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - header->setContentSize(contentSize); - msg->setHeader(header); - msg->getHeaderProperties()->setMessageId(messageId); - return msg; - } - - void addContent(Message::shared_ptr msg, const string& data) - { - AMQContentBody::shared_ptr body(new AMQContentBody(data)); - msg->addContent(body); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(ChannelTest); diff --git a/qpid/cpp/tests/ConfigurationTest.cpp b/qpid/cpp/tests/ConfigurationTest.cpp deleted file mode 100644 index 3a1d5ba85d..0000000000 --- a/qpid/cpp/tests/ConfigurationTest.cpp +++ /dev/null @@ -1,98 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <Configuration.h> -#include <qpid_test_plugin.h> -#include <iostream> - -using namespace std; -using namespace qpid::broker; - -class ConfigurationTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(ConfigurationTest); - CPPUNIT_TEST(testIsHelp); - CPPUNIT_TEST(testPortLongForm); - CPPUNIT_TEST(testPortShortForm); - CPPUNIT_TEST(testStore); - CPPUNIT_TEST(testStagingThreshold); - CPPUNIT_TEST(testVarious); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testIsHelp() - { - Configuration conf; - char* argv[] = {"ignore", "--help"}; - conf.parse("ignore", 2, argv); - CPPUNIT_ASSERT(conf.isHelp()); - } - - void testPortLongForm() - { - Configuration conf; - char* argv[] = {"ignore", "--port", "6789"}; - conf.parse("ignore", 3, argv); - CPPUNIT_ASSERT_EQUAL(6789, conf.getPort()); - } - - void testPortShortForm() - { - Configuration conf; - char* argv[] = {"ignore", "-p", "6789"}; - conf.parse("ignore", 3, argv); - CPPUNIT_ASSERT_EQUAL(6789, conf.getPort()); - } - - void testStore() - { - Configuration conf; - char* argv[] = {"ignore", "--store", "my-store-module.so"}; - conf.parse("ignore", 3, argv); - std::string expected("my-store-module.so"); - CPPUNIT_ASSERT_EQUAL(expected, conf.getStore()); - } - - void testStagingThreshold() - { - Configuration conf; - char* argv[] = {"ignore", "--staging-threshold", "123456789"}; - conf.parse("ignore", 3, argv); - long expected = 123456789; - CPPUNIT_ASSERT_EQUAL(expected, conf.getStagingThreshold()); - } - - void testVarious() - { - Configuration conf; - char* argv[] = {"ignore", "-t", "--worker-threads", "10"}; - conf.parse("ignore", 4, argv); - CPPUNIT_ASSERT_EQUAL(5672, conf.getPort());//default - CPPUNIT_ASSERT_EQUAL(10, conf.getWorkerThreads()); - CPPUNIT_ASSERT(conf.isTrace()); - CPPUNIT_ASSERT(!conf.isHelp()); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(ConfigurationTest); - diff --git a/qpid/cpp/tests/EventChannelConnectionTest.cpp b/qpid/cpp/tests/EventChannelConnectionTest.cpp deleted file mode 100644 index a6b309d771..0000000000 --- a/qpid/cpp/tests/EventChannelConnectionTest.cpp +++ /dev/null @@ -1,109 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <iostream> -#include <boost/bind.hpp> -#include "framing/AMQHeartbeatBody.h" -#include "framing/AMQFrame.h" -#include "sys/posix/EventChannelConnection.h" -#include "sys/SessionHandler.h" -#include "sys/SessionHandlerFactory.h" -#include "sys/Socket.h" -#include "qpid_test_plugin.h" -#include "MockSessionHandler.h" - -using namespace qpid::sys; -using namespace qpid::framing; -using namespace std; - -class EventChannelConnectionTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(EventChannelConnectionTest); - CPPUNIT_TEST(testSendReceive); - CPPUNIT_TEST(testCloseExternal); - CPPUNIT_TEST(testCloseException); - CPPUNIT_TEST_SUITE_END(); - - public: - - void setUp() { - threads = EventChannelThreads::create(); - CPPUNIT_ASSERT_EQUAL(0, ::pipe(pipe)); - connection.reset( - new EventChannelConnection(threads, factory, pipe[0], pipe[1])); - CPPUNIT_ASSERT(factory.handler != 0); - } - - void tearDown() { - threads->shutdown(); - threads->join(); - } - - void testSendReceive() - { - // Send a protocol initiation. - Buffer buf(1024); - ProtocolInitiation(4,2).encode(buf); - buf.flip(); - ssize_t n = write(pipe[1], buf.start(), buf.available()); - CPPUNIT_ASSERT_EQUAL(ssize_t(buf.available()), n); - - // Verify session handler got the protocol init. - ProtocolInitiation init = factory.handler->waitForProtocolInit(); - CPPUNIT_ASSERT_EQUAL(int(4), int(init.getMajor())); - CPPUNIT_ASSERT_EQUAL(int(2), int(init.getMinor())); - - // Send a heartbeat frame, verify connection got it. - connection->send(new AMQFrame(42, new AMQHeartbeatBody())); - AMQFrame frame = factory.handler->waitForFrame(); - CPPUNIT_ASSERT_EQUAL(u_int16_t(42), frame.getChannel()); - CPPUNIT_ASSERT_EQUAL(u_int8_t(HEARTBEAT_BODY), - frame.getBody()->type()); - threads->shutdown(); - } - - // Make sure the handler is closed if the connection is closed. - void testCloseExternal() { - connection->close(); - factory.handler->waitForClosed(); - } - - // Make sure the handler is closed if the connection closes or fails. - // TODO aconway 2006-12-18: logs exception message in test output. - void testCloseException() { - ::close(pipe[0]); - ::close(pipe[1]); - // TODO aconway 2006-12-18: Shouldn't this be failing? - connection->send(new AMQFrame(42, new AMQHeartbeatBody())); - factory.handler->waitForClosed(); - } - - private: - EventChannelThreads::shared_ptr threads; - int pipe[2]; - std::auto_ptr<EventChannelConnection> connection; - MockSessionHandlerFactory factory; -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(EventChannelConnectionTest); - diff --git a/qpid/cpp/tests/EventChannelTest.cpp b/qpid/cpp/tests/EventChannelTest.cpp deleted file mode 100644 index 8e5c724a15..0000000000 --- a/qpid/cpp/tests/EventChannelTest.cpp +++ /dev/null @@ -1,187 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <posix/EventChannel.h> -#include <posix/check.h> -#include <sys/Runnable.h> -#include <sys/Socket.h> -#include <sys/Thread.h> -#include <qpid_test_plugin.h> - -#include <sys/socket.h> -#include <signal.h> -#include <netinet/in.h> -#include <netdb.h> -#include <iostream> - -using namespace qpid::sys; - - -const char hello[] = "hello"; -const size_t size = sizeof(hello); - -struct RunMe : public Runnable -{ - bool ran; - RunMe() : ran(false) {} - void run() { ran = true; } -}; - -class EventChannelTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(EventChannelTest); - CPPUNIT_TEST(testEvent); - CPPUNIT_TEST(testRead); - CPPUNIT_TEST(testFailedRead); - CPPUNIT_TEST(testWrite); - CPPUNIT_TEST(testFailedWrite); - CPPUNIT_TEST(testReadWrite); - CPPUNIT_TEST(testAccept); - CPPUNIT_TEST_SUITE_END(); - - private: - EventChannel::shared_ptr ec; - int pipe[2]; - char readBuf[size]; - - public: - - void setUp() - { - memset(readBuf, size, 0); - ec = EventChannel::create(); - if (::pipe(pipe) != 0) throw QPID_POSIX_ERROR(errno); - // Ignore SIGPIPE, otherwise we will crash writing to broken pipe. - signal(SIGPIPE, SIG_IGN); - } - - // Verify that calling getEvent returns event. - template <class T> bool isNextEvent(T& event) - { - return &event == dynamic_cast<T*>(ec->getEvent()); - } - - template <class T> bool isNextEventOk(T& event) - { - Event* next = ec->getEvent(); - if (next) next->throwIfError(); - return &event == next; - } - - void testEvent() - { - RunMe runMe; - CPPUNIT_ASSERT(!runMe.ran); - // Instances of Event just pass thru the channel immediately. - Event e(runMe.functor()); - ec->postEvent(e); - CPPUNIT_ASSERT(isNextEventOk(e)); - e.dispatch(); - CPPUNIT_ASSERT(runMe.ran); - } - - void testRead() { - ReadEvent re(pipe[0], readBuf, size); - ec->postEvent(re); - CPPUNIT_ASSERT_EQUAL(ssize_t(size), ::write(pipe[1], hello, size)); - CPPUNIT_ASSERT(isNextEventOk(re)); - CPPUNIT_ASSERT_EQUAL(size, re.getSize()); - CPPUNIT_ASSERT_EQUAL(std::string(hello), std::string(readBuf)); - } - - void testFailedRead() - { - ReadEvent re(pipe[0], readBuf, size); - ec->postEvent(re); - - // EOF before all data read. - ::close(pipe[1]); - CPPUNIT_ASSERT(isNextEvent(re)); - CPPUNIT_ASSERT(re.hasError()); - try { - re.throwIfError(); - CPPUNIT_FAIL("Expected QpidError."); - } - catch (const qpid::QpidError&) { } - - // Bad file descriptor. Note in this case we fail - // in postEvent and throw immediately. - try { - ReadEvent bad; - ec->postEvent(bad); - CPPUNIT_FAIL("Expected QpidError."); - } - catch (const qpid::QpidError&) { } - } - - void testWrite() { - WriteEvent wr(pipe[1], hello, size); - ec->postEvent(wr); - CPPUNIT_ASSERT(isNextEventOk(wr)); - CPPUNIT_ASSERT_EQUAL(ssize_t(size), ::read(pipe[0], readBuf, size));; - CPPUNIT_ASSERT_EQUAL(std::string(hello), std::string(readBuf)); - } - - void testFailedWrite() { - WriteEvent wr(pipe[1], hello, size); - ::close(pipe[0]); - ec->postEvent(wr); - CPPUNIT_ASSERT(isNextEvent(wr)); - CPPUNIT_ASSERT(wr.hasError()); - } - - void testReadWrite() - { - ReadEvent re(pipe[0], readBuf, size); - WriteEvent wr(pipe[1], hello, size); - ec->postEvent(re); - ec->postEvent(wr); - ec->getEvent(); - ec->getEvent(); - CPPUNIT_ASSERT_EQUAL(std::string(hello), std::string(readBuf)); - } - - void testAccept() { - Socket s = Socket::createTcp(); - int port = s.listen(0, 10); - CPPUNIT_ASSERT(port != 0); - - AcceptEvent ae(s.fd()); - ec->postEvent(ae); - Socket client = Socket::createTcp(); - client.connect("localhost", port); - CPPUNIT_ASSERT(isNextEvent(ae)); - ae.dispatch(); - - // Verify client writes are read by the accepted descriptor. - char readBuf[size]; - ReadEvent re(ae.getAcceptedDesscriptor(), readBuf, size); - ec->postEvent(re); - CPPUNIT_ASSERT_EQUAL(ssize_t(size), client.send(hello, sizeof(hello))); - CPPUNIT_ASSERT(isNextEvent(re)); - re.dispatch(); - CPPUNIT_ASSERT_EQUAL(std::string(hello), std::string(readBuf)); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(EventChannelTest); - diff --git a/qpid/cpp/tests/EventChannelThreadsTest.cpp b/qpid/cpp/tests/EventChannelThreadsTest.cpp deleted file mode 100644 index 285ed29518..0000000000 --- a/qpid/cpp/tests/EventChannelThreadsTest.cpp +++ /dev/null @@ -1,247 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <iostream> -#include <boost/bind.hpp> - -#include <sys/Socket.h> -#include <posix/EventChannelThreads.h> -#include <qpid_test_plugin.h> - - -using namespace std; - -using namespace qpid::sys; - -const int nConnections = 5; -const int nMessages = 10; // Messages read/written per connection. - - -// Accepts + reads + writes. -const int totalEvents = nConnections+2*nConnections*nMessages; - -/** - * Messages are numbered 0..nMessages. - * We count the total number of events, and the - * number of reads and writes for each message number. - */ -class TestResults : public Monitor { - public: - TestResults() : isShutdown(false), nEventsRemaining(totalEvents) {} - - void countEvent() { - if (--nEventsRemaining == 0) - shutdown(); - } - - void countRead(int messageNo) { - ++reads[messageNo]; - countEvent(); - } - - void countWrite(int messageNo) { - ++writes[messageNo]; - countEvent(); - } - - void shutdown(const std::string& exceptionMsg = std::string()) { - ScopedLock lock(*this); - exception = exceptionMsg; - isShutdown = true; - notifyAll(); - } - - void wait() { - ScopedLock lock(*this); - Time deadline = now() + 10*TIME_SEC; - while (!isShutdown) { - CPPUNIT_ASSERT(Monitor::wait(deadline)); - } - } - - bool isShutdown; - std::string exception; - AtomicCount reads[nMessages]; - AtomicCount writes[nMessages]; - AtomicCount nEventsRemaining; -}; - -TestResults results; - -EventChannelThreads::shared_ptr threads; - -// Functor to wrap callbacks in try/catch. -class SafeCallback { - public: - SafeCallback(Runnable& r) : callback(r.functor()) {} - SafeCallback(Event::Callback cb) : callback(cb) {} - - void operator()() { - std::string exception; - try { - callback(); - return; - } - catch (const std::exception& e) { - exception = e.what(); - } - catch (...) { - exception = "Unknown exception."; - } - results.shutdown(exception); - } - - private: - Event::Callback callback; -}; - -/** Repost an event N times. */ -class Repost { - public: - Repost(int n) : count (n) {} - virtual ~Repost() {} - - void repost(Event* event) { - if (--count==0) { - delete event; - } else { - threads->postEvent(event); - } - } - private: - int count; -}; - - - -/** Repeating read event. */ -class TestReadEvent : public ReadEvent, public Runnable, private Repost { - public: - explicit TestReadEvent(int fd=-1) : - ReadEvent(fd, &value, sizeof(value), SafeCallback(*this)), - Repost(nMessages) - {} - - void run() { - CPPUNIT_ASSERT_EQUAL(sizeof(value), getSize()); - CPPUNIT_ASSERT(0 <= value); - CPPUNIT_ASSERT(value < nMessages); - results.countRead(value); - repost(this); - } - - private: - int value; - ReadEvent original; -}; - - -/** Fire and forget write event */ -class TestWriteEvent : public WriteEvent, public Runnable, private Repost { - public: - TestWriteEvent(int fd=-1) : - WriteEvent(fd, &value, sizeof(value), SafeCallback(*this)), - Repost(nMessages), - value(0) - {} - - void run() { - CPPUNIT_ASSERT_EQUAL(sizeof(int), getSize()); - results.countWrite(value++); - repost(this); - } - - private: - int value; -}; - -/** Fire-and-forget Accept event, posts reads on the accepted connection. */ -class TestAcceptEvent : public AcceptEvent, public Runnable, private Repost { - public: - TestAcceptEvent(int fd=-1) : - AcceptEvent(fd, SafeCallback(*this)), - Repost(nConnections) - {} - - void run() { - threads->postEvent(new TestReadEvent(getAcceptedDesscriptor())); - results.countEvent(); - repost(this); - } -}; - -class EventChannelThreadsTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(EventChannelThreadsTest); - CPPUNIT_TEST(testThreads); - CPPUNIT_TEST_SUITE_END(); - - public: - - void setUp() { - threads = EventChannelThreads::create(EventChannel::create()); - } - - void tearDown() { - threads.reset(); - } - - void testThreads() - { - Socket listener = Socket::createTcp(); - int port = listener.listen(); - - // Post looping accept events, will repost nConnections times. - // The accept event will automatically post read events. - threads->postEvent(new TestAcceptEvent(listener.fd())); - - // Make connections. - Socket connections[nConnections]; - for (int i = 0; i < nConnections; ++i) { - connections[i] = Socket::createTcp(); - connections[i].connect("localhost", port); - } - - // Post looping write events. - for (int i = 0; i < nConnections; ++i) { - threads->postEvent(new TestWriteEvent(connections[i].fd())); - } - - // Wait for all events to be dispatched. - results.wait(); - - if (!results.exception.empty()) CPPUNIT_FAIL(results.exception); - CPPUNIT_ASSERT_EQUAL(0, int(results.nEventsRemaining)); - - // Expect a read and write for each messageNo from each connection. - for (int messageNo = 0; messageNo < nMessages; ++messageNo) { - CPPUNIT_ASSERT_EQUAL(nConnections, int(results.reads[messageNo])); - CPPUNIT_ASSERT_EQUAL(nConnections, int(results.writes[messageNo])); - } - - threads->shutdown(); - threads->join(); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(EventChannelThreadsTest); - diff --git a/qpid/cpp/tests/ExceptionTest.cpp b/qpid/cpp/tests/ExceptionTest.cpp deleted file mode 100644 index 6cea863168..0000000000 --- a/qpid/cpp/tests/ExceptionTest.cpp +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -#include <Exception.h> -#include <qpid_test_plugin.h> - -using namespace qpid; - -struct CountDestroyedException : public Exception { - int& count; - static int staticCount; - CountDestroyedException() : count(staticCount) { } - CountDestroyedException(int& n) : count(n) {} - ~CountDestroyedException() throw() { count++; } - void throwSelf() const { throw *this; } -}; - -int CountDestroyedException::staticCount = 0; - - -class ExceptionTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(ExceptionTest); - CPPUNIT_TEST(testHeapException); - CPPUNIT_TEST_SUITE_END(); - public: - // Verify proper memory management for heap-allocated exceptions. - void testHeapException() { - int count = 0; - try { - std::auto_ptr<Exception> p( - new CountDestroyedException(count)); - p.release()->throwSelf(); - CPPUNIT_FAIL("Expected CountDestroyedException."); - } catch (const CountDestroyedException& e) { - CPPUNIT_ASSERT(&e.count == &count); - } - CPPUNIT_ASSERT_EQUAL(1, count); - } -}; - - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(ExceptionTest); - diff --git a/qpid/cpp/tests/ExchangeTest.cpp b/qpid/cpp/tests/ExchangeTest.cpp deleted file mode 100644 index 8fef4ccaac..0000000000 --- a/qpid/cpp/tests/ExchangeTest.cpp +++ /dev/null @@ -1,67 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <DeliverableMessage.h> -#include <DirectExchange.h> -#include <BrokerExchange.h> -#include <BrokerQueue.h> -#include <TopicExchange.h> -#include <qpid_test_plugin.h> -#include <iostream> - -using namespace qpid::broker; -using namespace qpid::sys; - -class ExchangeTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(ExchangeTest); - CPPUNIT_TEST(testMe); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testMe() - { - Queue::shared_ptr queue(new Queue("queue", true)); - Queue::shared_ptr queue2(new Queue("queue2", true)); - - TopicExchange topic("topic"); - topic.bind(queue, "abc", 0); - topic.bind(queue2, "abc", 0); - - DirectExchange direct("direct"); - direct.bind(queue, "abc", 0); - direct.bind(queue2, "abc", 0); - - queue.reset(); - queue2.reset(); - - Message::shared_ptr msgPtr(new Message(0, "e", "A", true, true)); - DeliverableMessage msg(msgPtr); - topic.route(msg, "abc", 0); - direct.route(msg, "abc", 0); - - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(ExchangeTest); diff --git a/qpid/cpp/tests/FieldTableTest.cpp b/qpid/cpp/tests/FieldTableTest.cpp deleted file mode 100644 index 8d9285bf4b..0000000000 --- a/qpid/cpp/tests/FieldTableTest.cpp +++ /dev/null @@ -1,55 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <iostream> -#include <amqp_framing.h> -#include <qpid_test_plugin.h> - -using namespace qpid::framing; - -class FieldTableTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(FieldTableTest); - CPPUNIT_TEST(testMe); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testMe() - { - FieldTable ft; - ft.setString("A", "BCDE"); - CPPUNIT_ASSERT_EQUAL(std::string("BCDE"), ft.getString("A")); - - Buffer buffer(100); - buffer.putFieldTable(ft); - buffer.flip(); - FieldTable ft2; - buffer.getFieldTable(ft2); - CPPUNIT_ASSERT_EQUAL(std::string("BCDE"), ft2.getString("A")); - - } -}; - - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(FieldTableTest); - diff --git a/qpid/cpp/tests/FramingTest.cpp b/qpid/cpp/tests/FramingTest.cpp deleted file mode 100644 index e4d289d3d5..0000000000 --- a/qpid/cpp/tests/FramingTest.cpp +++ /dev/null @@ -1,150 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <ConnectionRedirectBody.h> -#include <ProtocolVersion.h> -#include <amqp_framing.h> -#include <iostream> -#include <qpid_test_plugin.h> -#include <sstream> -#include <typeinfo> -#include <AMQP_HighestVersion.h> - - -using namespace qpid::framing; - -template <class T> -std::string tostring(const T& x) -{ - std::ostringstream out; - out << x; - return out.str(); -} - -class FramingTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(FramingTest); - CPPUNIT_TEST(testBasicQosBody); - CPPUNIT_TEST(testConnectionSecureBody); - CPPUNIT_TEST(testConnectionRedirectBody); - CPPUNIT_TEST(testAccessRequestBody); - CPPUNIT_TEST(testBasicConsumeBody); - CPPUNIT_TEST(testConnectionRedirectBodyFrame); - CPPUNIT_TEST(testBasicConsumeOkBodyFrame); - CPPUNIT_TEST_SUITE_END(); - - private: - Buffer buffer; - ProtocolVersion v; - - public: - - FramingTest() : buffer(100), v(qpid::framing::highestProtocolVersion){} - - void testBasicQosBody() - { - BasicQosBody in(v, 0xCAFEBABE, 0xABBA, true); - in.encodeContent(buffer); - buffer.flip(); - BasicQosBody out(v); - out.decodeContent(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - - void testConnectionSecureBody() - { - std::string s = "security credential"; - ConnectionSecureBody in(v, s); - in.encodeContent(buffer); - buffer.flip(); - ConnectionSecureBody out(v); - out.decodeContent(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - - void testConnectionRedirectBody() - { - std::string a = "hostA"; - std::string b = "hostB"; - ConnectionRedirectBody in(v, a, b); - in.encodeContent(buffer); - buffer.flip(); - ConnectionRedirectBody out(v); - out.decodeContent(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - - void testAccessRequestBody() - { - std::string s = "text"; - AccessRequestBody in(v, s, true, false, true, false, true); - in.encodeContent(buffer); - buffer.flip(); - AccessRequestBody out(v); - out.decodeContent(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - - void testBasicConsumeBody() - { - std::string q = "queue"; - std::string t = "tag"; - BasicConsumeBody in(v, 0, q, t, false, true, false, false, - FieldTable()); - in.encodeContent(buffer); - buffer.flip(); - BasicConsumeBody out(v); - out.decodeContent(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - - - void testConnectionRedirectBodyFrame() - { - std::string a = "hostA"; - std::string b = "hostB"; - AMQFrame in(highestProtocolVersion, 999, new ConnectionRedirectBody(v, a, b)); - in.encode(buffer); - buffer.flip(); - AMQFrame out; - out.decode(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - - void testBasicConsumeOkBodyFrame() - { - std::string s = "hostA"; - AMQFrame in(highestProtocolVersion, 999, new BasicConsumeOkBody(v, s)); - in.encode(buffer); - buffer.flip(); - AMQFrame out; - for(int i = 0; i < 5; i++){ - out.decode(buffer); - CPPUNIT_ASSERT_EQUAL(tostring(in), tostring(out)); - } - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(FramingTest); - - - diff --git a/qpid/cpp/tests/HeaderTest.cpp b/qpid/cpp/tests/HeaderTest.cpp deleted file mode 100644 index 01927c7190..0000000000 --- a/qpid/cpp/tests/HeaderTest.cpp +++ /dev/null @@ -1,141 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <iostream> -#include <amqp_framing.h> -#include <qpid_test_plugin.h> - -using namespace qpid::framing; - -class HeaderTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(HeaderTest); - CPPUNIT_TEST(testGenericProperties); - CPPUNIT_TEST(testAllSpecificProperties); - CPPUNIT_TEST(testSomeSpecificProperties); - CPPUNIT_TEST_SUITE_END(); - -public: - - void testGenericProperties() - { - AMQHeaderBody body(BASIC); - dynamic_cast<BasicHeaderProperties*>(body.getProperties())->getHeaders().setString("A", "BCDE"); - Buffer buffer(100); - - body.encode(buffer); - buffer.flip(); - AMQHeaderBody body2; - body2.decode(buffer, body.size()); - BasicHeaderProperties* props = - dynamic_cast<BasicHeaderProperties*>(body2.getProperties()); - CPPUNIT_ASSERT_EQUAL(std::string("BCDE"), - props->getHeaders().getString("A")); - } - - void testAllSpecificProperties(){ - string contentType("text/html"); - string contentEncoding("UTF8"); - u_int8_t deliveryMode(2); - u_int8_t priority(3); - string correlationId("abc"); - string replyTo("no-address"); - string expiration("why is this a string?"); - string messageId("xyz"); - u_int64_t timestamp(0xabcd); - string type("eh?"); - string userId("guest"); - string appId("just testing"); - string clusterId("no clustering required"); - - AMQHeaderBody body(BASIC); - BasicHeaderProperties* properties = - dynamic_cast<BasicHeaderProperties*>(body.getProperties()); - properties->setContentType(contentType); - properties->getHeaders().setString("A", "BCDE"); - properties->setDeliveryMode(deliveryMode); - properties->setPriority(priority); - properties->setCorrelationId(correlationId); - properties->setReplyTo(replyTo); - properties->setExpiration(expiration); - properties->setMessageId(messageId); - properties->setTimestamp(timestamp); - properties->setType(type); - properties->setUserId(userId); - properties->setAppId(appId); - properties->setClusterId(clusterId); - - Buffer buffer(10000); - body.encode(buffer); - buffer.flip(); - AMQHeaderBody temp; - temp.decode(buffer, body.size()); - properties = dynamic_cast<BasicHeaderProperties*>(temp.getProperties()); - - CPPUNIT_ASSERT_EQUAL(contentType, properties->getContentType()); - CPPUNIT_ASSERT_EQUAL(std::string("BCDE"), properties->getHeaders().getString("A")); - CPPUNIT_ASSERT_EQUAL(deliveryMode, properties->getDeliveryMode()); - CPPUNIT_ASSERT_EQUAL(priority, properties->getPriority()); - CPPUNIT_ASSERT_EQUAL(correlationId, properties->getCorrelationId()); - CPPUNIT_ASSERT_EQUAL(replyTo, properties->getReplyTo()); - CPPUNIT_ASSERT_EQUAL(expiration, properties->getExpiration()); - CPPUNIT_ASSERT_EQUAL(messageId, properties->getMessageId()); - CPPUNIT_ASSERT_EQUAL(timestamp, properties->getTimestamp()); - CPPUNIT_ASSERT_EQUAL(type, properties->getType()); - CPPUNIT_ASSERT_EQUAL(userId, properties->getUserId()); - CPPUNIT_ASSERT_EQUAL(appId, properties->getAppId()); - CPPUNIT_ASSERT_EQUAL(clusterId, properties->getClusterId()); - } - - void testSomeSpecificProperties(){ - string contentType("application/octet-stream"); - u_int8_t deliveryMode(5); - u_int8_t priority(6); - string expiration("Z"); - u_int64_t timestamp(0xabe4a34a); - - AMQHeaderBody body(BASIC); - BasicHeaderProperties* properties = - dynamic_cast<BasicHeaderProperties*>(body.getProperties()); - properties->setContentType(contentType); - properties->setDeliveryMode(deliveryMode); - properties->setPriority(priority); - properties->setExpiration(expiration); - properties->setTimestamp(timestamp); - - Buffer buffer(100); - body.encode(buffer); - buffer.flip(); - AMQHeaderBody temp; - temp.decode(buffer, body.size()); - properties = dynamic_cast<BasicHeaderProperties*>(temp.getProperties()); - - CPPUNIT_ASSERT_EQUAL(contentType, properties->getContentType()); - CPPUNIT_ASSERT_EQUAL((int) deliveryMode, (int) properties->getDeliveryMode()); - CPPUNIT_ASSERT_EQUAL((int) priority, (int) properties->getPriority()); - CPPUNIT_ASSERT_EQUAL(expiration, properties->getExpiration()); - CPPUNIT_ASSERT_EQUAL(timestamp, properties->getTimestamp()); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(HeaderTest); - diff --git a/qpid/cpp/tests/HeadersExchangeTest.cpp b/qpid/cpp/tests/HeadersExchangeTest.cpp deleted file mode 100644 index 6cd51c55a9..0000000000 --- a/qpid/cpp/tests/HeadersExchangeTest.cpp +++ /dev/null @@ -1,115 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <HeadersExchange.h> -#include <FieldTable.h> -#include <Value.h> -#include <qpid_test_plugin.h> - -using namespace qpid::broker; -using namespace qpid::framing; - -class HeadersExchangeTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(HeadersExchangeTest); - CPPUNIT_TEST(testMatchAll); - CPPUNIT_TEST(testMatchAny); - CPPUNIT_TEST(testMatchEmptyValue); - CPPUNIT_TEST(testMatchEmptyArgs); - CPPUNIT_TEST(testMatchNoXMatch); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testMatchAll() - { - FieldTable b, m; - b.setString("x-match", "all"); - b.setString("foo", "FOO"); - b.setInt("n", 42); - m.setString("foo", "FOO"); - m.setInt("n", 42); - CPPUNIT_ASSERT(HeadersExchange::match(b, m)); - - // Ignore extras. - m.setString("extra", "x"); - CPPUNIT_ASSERT(HeadersExchange::match(b, m)); - - // Fail mismatch, wrong value. - m.setString("foo", "NotFoo"); - CPPUNIT_ASSERT(!HeadersExchange::match(b, m)); - - // Fail mismatch, missing value - m.erase("foo"); - CPPUNIT_ASSERT(!HeadersExchange::match(b, m)); - } - - void testMatchAny() - { - FieldTable b, m; - b.setString("x-match", "any"); - b.setString("foo", "FOO"); - b.setInt("n", 42); - m.setString("foo", "FOO"); - CPPUNIT_ASSERT(HeadersExchange::match(b, m)); - m.erase("foo"); - CPPUNIT_ASSERT(!HeadersExchange::match(b, m)); - m.setInt("n", 42); - CPPUNIT_ASSERT(HeadersExchange::match(b, m)); - } - - void testMatchEmptyValue() - { - FieldTable b, m; - b.setString("x-match", "all"); - b.getMap()["foo"] = FieldTable::ValuePtr(new EmptyValue()); - b.getMap()["n"] = FieldTable::ValuePtr(new EmptyValue()); - CPPUNIT_ASSERT(!HeadersExchange::match(b, m)); - m.setString("foo", "blah"); - m.setInt("n", 123); - } - - void testMatchEmptyArgs() - { - FieldTable b, m; - m.setString("foo", "FOO"); - - b.setString("x-match", "all"); - CPPUNIT_ASSERT(HeadersExchange::match(b, m)); - b.setString("x-match", "any"); - CPPUNIT_ASSERT(!HeadersExchange::match(b, m)); - } - - - void testMatchNoXMatch() - { - FieldTable b, m; - b.setString("foo", "FOO"); - m.setString("foo", "FOO"); - CPPUNIT_ASSERT(!HeadersExchange::match(b, m)); - } - - -}; - -// make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(HeadersExchangeTest); diff --git a/qpid/cpp/tests/InMemoryContentTest.cpp b/qpid/cpp/tests/InMemoryContentTest.cpp deleted file mode 100644 index bd638dae66..0000000000 --- a/qpid/cpp/tests/InMemoryContentTest.cpp +++ /dev/null @@ -1,98 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <InMemoryContent.h> -#include <qpid_test_plugin.h> -#include <AMQP_HighestVersion.h> -#include <iostream> -#include <list> - -using std::list; -using std::string; -using boost::dynamic_pointer_cast; -using namespace qpid::broker; -using namespace qpid::framing; - -struct DummyHandler : OutputHandler{ - std::vector<AMQFrame*> frames; - - virtual void send(AMQFrame* frame){ - frames.push_back(frame); - } -}; - -class InMemoryContentTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(InMemoryContentTest); - CPPUNIT_TEST(testRefragmentation); - CPPUNIT_TEST_SUITE_END(); - -public: - void testRefragmentation() - { - {//no remainder - string out[] = {"abcde", "fghij", "klmno", "pqrst"}; - string in[] = {out[0] + out[1], out[2] + out[3]}; - refragment(2, in, 4, out); - } - {//remainder for last frame - string out[] = {"abcde", "fghij", "klmno", "pqrst", "uvw"}; - string in[] = {out[0] + out[1], out[2] + out[3] + out[4]}; - refragment(2, in, 5, out); - } - } - - - void refragment(size_t inCount, string* in, size_t outCount, string* out, u_int32_t framesize = 5) - { - InMemoryContent content; - DummyHandler handler; - u_int16_t channel = 3; - - addframes(content, inCount, in); - content.send(highestProtocolVersion, &handler, channel, framesize); - check(handler, channel, outCount, out); - } - - void addframes(InMemoryContent& content, size_t frameCount, string* frameData) - { - for (unsigned int i = 0; i < frameCount; i++) { - AMQContentBody::shared_ptr frame(new AMQContentBody(frameData[i])); - content.add(frame); - } - } - - void check(DummyHandler& handler, u_int16_t channel, size_t expectedChunkCount, string* expectedChunks) - { - CPPUNIT_ASSERT_EQUAL(expectedChunkCount, handler.frames.size()); - - for (unsigned int i = 0; i < expectedChunkCount; i++) { - AMQContentBody::shared_ptr chunk(dynamic_pointer_cast<AMQContentBody, AMQBody>(handler.frames[i]->getBody())); - CPPUNIT_ASSERT(chunk); - CPPUNIT_ASSERT_EQUAL(expectedChunks[i], chunk->getData()); - CPPUNIT_ASSERT_EQUAL(channel, handler.frames[i]->getChannel()); - } - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(InMemoryContentTest); - diff --git a/qpid/cpp/tests/LazyLoadedContentTest.cpp b/qpid/cpp/tests/LazyLoadedContentTest.cpp deleted file mode 100644 index 2075a6dd3a..0000000000 --- a/qpid/cpp/tests/LazyLoadedContentTest.cpp +++ /dev/null @@ -1,123 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <LazyLoadedContent.h> -#include <AMQP_HighestVersion.h> -#include <NullMessageStore.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <list> -#include <sstream> - -using std::list; -using std::string; -using boost::dynamic_pointer_cast; -using namespace qpid::broker; -using namespace qpid::framing; - -struct DummyHandler : OutputHandler{ - std::vector<AMQFrame*> frames; - - virtual void send(AMQFrame* frame){ - frames.push_back(frame); - } -}; - - -class LazyLoadedContentTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(LazyLoadedContentTest); - CPPUNIT_TEST(testFragmented); - CPPUNIT_TEST(testWhole); - CPPUNIT_TEST(testHalved); - CPPUNIT_TEST_SUITE_END(); - - class TestMessageStore : public NullMessageStore - { - const string content; - - public: - TestMessageStore(const string& _content) : content(_content) {} - - void loadContent(Message* const, string& data, u_int64_t offset, u_int32_t length) - { - if (offset + length <= content.size()) { - data = content.substr(offset, length); - } else{ - std::stringstream error; - error << "Invalid segment: offset=" << offset << ", length=" << length << ", content_length=" << content.size(); - throw qpid::Exception(error.str()); - } - } - }; - - -public: - void testFragmented() - { - string data = "abcdefghijklmnopqrstuvwxyz"; - u_int32_t framesize = 5; - string out[] = {"abcde", "fghij", "klmno", "pqrst", "uvwxy", "z"}; - load(data, 6, out, framesize); - } - - void testWhole() - { - string data = "abcdefghijklmnopqrstuvwxyz"; - u_int32_t framesize = 50; - string out[] = {data}; - load(data, 1, out, framesize); - } - - void testHalved() - { - string data = "abcdefghijklmnopqrstuvwxyz"; - u_int32_t framesize = 13; - string out[] = {"abcdefghijklm", "nopqrstuvwxyz"}; - load(data, 2, out, framesize); - } - - void load(string& in, size_t outCount, string* out, u_int32_t framesize) - { - TestMessageStore store(in); - LazyLoadedContent content(&store, 0, in.size()); - DummyHandler handler; - u_int16_t channel = 3; - content.send(highestProtocolVersion, &handler, channel, framesize); - check(handler, channel, outCount, out); - } - - void check(DummyHandler& handler, u_int16_t channel, size_t expectedChunkCount, string* expectedChunks) - { - CPPUNIT_ASSERT_EQUAL(expectedChunkCount, handler.frames.size()); - - for (unsigned int i = 0; i < expectedChunkCount; i++) { - AMQContentBody::shared_ptr chunk(dynamic_pointer_cast<AMQContentBody, AMQBody>(handler.frames[i]->getBody())); - CPPUNIT_ASSERT(chunk); - CPPUNIT_ASSERT_EQUAL(expectedChunks[i], chunk->getData()); - CPPUNIT_ASSERT_EQUAL(channel, handler.frames[i]->getChannel()); - } - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(LazyLoadedContentTest); - diff --git a/qpid/cpp/tests/Makefile.am b/qpid/cpp/tests/Makefile.am deleted file mode 100644 index 7764d79721..0000000000 --- a/qpid/cpp/tests/Makefile.am +++ /dev/null @@ -1,106 +0,0 @@ -AM_CXXFLAGS = $(WARNING_CFLAGS) $(CPPUNIT_CXXFLAGS) -INCLUDES = \ - -I$(top_srcdir)/gen \ - -I$(top_srcdir)/lib \ - -I$(top_srcdir)/lib/client \ - -I$(top_srcdir)/lib/broker \ - -I$(top_srcdir)/lib/common \ - -I$(top_srcdir)/lib/common/sys \ - -I$(top_srcdir)/lib/common/framing \ - $(APR_CXXFLAGS) - -# FIXME: have e.g., topicall, run as part of "make check"? -EXTRA_DIST = \ - .vg-supp \ - setup \ - env \ - broker \ - topicall \ - topictest \ - qpid_test_plugin.h \ - APRBaseTest.cpp - -client_tests = \ - client_test \ - echo_service \ - topic_listener \ - topic_publisher - -broker_tests = \ - AccumulatedAckTest \ - ChannelTest \ - ConfigurationTest \ - ExchangeTest \ - HeadersExchangeTest \ - InMemoryContentTest \ - LazyLoadedContentTest \ - MessageBuilderTest \ - MessageTest \ - QueueRegistryTest \ - QueueTest \ - QueuePolicyTest \ - TopicExchangeTest \ - TxAckTest \ - TxBufferTest \ - TxPublishTest \ - ValueTest - -framing_tests = \ - BodyHandlerTest \ - FieldTableTest \ - FramingTest \ - HeaderTest - -misc_tests = \ - ExceptionTest - -posix_tests = \ - EventChannelTest \ - EventChannelThreadsTest - -unit_tests = \ - $(broker_tests) \ - $(framing_tests) \ - $(misc_tests) - - -noinst_PROGRAMS = $(client_tests) - -TESTS_ENVIRONMENT = \ - VALGRIND=$(VALGRIND) \ - abs_builddir='$(abs_builddir)' \ - PATH="$(abs_builddir)/../src$(PATH_SEPARATOR)$$PATH" \ - abs_srcdir='$(abs_srcdir)' - -TESTS = run-unit-tests run-python-tests -EXTRA_DIST += $(TESTS) - -CLEANFILES=qpidd.log -DISTCLEANFILES=gen.mk - -include gen.mk - -abs_builddir = @abs_builddir@ -extra_libs = $(CPPUNIT_LIBS) -lib_client = $(abs_builddir)/../lib/client/libqpidclient.la -lib_common = $(abs_builddir)/../lib/common/libqpidcommon.la -lib_broker = $(abs_builddir)/../lib/broker/libqpidbroker.la - -gen.mk: Makefile.am - ( \ - for i in $(client_tests); do \ - echo $${i}_SOURCES = $$i.cpp; \ - echo $${i}_LDADD = '$$(lib_client) $$(lib_common) $$(extra_libs)'; \ - done; \ - libs=; \ - for i in $(unit_tests); do \ - libs="$$libs $${i}.la"; \ - echo $${i}_la_SOURCES = $$i.cpp; \ - echo $${i}_la_LIBADD = '$$(lib_common)'; \ - echo $${i}_la_LIBADD += '$$(lib_broker) $$(extra_libs)'; \ - echo $${i}_la_LDFLAGS = "-module -rpath `pwd`"; \ - done; \ - echo "check_LTLIBRARIES =$$libs"; \ - ) \ - > $@-t - mv $@-t $@ diff --git a/qpid/cpp/tests/MessageBuilderTest.cpp b/qpid/cpp/tests/MessageBuilderTest.cpp deleted file mode 100644 index 88e8318832..0000000000 --- a/qpid/cpp/tests/MessageBuilderTest.cpp +++ /dev/null @@ -1,213 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <Exception.h> -#include <BrokerMessage.h> -#include <MessageBuilder.h> -#include <NullMessageStore.h> -#include <Buffer.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <memory> - -using namespace boost; -using namespace qpid::broker; -using namespace qpid::framing; -using namespace qpid::sys; - -class MessageBuilderTest : public CppUnit::TestCase -{ - struct DummyHandler : MessageBuilder::CompletionHandler{ - Message::shared_ptr msg; - - virtual void complete(Message::shared_ptr& _msg){ - msg = _msg; - } - }; - - class TestMessageStore : public NullMessageStore - { - Buffer* header; - Buffer* content; - const u_int32_t contentBufferSize; - - public: - - void stage(Message* const msg) - { - if (msg->getPersistenceId() == 0) { - header = new Buffer(msg->encodedHeaderSize()); - msg->encodeHeader(*header); - content = new Buffer(contentBufferSize); - msg->setPersistenceId(1); - } else { - throw qpid::Exception("Message already staged!"); - } - } - - void appendContent(Message* msg, const string& data) - { - if (msg) { - content->putRawData(data); - } else { - throw qpid::Exception("Invalid message id!"); - } - } - - void destroy(Message* msg) - { - CPPUNIT_ASSERT(msg->getPersistenceId()); - } - - Message::shared_ptr getRestoredMessage() - { - Message::shared_ptr msg(new Message()); - if (header) { - header->flip(); - msg->decodeHeader(*header); - delete header; - header = 0; - if (content) { - content->flip(); - msg->decodeContent(*content); - delete content; - content = 0; - } - } - return msg; - } - - //dont care about any of the other methods: - TestMessageStore(u_int32_t _contentBufferSize) : NullMessageStore(false), header(0), content(0), - contentBufferSize(_contentBufferSize) {} - ~TestMessageStore(){} - }; - - CPPUNIT_TEST_SUITE(MessageBuilderTest); - CPPUNIT_TEST(testHeaderOnly); - CPPUNIT_TEST(test1ContentFrame); - CPPUNIT_TEST(test2ContentFrames); - CPPUNIT_TEST(testStaging); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testHeaderOnly(){ - DummyHandler handler; - MessageBuilder builder(&handler); - - Message::shared_ptr message(new Message(0, "test", "my_routing_key", false, false)); - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - header->setContentSize(0); - - builder.initialise(message); - CPPUNIT_ASSERT(!handler.msg); - builder.setHeader(header); - CPPUNIT_ASSERT(handler.msg); - CPPUNIT_ASSERT_EQUAL(message, handler.msg); - } - - void test1ContentFrame(){ - DummyHandler handler; - MessageBuilder builder(&handler); - - string data1("abcdefg"); - - Message::shared_ptr message(new Message(0, "test", "my_routing_key", false, false)); - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - header->setContentSize(7); - AMQContentBody::shared_ptr part1(new AMQContentBody(data1)); - - builder.initialise(message); - CPPUNIT_ASSERT(!handler.msg); - builder.setHeader(header); - CPPUNIT_ASSERT(!handler.msg); - builder.addContent(part1); - CPPUNIT_ASSERT(handler.msg); - CPPUNIT_ASSERT_EQUAL(message, handler.msg); - } - - void test2ContentFrames(){ - DummyHandler handler; - MessageBuilder builder(&handler); - - string data1("abcdefg"); - string data2("hijklmn"); - - Message::shared_ptr message(new Message(0, "test", "my_routing_key", false, false)); - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - header->setContentSize(14); - AMQContentBody::shared_ptr part1(new AMQContentBody(data1)); - AMQContentBody::shared_ptr part2(new AMQContentBody(data2)); - - builder.initialise(message); - CPPUNIT_ASSERT(!handler.msg); - builder.setHeader(header); - CPPUNIT_ASSERT(!handler.msg); - builder.addContent(part1); - CPPUNIT_ASSERT(!handler.msg); - builder.addContent(part2); - CPPUNIT_ASSERT(handler.msg); - CPPUNIT_ASSERT_EQUAL(message, handler.msg); - } - - void testStaging(){ - //store must be the last thing to be destroyed or destructor - //of Message fails (it uses the store to call destroy if lazy - //loaded content is in use) - TestMessageStore store(14); - { - DummyHandler handler; - MessageBuilder builder(&handler, &store, 5); - - string data1("abcdefg"); - string data2("hijklmn"); - - Message::shared_ptr message(new Message(0, "test", "my_routing_key", false, false)); - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - header->setContentSize(14); - BasicHeaderProperties* properties = dynamic_cast<BasicHeaderProperties*>(header->getProperties()); - properties->setMessageId("MyMessage"); - properties->getHeaders().setString("abc", "xyz"); - - AMQContentBody::shared_ptr part1(new AMQContentBody(data1)); - AMQContentBody::shared_ptr part2(new AMQContentBody(data2)); - - builder.initialise(message); - builder.setHeader(header); - builder.addContent(part1); - builder.addContent(part2); - CPPUNIT_ASSERT(handler.msg); - CPPUNIT_ASSERT_EQUAL(message, handler.msg); - - Message::shared_ptr restored = store.getRestoredMessage(); - CPPUNIT_ASSERT_EQUAL(message->getExchange(), restored->getExchange()); - CPPUNIT_ASSERT_EQUAL(message->getRoutingKey(), restored->getRoutingKey()); - CPPUNIT_ASSERT_EQUAL(message->getHeaderProperties()->getMessageId(), restored->getHeaderProperties()->getMessageId()); - CPPUNIT_ASSERT_EQUAL(message->getHeaderProperties()->getHeaders().getString("abc"), - restored->getHeaderProperties()->getHeaders().getString("abc")); - CPPUNIT_ASSERT_EQUAL((u_int64_t) 14, restored->contentSize()); - } - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(MessageBuilderTest); diff --git a/qpid/cpp/tests/MessageTest.cpp b/qpid/cpp/tests/MessageTest.cpp deleted file mode 100644 index bcf3ad8064..0000000000 --- a/qpid/cpp/tests/MessageTest.cpp +++ /dev/null @@ -1,91 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <BrokerMessage.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <AMQP_HighestVersion.h> - -using namespace boost; -using namespace qpid::broker; -using namespace qpid::framing; - -struct DummyHandler : OutputHandler{ - std::vector<AMQFrame*> frames; - - virtual void send(AMQFrame* frame){ - frames.push_back(frame); - } -}; - -class MessageTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(MessageTest); - CPPUNIT_TEST(testEncodeDecode); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testEncodeDecode() - { - string exchange = "MyExchange"; - string routingKey = "MyRoutingKey"; - string messageId = "MyMessage"; - string data1("abcdefg"); - string data2("hijklmn"); - - Message::shared_ptr msg = Message::shared_ptr(new Message(0, exchange, routingKey, false, false)); - AMQHeaderBody::shared_ptr header(new AMQHeaderBody(BASIC)); - header->setContentSize(14); - AMQContentBody::shared_ptr part1(new AMQContentBody(data1)); - AMQContentBody::shared_ptr part2(new AMQContentBody(data2)); - msg->setHeader(header); - msg->addContent(part1); - msg->addContent(part2); - - msg->getHeaderProperties()->setMessageId(messageId); - msg->getHeaderProperties()->setDeliveryMode(PERSISTENT); - msg->getHeaderProperties()->getHeaders().setString("abc", "xyz"); - - Buffer buffer(msg->encodedSize()); - msg->encode(buffer); - buffer.flip(); - - msg = Message::shared_ptr(new Message(buffer)); - CPPUNIT_ASSERT_EQUAL(exchange, msg->getExchange()); - CPPUNIT_ASSERT_EQUAL(routingKey, msg->getRoutingKey()); - CPPUNIT_ASSERT_EQUAL(messageId, msg->getHeaderProperties()->getMessageId()); - CPPUNIT_ASSERT_EQUAL((u_int8_t) PERSISTENT, msg->getHeaderProperties()->getDeliveryMode()); - CPPUNIT_ASSERT_EQUAL(string("xyz"), msg->getHeaderProperties()->getHeaders().getString("abc")); - CPPUNIT_ASSERT_EQUAL((u_int64_t) 14, msg->contentSize()); - - DummyHandler handler; - msg->deliver(&handler, 0, "ignore", 0, 100, &(qpid::framing::highestProtocolVersion)); - CPPUNIT_ASSERT_EQUAL((size_t) 3, handler.frames.size()); - AMQContentBody::shared_ptr contentBody(dynamic_pointer_cast<AMQContentBody, AMQBody>(handler.frames[2]->getBody())); - CPPUNIT_ASSERT(contentBody); - CPPUNIT_ASSERT_EQUAL(data1 + data2, contentBody->getData()); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(MessageTest); - diff --git a/qpid/cpp/tests/MockSessionHandler.h b/qpid/cpp/tests/MockSessionHandler.h deleted file mode 100644 index aace780ac9..0000000000 --- a/qpid/cpp/tests/MockSessionHandler.h +++ /dev/null @@ -1,113 +0,0 @@ -#ifndef _tests_MockSessionHandler_h -#define _tests_MockSessionHandler_h - -/* - * - * Copyright (c) 2006 The Apache Software Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include "sys/SessionHandler.h" -#include "sys/SessionHandlerFactory.h" -#include "sys/Monitor.h" -#include "framing/ProtocolInitiation.h" - -struct MockSessionHandler : public qpid::sys::SessionHandler { - - MockSessionHandler() : state(START) {} - - ~MockSessionHandler() {} - - void initiated(qpid::framing::ProtocolInitiation* pi) { - qpid::sys::Monitor::ScopedLock l(monitor); - init = *pi; - setState(GOT_INIT); - } - - void received(qpid::framing::AMQFrame* framep) { - qpid::sys::Monitor::ScopedLock l(monitor); - frame = *framep; - setState(GOT_FRAME); - } - - qpid::framing::ProtocolInitiation waitForProtocolInit() { - waitFor(GOT_INIT); - return init; - } - - qpid::framing::AMQFrame waitForFrame() { - waitFor(GOT_FRAME); - return frame; - } - - void waitForClosed() { - waitFor(CLOSED); - } - - void closed() { - qpid::sys::Monitor::ScopedLock l(monitor); - setState(CLOSED); - } - - void idleOut() {} - void idleIn() {} - - private: - typedef enum { START, GOT_INIT, GOT_FRAME, CLOSED } State; - - void setState(State s) { - state = s; - monitor.notify(); - } - - void waitFor(State s) { - qpid::sys::Monitor::ScopedLock l(monitor); - qpid::sys::Time deadline = qpid::sys::now() + 10*qpid::sys::TIME_SEC; - while (state != s) - CPPUNIT_ASSERT(monitor.wait(deadline)); - } - - qpid::sys::Monitor monitor; - State state; - qpid::framing::ProtocolInitiation init; - qpid::framing::AMQFrame frame; -}; - - -struct MockSessionHandlerFactory : public qpid::sys::SessionHandlerFactory { - MockSessionHandlerFactory() : handler(0) {} - - qpid::sys::SessionHandler* create(qpid::sys::SessionContext*) { - qpid::sys::Monitor::ScopedLock lock(monitor); - handler = new MockSessionHandler(); - monitor.notifyAll(); - return handler; - } - - void waitForHandler() { - qpid::sys::Monitor::ScopedLock lock(monitor); - qpid::sys::Time deadline = - qpid::sys::now() + 500 * qpid::sys::TIME_SEC; - while (handler == 0) - CPPUNIT_ASSERT(monitor.wait(deadline)); - } - - MockSessionHandler* handler; - qpid::sys::Monitor monitor; -}; - - - -#endif /*!_tests_MockSessionHandler_h*/ diff --git a/qpid/cpp/tests/QueuePolicyTest.cpp b/qpid/cpp/tests/QueuePolicyTest.cpp deleted file mode 100644 index 0ae0d2f7bc..0000000000 --- a/qpid/cpp/tests/QueuePolicyTest.cpp +++ /dev/null @@ -1,89 +0,0 @@ - /* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <QueuePolicy.h> -#include <qpid_test_plugin.h> - -using namespace qpid::broker; -using namespace qpid::framing; - -class QueuePolicyTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(QueuePolicyTest); - CPPUNIT_TEST(testCount); - CPPUNIT_TEST(testSize); - CPPUNIT_TEST(testBoth); - CPPUNIT_TEST(testSettings); - CPPUNIT_TEST_SUITE_END(); - - public: - void testCount(){ - QueuePolicy policy(5, 0); - CPPUNIT_ASSERT(!policy.limitExceeded()); - for (int i = 0; i < 5; i++) policy.enqueued(10); - CPPUNIT_ASSERT_EQUAL((u_int64_t) 0, policy.getMaxSize()); - CPPUNIT_ASSERT_EQUAL((u_int32_t) 5, policy.getMaxCount()); - CPPUNIT_ASSERT(!policy.limitExceeded()); - policy.enqueued(10); - CPPUNIT_ASSERT(policy.limitExceeded()); - policy.dequeued(10); - CPPUNIT_ASSERT(!policy.limitExceeded()); - policy.enqueued(10); - CPPUNIT_ASSERT(policy.limitExceeded()); - } - - void testSize(){ - QueuePolicy policy(0, 50); - for (int i = 0; i < 5; i++) policy.enqueued(10); - CPPUNIT_ASSERT(!policy.limitExceeded()); - policy.enqueued(10); - CPPUNIT_ASSERT(policy.limitExceeded()); - policy.dequeued(10); - CPPUNIT_ASSERT(!policy.limitExceeded()); - policy.enqueued(10); - CPPUNIT_ASSERT(policy.limitExceeded()); - } - - void testBoth(){ - QueuePolicy policy(5, 50); - for (int i = 0; i < 5; i++) policy.enqueued(11); - CPPUNIT_ASSERT(policy.limitExceeded()); - policy.dequeued(20); - CPPUNIT_ASSERT(!policy.limitExceeded());//fails - policy.enqueued(5); - policy.enqueued(10); - CPPUNIT_ASSERT(policy.limitExceeded()); - } - - void testSettings(){ - //test reading and writing the policy from/to field table - FieldTable settings; - QueuePolicy a(101, 303); - a.update(settings); - QueuePolicy b(settings); - CPPUNIT_ASSERT_EQUAL(a.getMaxCount(), b.getMaxCount()); - CPPUNIT_ASSERT_EQUAL(a.getMaxSize(), b.getMaxSize()); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(QueuePolicyTest); - diff --git a/qpid/cpp/tests/QueueRegistryTest.cpp b/qpid/cpp/tests/QueueRegistryTest.cpp deleted file mode 100644 index 3926d56292..0000000000 --- a/qpid/cpp/tests/QueueRegistryTest.cpp +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -#include <QueueRegistry.h> -#include <qpid_test_plugin.h> -#include <string> - -using namespace qpid::broker; - -class QueueRegistryTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(QueueRegistryTest); - CPPUNIT_TEST(testDeclare); - CPPUNIT_TEST(testDeclareTmp); - CPPUNIT_TEST(testFind); - CPPUNIT_TEST(testDestroy); - CPPUNIT_TEST_SUITE_END(); - - private: - std::string foo, bar; - QueueRegistry reg; - std::pair<Queue::shared_ptr, bool> qc; - - public: - void setUp() { - foo = "foo"; - bar = "bar"; - } - - void testDeclare() { - qc = reg.declare(foo, false, 0, 0); - Queue::shared_ptr q = qc.first; - CPPUNIT_ASSERT(q); - CPPUNIT_ASSERT(qc.second); // New queue - CPPUNIT_ASSERT_EQUAL(foo, q->getName()); - - qc = reg.declare(foo, false, 0, 0); - CPPUNIT_ASSERT_EQUAL(q, qc.first); - CPPUNIT_ASSERT(!qc.second); - - qc = reg.declare(bar, false, 0, 0); - q = qc.first; - CPPUNIT_ASSERT(q); - CPPUNIT_ASSERT_EQUAL(true, qc.second); - CPPUNIT_ASSERT_EQUAL(bar, q->getName()); - } - - void testDeclareTmp() - { - qc = reg.declare(std::string(), false, 0, 0); - CPPUNIT_ASSERT(qc.second); - CPPUNIT_ASSERT_EQUAL(std::string("tmp_1"), qc.first->getName()); - } - - void testFind() { - CPPUNIT_ASSERT(reg.find(foo) == 0); - - reg.declare(foo, false, 0, 0); - reg.declare(bar, false, 0, 0); - Queue::shared_ptr q = reg.find(bar); - CPPUNIT_ASSERT(q); - CPPUNIT_ASSERT_EQUAL(bar, q->getName()); - } - - void testDestroy() { - qc = reg.declare(foo, false, 0, 0); - reg.destroy(foo); - // Queue is gone from the registry. - CPPUNIT_ASSERT(reg.find(foo) == 0); - // Queue is not actually destroyed till we drop our reference. - CPPUNIT_ASSERT_EQUAL(foo, qc.first->getName()); - // We shoud be the only reference. - CPPUNIT_ASSERT_EQUAL(1L, qc.first.use_count()); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(QueueRegistryTest); diff --git a/qpid/cpp/tests/QueueTest.cpp b/qpid/cpp/tests/QueueTest.cpp deleted file mode 100644 index 9d655781c1..0000000000 --- a/qpid/cpp/tests/QueueTest.cpp +++ /dev/null @@ -1,179 +0,0 @@ - /* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <BrokerQueue.h> -#include <QueueRegistry.h> -#include <qpid_test_plugin.h> -#include <iostream> - -using namespace qpid::broker; -using namespace qpid::sys; - - -class TestBinding : public virtual Binding{ - bool cancelled; - -public: - TestBinding(); - virtual void cancel(); - bool isCancelled(); -}; - -class TestConsumer : public virtual Consumer{ -public: - Message::shared_ptr last; - - virtual bool deliver(Message::shared_ptr& msg); -}; - - -class QueueTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(QueueTest); - CPPUNIT_TEST(testConsumers); - CPPUNIT_TEST(testBinding); - CPPUNIT_TEST(testRegistry); - CPPUNIT_TEST(testDequeue); - CPPUNIT_TEST_SUITE_END(); - - public: - void testConsumers(){ - Queue::shared_ptr queue(new Queue("my_queue", true)); - - //Test adding consumers: - TestConsumer c1; - TestConsumer c2; - queue->consume(&c1); - queue->consume(&c2); - - CPPUNIT_ASSERT_EQUAL(u_int32_t(2), queue->getConsumerCount()); - - //Test basic delivery: - Message::shared_ptr msg1 = Message::shared_ptr(new Message(0, "e", "A", true, true)); - Message::shared_ptr msg2 = Message::shared_ptr(new Message(0, "e", "B", true, true)); - Message::shared_ptr msg3 = Message::shared_ptr(new Message(0, "e", "C", true, true)); - - queue->deliver(msg1); - CPPUNIT_ASSERT_EQUAL(msg1.get(), c1.last.get()); - - queue->deliver(msg2); - CPPUNIT_ASSERT_EQUAL(msg2.get(), c2.last.get()); - - queue->deliver(msg3); - CPPUNIT_ASSERT_EQUAL(msg3.get(), c1.last.get()); - - //Test cancellation: - queue->cancel(&c1); - CPPUNIT_ASSERT_EQUAL(u_int32_t(1), queue->getConsumerCount()); - queue->cancel(&c2); - CPPUNIT_ASSERT_EQUAL(u_int32_t(0), queue->getConsumerCount()); - } - - void testBinding(){ - Queue::shared_ptr queue(new Queue("my_queue", true)); - //Test bindings: - TestBinding a; - TestBinding b; - queue->bound(&a); - queue->bound(&b); - - queue.reset(); - - CPPUNIT_ASSERT(a.isCancelled()); - CPPUNIT_ASSERT(b.isCancelled()); - } - - void testRegistry(){ - //Test use of queues in registry: - QueueRegistry registry; - registry.declare("queue1", true, true); - registry.declare("queue2", true, true); - registry.declare("queue3", true, true); - - CPPUNIT_ASSERT(registry.find("queue1")); - CPPUNIT_ASSERT(registry.find("queue2")); - CPPUNIT_ASSERT(registry.find("queue3")); - - registry.destroy("queue1"); - registry.destroy("queue2"); - registry.destroy("queue3"); - - CPPUNIT_ASSERT(!registry.find("queue1")); - CPPUNIT_ASSERT(!registry.find("queue2")); - CPPUNIT_ASSERT(!registry.find("queue3")); - } - - void testDequeue(){ - Queue::shared_ptr queue(new Queue("my_queue", true)); - - Message::shared_ptr msg1 = Message::shared_ptr(new Message(0, "e", "A", true, true)); - Message::shared_ptr msg2 = Message::shared_ptr(new Message(0, "e", "B", true, true)); - Message::shared_ptr msg3 = Message::shared_ptr(new Message(0, "e", "C", true, true)); - Message::shared_ptr received; - - queue->deliver(msg1); - queue->deliver(msg2); - queue->deliver(msg3); - - CPPUNIT_ASSERT_EQUAL(u_int32_t(3), queue->getMessageCount()); - - received = queue->dequeue(); - CPPUNIT_ASSERT_EQUAL(msg1.get(), received.get()); - CPPUNIT_ASSERT_EQUAL(u_int32_t(2), queue->getMessageCount()); - - received = queue->dequeue(); - CPPUNIT_ASSERT_EQUAL(msg2.get(), received.get()); - CPPUNIT_ASSERT_EQUAL(u_int32_t(1), queue->getMessageCount()); - - TestConsumer consumer; - queue->consume(&consumer); - queue->dispatch(); - CPPUNIT_ASSERT_EQUAL(msg3.get(), consumer.last.get()); - CPPUNIT_ASSERT_EQUAL(u_int32_t(0), queue->getMessageCount()); - - received = queue->dequeue(); - CPPUNIT_ASSERT(!received); - CPPUNIT_ASSERT_EQUAL(u_int32_t(0), queue->getMessageCount()); - - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(QueueTest); - -//TestBinding -TestBinding::TestBinding() : cancelled(false) {} - -void TestBinding::cancel(){ - CPPUNIT_ASSERT(!cancelled); - cancelled = true; -} - -bool TestBinding::isCancelled(){ - return cancelled; -} - -//TestConsumer -bool TestConsumer::deliver(Message::shared_ptr& msg){ - last = msg; - return true; -} - diff --git a/qpid/cpp/tests/TopicExchangeTest.cpp b/qpid/cpp/tests/TopicExchangeTest.cpp deleted file mode 100644 index 4ba9cdd6e5..0000000000 --- a/qpid/cpp/tests/TopicExchangeTest.cpp +++ /dev/null @@ -1,200 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -#include <TopicExchange.h> -#include <qpid_test_plugin.h> - -using namespace qpid::broker; - -Tokens makeTokens(char** begin, char** end) -{ - Tokens t; - t.insert(t.end(), begin, end); - return t; -} - -// Calculate size of an array. -#define LEN(a) (sizeof(a)/sizeof(a[0])) - -// Convert array to token vector -#define TOKENS(a) makeTokens(a, a + LEN(a)) - -// Allow CPPUNIT_EQUALS to print a Tokens. -CppUnit::OStringStream& operator <<(CppUnit::OStringStream& out, const Tokens& v) -{ - out << "[ "; - for (Tokens::const_iterator i = v.begin(); - i != v.end(); ++i) - { - out << '"' << *i << '"' << (i+1 == v.end() ? "]" : ", "); - } - return out; -} - - -class TokensTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(TokensTest); - CPPUNIT_TEST(testTokens); - CPPUNIT_TEST_SUITE_END(); - - public: - void testTokens() - { - Tokens tokens("hello.world"); - char* expect[] = {"hello", "world"}; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect), tokens); - - tokens = "a.b.c"; - char* expect2[] = { "a", "b", "c" }; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect2), tokens); - - tokens = ""; - CPPUNIT_ASSERT(tokens.empty()); - - tokens = "x"; - char* expect3[] = { "x" }; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect3), tokens); - - tokens = (".x"); - char* expect4[] = { "", "x" }; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect4), tokens); - - tokens = ("x."); - char* expect5[] = { "x", "" }; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect5), tokens); - - tokens = ("."); - char* expect6[] = { "", "" }; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect6), tokens); - - tokens = (".."); - char* expect7[] = { "", "", "" }; - CPPUNIT_ASSERT_EQUAL(TOKENS(expect7), tokens); - } - -}; - -#define ASSERT_NORMALIZED(expect, pattern) \ - CPPUNIT_ASSERT_EQUAL(Tokens(expect), static_cast<Tokens>(TopicPattern(pattern))) -class TopicPatternTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(TopicPatternTest); - CPPUNIT_TEST(testNormalize); - CPPUNIT_TEST(testPlain); - CPPUNIT_TEST(testStar); - CPPUNIT_TEST(testHash); - CPPUNIT_TEST(testMixed); - CPPUNIT_TEST(testCombo); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testNormalize() - { - CPPUNIT_ASSERT(TopicPattern("").empty()); - ASSERT_NORMALIZED("a.b.c", "a.b.c"); - ASSERT_NORMALIZED("a.*.c", "a.*.c"); - ASSERT_NORMALIZED("#", "#"); - ASSERT_NORMALIZED("#", "#.#.#.#"); - ASSERT_NORMALIZED("*.*.*.#", "#.*.#.*.#.#.*"); - ASSERT_NORMALIZED("a.*.*.*.#", "a.*.#.*.#.*.#"); - ASSERT_NORMALIZED("a.*.*.*.#", "a.*.#.*.#.*"); - } - - void testPlain() { - TopicPattern p("ab.cd.e"); - CPPUNIT_ASSERT(p.match("ab.cd.e")); - CPPUNIT_ASSERT(!p.match("abx.cd.e")); - CPPUNIT_ASSERT(!p.match("ab.cd")); - CPPUNIT_ASSERT(!p.match("ab.cd..e.")); - CPPUNIT_ASSERT(!p.match("ab.cd.e.")); - CPPUNIT_ASSERT(!p.match(".ab.cd.e")); - - p = ""; - CPPUNIT_ASSERT(p.match("")); - - p = "."; - CPPUNIT_ASSERT(p.match(".")); - } - - - void testStar() - { - TopicPattern p("a.*.b"); - CPPUNIT_ASSERT(p.match("a.xx.b")); - CPPUNIT_ASSERT(!p.match("a.b")); - - p = "*.x"; - CPPUNIT_ASSERT(p.match("y.x")); - CPPUNIT_ASSERT(p.match(".x")); - CPPUNIT_ASSERT(!p.match("x")); - - p = "x.x.*"; - CPPUNIT_ASSERT(p.match("x.x.y")); - CPPUNIT_ASSERT(p.match("x.x.")); - CPPUNIT_ASSERT(!p.match("x.x")); - CPPUNIT_ASSERT(!p.match("q.x.y")); - } - - void testHash() - { - TopicPattern p("a.#.b"); - CPPUNIT_ASSERT(p.match("a.b")); - CPPUNIT_ASSERT(p.match("a.x.b")); - CPPUNIT_ASSERT(p.match("a..x.y.zz.b")); - CPPUNIT_ASSERT(!p.match("a.b.")); - CPPUNIT_ASSERT(!p.match("q.x.b")); - - p = "a.#"; - CPPUNIT_ASSERT(p.match("a")); - CPPUNIT_ASSERT(p.match("a.b")); - CPPUNIT_ASSERT(p.match("a.b.c")); - - p = "#.a"; - CPPUNIT_ASSERT(p.match("a")); - CPPUNIT_ASSERT(p.match("x.y.a")); - } - - void testMixed() - { - TopicPattern p("*.x.#.y"); - CPPUNIT_ASSERT(p.match("a.x.y")); - CPPUNIT_ASSERT(p.match("a.x.p.qq.y")); - CPPUNIT_ASSERT(!p.match("a.a.x.y")); - CPPUNIT_ASSERT(!p.match("aa.x.b.c")); - - p = "a.#.b.*"; - CPPUNIT_ASSERT(p.match("a.b.x")); - CPPUNIT_ASSERT(p.match("a.x.x.x.b.x")); - } - - void testCombo() { - TopicPattern p("*.#.#.*.*.#"); - CPPUNIT_ASSERT(p.match("x.y.z")); - CPPUNIT_ASSERT(p.match("x.y.z.a.b.c")); - CPPUNIT_ASSERT(!p.match("x.y")); - CPPUNIT_ASSERT(!p.match("x")); - } -}; - - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(TopicPatternTest); -CPPUNIT_TEST_SUITE_REGISTRATION(TokensTest); diff --git a/qpid/cpp/tests/TxAckTest.cpp b/qpid/cpp/tests/TxAckTest.cpp deleted file mode 100644 index 7d5b8a838a..0000000000 --- a/qpid/cpp/tests/TxAckTest.cpp +++ /dev/null @@ -1,122 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <NullMessageStore.h> -#include <RecoveryManager.h> -#include <TxAck.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <list> -#include <vector> - -using std::list; -using std::vector; -using namespace qpid::broker; -using namespace qpid::framing; - -class TxAckTest : public CppUnit::TestCase -{ - - class TestMessageStore : public NullMessageStore - { - public: - vector< std::pair<Message*, const string*> > dequeued; - - void dequeue(TransactionContext*, Message* const msg, const Queue& /*queue*/, const string * const xid) - { - dequeued.push_back(std::pair<Message*, const string*>(msg, xid)); - } - - TestMessageStore() : NullMessageStore(false) {} - ~TestMessageStore(){} - }; - - CPPUNIT_TEST_SUITE(TxAckTest); - CPPUNIT_TEST(testPrepare2pc); - CPPUNIT_TEST(testPrepare); - CPPUNIT_TEST(testCommit); - CPPUNIT_TEST_SUITE_END(); - - - AccumulatedAck acked; - TestMessageStore store; - Queue::shared_ptr queue; - vector<Message::shared_ptr> messages; - list<DeliveryRecord> deliveries; - TxAck op; - std::string xid; - - -public: - - TxAckTest() : acked(0), queue(new Queue("my_queue", false, &store, 0)), op(acked, deliveries, &xid) - { - for(int i = 0; i < 10; i++){ - Message::shared_ptr msg(new Message(0, "exchange", "routing_key", false, false)); - msg->setHeader(AMQHeaderBody::shared_ptr(new AMQHeaderBody(BASIC))); - msg->getHeaderProperties()->setDeliveryMode(PERSISTENT); - messages.push_back(msg); - deliveries.push_back(DeliveryRecord(msg, queue, "xyz", (i+1))); - } - - //assume msgs 1-5, 7 and 9 are all acked (i.e. 6, 8 & 10 are not) - acked.range = 5; - acked.individual.push_back(7); - acked.individual.push_back(9); - } - - void testPrepare() - { - //ensure acked messages are discarded, i.e. dequeued from store - op.prepare(0); - CPPUNIT_ASSERT_EQUAL((size_t) 7, store.dequeued.size()); - CPPUNIT_ASSERT_EQUAL((size_t) 10, deliveries.size()); - int dequeued[] = {0, 1, 2, 3, 4, 6, 8}; - for (int i = 0; i < 7; i++) { - CPPUNIT_ASSERT_EQUAL(messages[dequeued[i]].get(), store.dequeued[i].first); - } - } - - void testPrepare2pc() - { - xid = "abcdefg"; - testPrepare(); - const string expected(xid); - for (int i = 0; i < 7; i++) { - CPPUNIT_ASSERT_EQUAL(expected, *store.dequeued[i].second); - } - } - - void testCommit() - { - //emsure acked messages are removed from list - op.commit(); - CPPUNIT_ASSERT_EQUAL((size_t) 3, deliveries.size()); - list<DeliveryRecord>::iterator i = deliveries.begin(); - CPPUNIT_ASSERT(i->matches(6));//msg 6 - CPPUNIT_ASSERT((++i)->matches(8));//msg 8 - CPPUNIT_ASSERT((++i)->matches(10));//msg 10 - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(TxAckTest); - diff --git a/qpid/cpp/tests/TxBufferTest.cpp b/qpid/cpp/tests/TxBufferTest.cpp deleted file mode 100644 index 0573ad15b0..0000000000 --- a/qpid/cpp/tests/TxBufferTest.cpp +++ /dev/null @@ -1,266 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <TxBuffer.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <vector> - -using namespace qpid::broker; - -template <class T> void assertEqualVector(std::vector<T>& expected, std::vector<T>& actual){ - unsigned int i = 0; - while(i < expected.size() && i < actual.size()){ - CPPUNIT_ASSERT_EQUAL(expected[i], actual[i]); - i++; - } - CPPUNIT_ASSERT(i == expected.size()); - CPPUNIT_ASSERT(i == actual.size()); -} - -class TxBufferTest : public CppUnit::TestCase -{ - class MockTxOp : public TxOp{ - enum op_codes {PREPARE=2, COMMIT=4, ROLLBACK=8}; - std::vector<int> expected; - std::vector<int> actual; - bool failOnPrepare; - public: - MockTxOp() : failOnPrepare(false) {} - MockTxOp(bool _failOnPrepare) : failOnPrepare(_failOnPrepare) {} - - bool prepare(TransactionContext*) throw(){ - actual.push_back(PREPARE); - return !failOnPrepare; - } - void commit() throw(){ - actual.push_back(COMMIT); - } - void rollback() throw(){ - actual.push_back(ROLLBACK); - } - MockTxOp& expectPrepare(){ - expected.push_back(PREPARE); - return *this; - } - MockTxOp& expectCommit(){ - expected.push_back(COMMIT); - return *this; - } - MockTxOp& expectRollback(){ - expected.push_back(ROLLBACK); - return *this; - } - void check(){ - assertEqualVector(expected, actual); - } - ~MockTxOp(){} - }; - - class MockTransactionalStore : public TransactionalStore{ - enum op_codes {BEGIN=2, COMMIT=4, ABORT=8}; - std::vector<int> expected; - std::vector<int> actual; - - enum states {OPEN = 1, COMMITTED = 2, ABORTED = 3}; - int state; - - class TestTransactionContext : public TransactionContext{ - MockTransactionalStore* store; - public: - TestTransactionContext(MockTransactionalStore* _store) : store(_store) {} - void commit(){ - if(store->state != OPEN) throw "txn already completed"; - store->state = COMMITTED; - } - - void abort(){ - if(store->state != OPEN) throw "txn already completed"; - store->state = ABORTED; - } - ~TestTransactionContext(){} - }; - - - public: - MockTransactionalStore() : state(OPEN){} - - std::auto_ptr<TransactionContext> begin(){ - actual.push_back(BEGIN); - std::auto_ptr<TransactionContext> txn(new TestTransactionContext(this)); - return txn; - } - void commit(TransactionContext* ctxt){ - actual.push_back(COMMIT); - TestTransactionContext* txn(dynamic_cast<TestTransactionContext*>(ctxt)); - CPPUNIT_ASSERT(txn); - txn->commit(); - } - void abort(TransactionContext* ctxt){ - actual.push_back(ABORT); - TestTransactionContext* txn(dynamic_cast<TestTransactionContext*>(ctxt)); - CPPUNIT_ASSERT(txn); - txn->abort(); - } - MockTransactionalStore& expectBegin(){ - expected.push_back(BEGIN); - return *this; - } - MockTransactionalStore& expectCommit(){ - expected.push_back(COMMIT); - return *this; - } - MockTransactionalStore& expectAbort(){ - expected.push_back(ABORT); - return *this; - } - void check(){ - assertEqualVector(expected, actual); - } - - bool isCommitted(){ - return state == COMMITTED; - } - - bool isAborted(){ - return state == ABORTED; - } - - bool isOpen(){ - return state == OPEN; - } - ~MockTransactionalStore(){} - }; - - CPPUNIT_TEST_SUITE(TxBufferTest); - CPPUNIT_TEST(testPrepareAndCommit); - CPPUNIT_TEST(testFailOnPrepare); - CPPUNIT_TEST(testRollback); - CPPUNIT_TEST(testBufferIsClearedAfterRollback); - CPPUNIT_TEST(testBufferIsClearedAfterCommit); - CPPUNIT_TEST_SUITE_END(); - - public: - - void testPrepareAndCommit(){ - MockTransactionalStore store; - store.expectBegin().expectCommit(); - - MockTxOp opA; - opA.expectPrepare().expectCommit(); - MockTxOp opB; - opB.expectPrepare().expectPrepare().expectCommit().expectCommit();//opB enlisted twice to test reative order - MockTxOp opC; - opC.expectPrepare().expectCommit(); - - TxBuffer buffer; - buffer.enlist(&opA); - buffer.enlist(&opB); - buffer.enlist(&opB);//opB enlisted twice - buffer.enlist(&opC); - - CPPUNIT_ASSERT(buffer.prepare(&store)); - buffer.commit(); - store.check(); - CPPUNIT_ASSERT(store.isCommitted()); - opA.check(); - opB.check(); - opC.check(); - } - - void testFailOnPrepare(){ - MockTransactionalStore store; - store.expectBegin().expectAbort(); - - MockTxOp opA; - opA.expectPrepare(); - MockTxOp opB(true); - opB.expectPrepare(); - MockTxOp opC;//will never get prepare as b will fail - - TxBuffer buffer; - buffer.enlist(&opA); - buffer.enlist(&opB); - buffer.enlist(&opC); - - CPPUNIT_ASSERT(!buffer.prepare(&store)); - store.check(); - CPPUNIT_ASSERT(store.isAborted()); - opA.check(); - opB.check(); - opC.check(); - } - - void testRollback(){ - MockTxOp opA; - opA.expectRollback(); - MockTxOp opB(true); - opB.expectRollback(); - MockTxOp opC; - opC.expectRollback(); - - TxBuffer buffer; - buffer.enlist(&opA); - buffer.enlist(&opB); - buffer.enlist(&opC); - - buffer.rollback(); - opA.check(); - opB.check(); - opC.check(); - } - - void testBufferIsClearedAfterRollback(){ - MockTxOp opA; - opA.expectRollback(); - MockTxOp opB; - opB.expectRollback(); - - TxBuffer buffer; - buffer.enlist(&opA); - buffer.enlist(&opB); - - buffer.rollback(); - buffer.commit();//second call should not reach ops - opA.check(); - opB.check(); - } - - void testBufferIsClearedAfterCommit(){ - MockTxOp opA; - opA.expectCommit(); - MockTxOp opB; - opB.expectCommit(); - - TxBuffer buffer; - buffer.enlist(&opA); - buffer.enlist(&opB); - - buffer.commit(); - buffer.rollback();//second call should not reach ops - opA.check(); - opB.check(); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(TxBufferTest); - diff --git a/qpid/cpp/tests/TxPublishTest.cpp b/qpid/cpp/tests/TxPublishTest.cpp deleted file mode 100644 index 3542e08f45..0000000000 --- a/qpid/cpp/tests/TxPublishTest.cpp +++ /dev/null @@ -1,122 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include <NullMessageStore.h> -#include <RecoveryManager.h> -#include <TxPublish.h> -#include <qpid_test_plugin.h> -#include <iostream> -#include <list> -#include <vector> - -using std::list; -using std::pair; -using std::vector; -using namespace qpid::broker; -using namespace qpid::framing; - -class TxPublishTest : public CppUnit::TestCase -{ - struct Triple - { - string first; - Message* second; - const string* third; - }; - - class TestMessageStore : public NullMessageStore - { - public: - vector<Triple> enqueued; - - void enqueue(TransactionContext*, Message* const msg, const Queue& queue, const string * const xid) - { - Triple args = {queue.getName(), msg, xid}; - enqueued.push_back(args); - } - - //dont care about any of the other methods: - TestMessageStore() : NullMessageStore(false) {} - ~TestMessageStore(){} - }; - - CPPUNIT_TEST_SUITE(TxPublishTest); - CPPUNIT_TEST(testPrepare); - CPPUNIT_TEST(testPrepare2pc); - CPPUNIT_TEST(testCommit); - CPPUNIT_TEST_SUITE_END(); - - - TestMessageStore store; - Queue::shared_ptr queue1; - Queue::shared_ptr queue2; - Message::shared_ptr const msg; - TxPublish op; - string xid; - -public: - - TxPublishTest() : queue1(new Queue("queue1", false, &store, 0)), - queue2(new Queue("queue2", false, &store, 0)), - msg(new Message(0, "exchange", "routing_key", false, false)), - op(msg, &xid) - { - msg->setHeader(AMQHeaderBody::shared_ptr(new AMQHeaderBody(BASIC))); - msg->getHeaderProperties()->setDeliveryMode(PERSISTENT); - op.deliverTo(queue1); - op.deliverTo(queue2); - } - - void testPrepare() - { - //ensure messages are enqueued in store - op.prepare(0); - CPPUNIT_ASSERT_EQUAL((size_t) 2, store.enqueued.size()); - CPPUNIT_ASSERT_EQUAL(string("queue1"), store.enqueued[0].first); - CPPUNIT_ASSERT_EQUAL(msg.get(), store.enqueued[0].second); - CPPUNIT_ASSERT_EQUAL(string("queue2"), store.enqueued[1].first); - CPPUNIT_ASSERT_EQUAL(msg.get(), store.enqueued[1].second); - } - - void testPrepare2pc() - { - xid = "abcde"; - const string expected(xid); - testPrepare(); - CPPUNIT_ASSERT_EQUAL(expected, *store.enqueued[0].third); - CPPUNIT_ASSERT_EQUAL(expected, *store.enqueued[1].third); - } - - void testCommit() - { - //ensure messages are delivered to queue - op.commit(); - CPPUNIT_ASSERT_EQUAL((u_int32_t) 1, queue1->getMessageCount()); - CPPUNIT_ASSERT_EQUAL(msg, queue1->dequeue()); - - CPPUNIT_ASSERT_EQUAL((u_int32_t) 1, queue2->getMessageCount()); - CPPUNIT_ASSERT_EQUAL(msg, queue2->dequeue()); - } -}; - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(TxPublishTest); - diff --git a/qpid/cpp/tests/ValueTest.cpp b/qpid/cpp/tests/ValueTest.cpp deleted file mode 100644 index a3f9ec2541..0000000000 --- a/qpid/cpp/tests/ValueTest.cpp +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -#include <Value.h> -#include <qpid_test_plugin.h> - -using namespace qpid::framing; - - -class ValueTest : public CppUnit::TestCase -{ - CPPUNIT_TEST_SUITE(ValueTest); - CPPUNIT_TEST(testStringValueEquals); - CPPUNIT_TEST(testIntegerValueEquals); - CPPUNIT_TEST(testDecimalValueEquals); - CPPUNIT_TEST(testFieldTableValueEquals); - CPPUNIT_TEST_SUITE_END(); - - StringValue s; - IntegerValue i; - DecimalValue d; - FieldTableValue ft; - EmptyValue e; - - public: - ValueTest() : - s("abc"), - i(42), - d(1234,2) - - { - ft.getValue().setString("foo", "FOO"); - ft.getValue().setInt("magic", 7); - } - - void testStringValueEquals() - { - - CPPUNIT_ASSERT(StringValue("abc") == s); - CPPUNIT_ASSERT(s != StringValue("foo")); - CPPUNIT_ASSERT(s != e); - CPPUNIT_ASSERT(e != d); - CPPUNIT_ASSERT(e != ft); - } - - void testIntegerValueEquals() - { - CPPUNIT_ASSERT(IntegerValue(42) == i); - CPPUNIT_ASSERT(IntegerValue(5) != i); - CPPUNIT_ASSERT(i != e); - CPPUNIT_ASSERT(i != d); - } - - void testDecimalValueEquals() - { - CPPUNIT_ASSERT(DecimalValue(1234, 2) == d); - CPPUNIT_ASSERT(DecimalValue(12345, 2) != d); - CPPUNIT_ASSERT(DecimalValue(1234, 3) != d); - CPPUNIT_ASSERT(d != s); - } - - - void testFieldTableValueEquals() - { - CPPUNIT_ASSERT_EQUAL(std::string("FOO"), - ft.getValue().getString("foo")); - CPPUNIT_ASSERT_EQUAL(7, ft.getValue().getInt("magic")); - - FieldTableValue f2; - CPPUNIT_ASSERT(ft != f2); - f2.getValue().setString("foo", "FOO"); - CPPUNIT_ASSERT(ft != f2); - f2.getValue().setInt("magic", 7); - CPPUNIT_ASSERT_EQUAL(ft,f2); - CPPUNIT_ASSERT(ft == f2); - f2.getValue().setString("foo", "BAR"); - CPPUNIT_ASSERT(ft != f2); - CPPUNIT_ASSERT(ft != i); - } - -}; - - -// Make this test suite a plugin. -CPPUNIT_PLUGIN_IMPLEMENT(); -CPPUNIT_TEST_SUITE_REGISTRATION(ValueTest); - diff --git a/qpid/cpp/tests/broker b/qpid/cpp/tests/broker deleted file mode 100755 index c49e967466..0000000000 --- a/qpid/cpp/tests/broker +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -. `dirname $0`/env - -brokerpid() { - netstat -tpl 2> /dev/null | awk '/amqp/ {print gensub("/.*$","","g",$7) }' -} - -killbroker () { - PID=`brokerpid` - if [ -n "$PID" ] ; then kill $PID ; fi - for ((i=5;i--;)) { - if [ -z "`brokerpid`" ] ; then exit 0 ; fi - sleep 1 - } - echo "Broker `brokerpid` refuses to die." -} - -waitbroker () { - while [ -z `brokerpid` ] ; do sleep 1 ; done -} - -startbroker() { - case $1 in - j) - export AMQJ_LOGGING_LEVEL=fatal - export JDPA_OPTS= - export QPID_OPTS=-Xmx1024M - export debug=1 - CMD="qpid-server" - qpid-run -run:print-command # Show the command line. - ;; - c) CMD=qpidd ;; - esac - nohup $CMD > /dev/null 2>&1 & - waitbroker - echo Broker started: $CMD -} - - -case $1 in - j|c) startbroker $1 ;; - stop|kill) killbroker ;; - wait) waitbroker ;; - pid) brokerpid ;; -esac diff --git a/qpid/cpp/tests/client_test.cpp b/qpid/cpp/tests/client_test.cpp deleted file mode 100644 index f869cf4860..0000000000 --- a/qpid/cpp/tests/client_test.cpp +++ /dev/null @@ -1,135 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -/** - * This file provides a simple test (and example) of basic - * functionality including declaring an exchange and a queue, binding - * these together, publishing a message and receiving that message - * asynchronously. - */ - -#include <iostream> - -#include <QpidError.h> -#include <ClientChannel.h> -#include <Connection.h> -#include <ClientMessage.h> -#include <MessageListener.h> -#include <sys/Monitor.h> -#include <FieldTable.h> - -using namespace qpid::client; -using namespace qpid::sys; -using std::string; - -/** - * A simple message listener implementation that prints out the - * message content then notifies a montitor allowing the test to - * complete. - */ -class SimpleListener : public virtual MessageListener{ - Monitor* monitor; - -public: - inline SimpleListener(Monitor* _monitor) : monitor(_monitor){} - - inline virtual void received(Message& msg){ - std::cout << "Received message " << msg.getData() << std::endl; - monitor->notify(); - } -}; - -int main(int argc, char**) -{ - try{ - //Use a custom exchange - Exchange exchange("MyExchange", Exchange::TOPIC_EXCHANGE); - //Use a named, temporary queue - Queue queue("MyQueue", true); - - - Connection con(argc > 1); - string host("localhost"); - con.open(host, 5672, "guest", "guest", "/test"); - std::cout << "Opened connection." << std::endl; - - //Create and open a channel on the connection through which - //most functionality is exposed - Channel channel; - con.openChannel(&channel); - std::cout << "Opened channel." << std::endl; - - //'declare' the exchange and the queue, which will create them - //as they don't exist - channel.declareExchange(exchange); - std::cout << "Declared exchange." << std::endl; - channel.declareQueue(queue); - std::cout << "Declared queue." << std::endl; - - //now bind the queue to the exchange - qpid::framing::FieldTable args; - channel.bind(exchange, queue, "MyTopic", args); - std::cout << "Bound queue to exchange." << std::endl; - - //Set up a message listener to receive any messages that - //arrive in our queue on the broker. We only expect one, and - //as it will be received on another thread, we create a - //montior to use to notify the main thread when that message - //is received. - Monitor monitor; - SimpleListener listener(&monitor); - string tag("MyTag"); - channel.consume(queue, tag, &listener); - std::cout << "Registered consumer." << std::endl; - - //we need to enable the message dispatching for this channel - //and we want that to occur on another thread so we call - //start(). - channel.start(); - - //Now we create and publish a message to our exchange with a - //routing key that will cause it to be routed to our queue - Message msg; - string data("MyMessage"); - msg.setData(data); - channel.publish(msg, exchange, "MyTopic"); - std::cout << "Published message: " << data << std::endl; - - { - Monitor::ScopedLock l(monitor); - //now we wait until we receive notification that the - //message was received - monitor.wait(); - } - - //close the channel & connection - con.closeChannel(&channel); - std::cout << "Closed channel." << std::endl; - con.close(); - std::cout << "Closed connection." << std::endl; - }catch(qpid::QpidError error){ - std::cout << "Error [" << error.code << "] " << error.msg << " (" - << error.location.file << ":" << error.location.line - << ")" << std::endl; - return 1; - } - return 0; -} diff --git a/qpid/cpp/tests/echo_service.cpp b/qpid/cpp/tests/echo_service.cpp deleted file mode 100644 index 666c8cfa46..0000000000 --- a/qpid/cpp/tests/echo_service.cpp +++ /dev/null @@ -1,230 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -/** - * This class provides an example of using AMQP for a request-response - * style system. 'Requests' are messages sent to a well known - * destination. A 'service' process consumes these message and - * responds by echoing the message back to the sender on a - * sender-specified private queue. - */ - -#include <QpidError.h> -#include <ClientChannel.h> -#include <Connection.h> -#include <ClientExchange.h> -#include <MessageListener.h> -#include <ClientQueue.h> -#include <sys/Time.h> -#include <iostream> -#include <sstream> - -using namespace qpid::client; -using namespace qpid::sys; -using std::string; - - -/** - * A message listener implementation representing the 'service', this - * will 'echo' any requests received. - */ -class EchoServer : public MessageListener{ - Channel* const channel; -public: - EchoServer(Channel* channel); - virtual void received(Message& msg); -}; - -/** - * A message listener implementation that merely prints received - * messages to the console. Used to report on 'echo' responses. - */ -class LoggingListener : public MessageListener{ -public: - virtual void received(Message& msg); -}; - -/** - * A utility class that manages the command line options needed to run - * the example confirgurably. - */ -class Args{ - string host; - int port; - bool trace; - bool help; - bool client; -public: - inline Args() : host("localhost"), port(5672), trace(false), help(false), client(false){} - void parse(int argc, char** argv); - void usage(); - - inline const string& getHost() const { return host;} - inline int getPort() const { return port; } - inline bool getTrace() const { return trace; } - inline bool getHelp() const { return help; } - inline bool getClient() const { return client; } -}; - -/** - * The main test path. There are two basic modes: 'client' and - * 'service'. First one or more services are started, then one or more - * clients are started and messages can be sent. - */ -int main(int argc, char** argv){ - const std::string echo_service("echo_service"); - Args args; - args.parse(argc, argv); - if (args.getHelp()) { - args.usage(); - } else if (args.getClient()) { - //we have been started in 'client' mode, i.e. we will send an - //echo requests and print responses received. - try { - //Create connection & open a channel - Connection connection(args.getTrace()); - connection.open(args.getHost(), args.getPort()); - Channel channel; - connection.openChannel(&channel); - - //Setup: declare the private 'response' queue and bind it - //to the direct exchange by its name which will be - //generated by the server - Queue response; - channel.declareQueue(response); - qpid::framing::FieldTable emptyArgs; - channel.bind(Exchange::STANDARD_DIRECT_EXCHANGE, response, response.getName(), emptyArgs); - - //Consume from the response queue, logging all echoed message to console: - LoggingListener listener; - std::string tag; - channel.consume(response, tag, &listener); - - //Process incoming requests on a new thread - channel.start(); - - //get messages from console and send them: - std::string text; - std::cout << "Enter text to send:" << std::endl; - while (std::getline(std::cin, text)) { - std::cout << "Sending " << text << " to echo server." << std::endl; - Message msg; - msg.getHeaders().setString("RESPONSE_QUEUE", response.getName()); - msg.setData(text); - channel.publish(msg, Exchange::STANDARD_DIRECT_EXCHANGE, echo_service); - - std::cout << "Enter text to send:" << std::endl; - } - - connection.close(); - } catch(qpid::QpidError error) { - std::cout << error.what() << std::endl; - } - } else { - // we are in 'service' mode, i.e. we will consume messages - // from the request queue and echo each request back to the - // senders own private response queue. - try { - //Create connection & open a channel - Connection connection(args.getTrace()); - connection.open(args.getHost(), args.getPort()); - Channel channel; - connection.openChannel(&channel); - - //Setup: declare the 'request' queue and bind it to the direct exchange with a 'well known' name - Queue request("request"); - channel.declareQueue(request); - qpid::framing::FieldTable emptyArgs; - channel.bind(Exchange::STANDARD_DIRECT_EXCHANGE, request, echo_service, emptyArgs); - - //Consume from the request queue, echoing back all messages received to the client that sent them - EchoServer server(&channel); - std::string tag = "server_tag"; - channel.consume(request, tag, &server); - - //Process incoming requests on the main thread - channel.run(); - - connection.close(); - } catch(qpid::QpidError error) { - std::cout << error.what() << std::endl; - } - } -} - -EchoServer::EchoServer(Channel* _channel) : channel(_channel){} - -void EchoServer::received(Message& message) -{ - //get name of response queues binding to the default direct exchange: - const std::string name = message.getHeaders().getString("RESPONSE_QUEUE"); - - if (name.empty()) { - std::cout << "Cannot echo " << message.getData() << ", no response queue specified." << std::endl; - } else { - //print message to console: - std::cout << "Echoing " << message.getData() << " back to " << name << std::endl; - - //'echo' the message back: - channel->publish(message, Exchange::STANDARD_DIRECT_EXCHANGE, name); - } -} - -void LoggingListener::received(Message& message) -{ - //print message to console: - std::cout << "Received echo: " << message.getData() << std::endl; -} - - -void Args::parse(int argc, char** argv){ - for(int i = 1; i < argc; i++){ - string name(argv[i]); - if("-help" == name){ - help = true; - break; - }else if("-host" == name){ - host = argv[++i]; - }else if("-port" == name){ - port = atoi(argv[++i]); - }else if("-trace" == name){ - trace = true; - }else if("-client" == name){ - client = true; - }else{ - std::cout << "Warning: unrecognised option " << name << std::endl; - } - } -} - -void Args::usage(){ - std::cout << "Options:" << std::endl; - std::cout << " -help" << std::endl; - std::cout << " Prints this usage message" << std::endl; - std::cout << " -host <host>" << std::endl; - std::cout << " Specifies host to connect to (default is localhost)" << std::endl; - std::cout << " -port <port>" << std::endl; - std::cout << " Specifies port to conect to (default is 5762)" << std::endl; - std::cout << " -trace" << std::endl; - std::cout << " Indicates that the frames sent and received should be logged" << std::endl; - std::cout << " -client" << std::endl; - std::cout << " Run as a client (else will run as a server)" << std::endl; -} diff --git a/qpid/cpp/tests/env b/qpid/cpp/tests/env deleted file mode 100755 index 49201c01fd..0000000000 --- a/qpid/cpp/tests/env +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# Set environment variables for test scripts. - -pathmunge () { - if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then - if [ "$2" = "after" ] ; then - PATH=$PATH:$1 - else - PATH=$1:$PATH - fi - fi -} - -if [ -z QPID_ROOT ] ; then echo "You must set QPID_ROOT" ; fi - -pathmunge $QPID_ROOT/cpp/tests -# pathmunge $QPID_ROOT/cpp/build/*/bin -# pathmunge $QPID_ROOT/cpp/build/*/test - -export QPID_HOME=${QPID_HOME:-$QPID_ROOT/java/build} -pathmunge $QPID_HOME/bin - - diff --git a/qpid/cpp/tests/examples.Makefile b/qpid/cpp/tests/examples.Makefile deleted file mode 100644 index 45999f7852..0000000000 --- a/qpid/cpp/tests/examples.Makefile +++ /dev/null @@ -1,66 +0,0 @@ -# -# XXX: Edit these locations to suit. -# -BOOST_LOCATION := $(HOME)/local/boost-1.33.1 -APR_LOCATION := $(HOME)/local/apr-1.2.7 - -CXXFLAGS := -DNDEBUG -DUSE_APR -MMD -fpic - -# -# Configure Boost. -# -BOOST_CFLAGS := -I$(BOOST_LOCATION)/include/boost-1_33_1 -CXXFLAGS := $(CXXFLAGS) $(BOOST_CFLAGS) - -# -# Configure APR. -# -APR_CFLAGS := -I$(APR_LOCATION)/include/apr-1 -APR_LDFLAGS := $(shell $(APR_LOCATION)/bin/apr-1-config --libs) -L$(APR_LOCATION)/lib -lapr-1 -CXXFLAGS := $(CXXFLAGS) $(APR_CFLAGS) -LDFLAGS := $(LDFLAGS) $(APR_LDFLAGS) - -# -# Configure Qpid cpp client. -# -QPID_CLIENT_LDFLAGS := ../lib/libcommon.so ../lib/libclient.so -includeDir := ../include -QPID_CLIENT_CFLAGS := \ - -I$(includeDir)/gen \ - -I$(includeDir)/client \ - -I$(includeDir)/broker \ - -I$(includeDir)/common \ - -I$(includeDir)/common/sys \ - -I$(includeDir)/common/framing - -CXXFLAGS := $(CXXFLAGS) $(QPID_CLIENT_CFLAGS) -LDFLAGS := $(LDFLAGS) $(QPID_CLIENT_LDFLAGS) - -CXX := g++ - -# -# Add rule to build examples. -# -.SUFFIX: .cpp -%: %.cpp - $(CXX) $(CXXFLAGS) $(LDFLAGS) $< -o $@ - -# -# Define targets. -# - -EXAMPLES := client_test topic_listener topic_publisher echo_service - -cppFiles := $(wildcard *.cpp) -programs = $(foreach cppFile, $(cppFiles), $(subst .cpp, ,$(cppFile))) - -.PHONY: -all: $(programs) - -debug: - @echo cppFiles = $(cppFiles) - @echo programs = $(programs) - -.PHONY: -clean: - -rm $(EXAMPLES) diff --git a/qpid/cpp/tests/examples.README b/qpid/cpp/tests/examples.README deleted file mode 100644 index 65f908c249..0000000000 --- a/qpid/cpp/tests/examples.README +++ /dev/null @@ -1,18 +0,0 @@ -Building the examples ---------------------- - -You had better edit the Makefile and provide the locations for APR and boost. - -Then just type 'make'. - - -Running the examples --------------------- - -Before running the examples ensure that you have setup your LD_LIBRARY_PATH. - -Most of the examples take the following connection parameters for your -AMQP broker: - - -host host - -port port diff --git a/qpid/cpp/tests/qpid_test_plugin.h b/qpid/cpp/tests/qpid_test_plugin.h deleted file mode 100644 index b2f4a8ffed..0000000000 --- a/qpid/cpp/tests/qpid_test_plugin.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef _qpid_test_plugin_ -#define _qpid_test_plugin_ - -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -/** - * Convenience to include cppunit headers needed by qpid test plugins and - * workaround for warning from superfluous main() declaration - * in cppunit/TestPlugIn.h - */ - -#include <cppunit/TestCase.h> -#include <cppunit/TextTestRunner.h> -#include <cppunit/extensions/HelperMacros.h> -#include <cppunit/plugin/TestPlugIn.h> - -// Redefine CPPUNIT_PLUGIN_IMPLEMENT_MAIN to a dummy typedef to avoid warnings. -// -#if defined(CPPUNIT_HAVE_UNIX_DLL_LOADER) || defined(CPPUNIT_HAVE_UNIX_SHL_LOADER) -#undef CPPUNIT_PLUGIN_IMPLEMENT_MAIN -#define CPPUNIT_PLUGIN_IMPLEMENT_MAIN() typedef char __CppUnitPlugInImplementMainDummyTypeDef -#endif - -#endif /*!_qpid_test_plugin_*/ diff --git a/qpid/cpp/tests/run-python-tests b/qpid/cpp/tests/run-python-tests deleted file mode 100755 index de57553bfc..0000000000 --- a/qpid/cpp/tests/run-python-tests +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash - -if test "$VERBOSE" = yes; then - set -x - qpidd --version -fi - -. $srcdir/setup - -fail=0 -pid=0 - -# Start the daemon, recording its PID. -$vg $abs_builddir/../src/qpidd > log 2>&1 & pid=$! - -# FIXME: remove this sleep kludge once qpidd provides a way -sleep 4 - -# Run the tests. -( cd $abs_srcdir/../../python \ - && python ./run-tests -v -I cpp_failing.txt ) || fail=1 - -kill $pid || { echo FAIL: process already died; cat log; fail=1; } - -wait $pid -# FIXME: when we have a way to make qpidd shutdown gracefully -# (i.e. with expected exit status of 0), replace the above with this: -# wait $pid || fail=1 - -vg_check log || fail=1 - -# Tell the exit trap not to kill any process. -pid=0 - -(exit $fail); exit $fail diff --git a/qpid/cpp/tests/run-system-tests b/qpid/cpp/tests/run-system-tests deleted file mode 100755 index 5aa0f9a409..0000000000 --- a/qpid/cpp/tests/run-system-tests +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh - -set -e -log=`pwd`/qpidd.log -# Start the daemon, recording its PID. -../src/qpidd > $log 2>&1 & pid=$! - -# Arrange to kill the daemon upon any type of termination. -trap 'status=$?; kill $pid; exit $status' 0 -trap '(exit $?); exit $?' 1 2 13 15 - -# Run C++ client tests. -run_test() { - test="$*" - echo -n "Running: $test ... " - if $test >test.out 2>&1 ; then - echo " Passed" ; - else - echo " FAILED. Output:"; - cat test.out - FAILED=yes - fi - rm -f test.out -} - -run_test ./client_test -run_test ./topictest -l2 -m2 -b1 - -# Run the python tests. -if test -d ../../python ; then - cd ../../python && ./run-tests -v -I cpp_failing.txt -else - echo Warning: python tests not found. -fi - -# TODO aconway 2006-12-13: run the other client tests. - -rm -f $log diff --git a/qpid/cpp/tests/run-unit-tests b/qpid/cpp/tests/run-unit-tests deleted file mode 100755 index 0ab01f05c5..0000000000 --- a/qpid/cpp/tests/run-unit-tests +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -. $srcdir/setup - -fail=0 -$vg DllPlugInTester -c -b $pwd/.libs/*.so 2> out || fail=1 -vg_check out || fail=1 - -exit $fail diff --git a/qpid/cpp/tests/setup b/qpid/cpp/tests/setup deleted file mode 100644 index 9dde4758b1..0000000000 --- a/qpid/cpp/tests/setup +++ /dev/null @@ -1,74 +0,0 @@ -# -*- sh -*- - -test "$VERBOSE" = yes && set -x - -pwd=`pwd` -t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$ -pid=0 -test -z "$TEST_DEBUG" && -trap 's=$?;test $pid = 0||kill -2 $pid;cd "$pwd" && rm -rf $t0 && exit $s' 0 -test -z "$TEST_DEBUG" && trap '(exit $?); exit $?' 1 2 13 15 - -framework_failure=0 -mkdir -p $tmp || framework_failure=1 -cd $tmp || framework_failure=1 - -gen_supp=--gen-suppressions=all -# This option makes valgrind significantly slower. -full_leak_check=--leak-check=full - -vg_options=" - --suppressions=$abs_srcdir/.vg-supp - --num-callers=25 - --demangle=no - --track-fds=yes - $full_leak_check - $gen_supp - " -# configure tests for the existence of valgrind. -# If it's not available, then make $vg and vg_check no-ops. -if test x$VALGRIND = x; then - vg= -else - vg="libtool --mode=execute valgrind `echo $vg_options` --" -fi - -vg_leak_check() -{ - local file=$1 - local fail - # If we detect a leak, dump all output to stderr. - grep -E '^==[0-9]+== +definitely lost: [^0]' $file \ - && { fail=1; cat $file 1>&2; - echo "found memory leaks (see log file, $file); see above" 1>&2; } - test "$fail" = '' -} - - -# Ensure 1) that there is an ERROR SUMMARY line, and -# 2) that the number of errors is 0. -# An offending line looks like this: -# ==29302== ERROR SUMMARY: 4 errors from 2 contexts (suppressed: 16 from 5) -vg_error_check() -{ - local file=$1 - local fail - # If we detect a leak, dump all output to stderr. - grep -E '^==[0-9]+== ERROR SUMMARY:' $file > /dev/null \ - || { fail=1; cat $file 1>&2; - echo "no valgrind ERROR SUMMARY line in $file" 1>&2; } - if test "$fail" = ''; then - grep -E '^==[0-9]+== ERROR SUMMARY: [^0] ' $file \ - && { fail=1; cat $file 1>&2; - echo "valgrind reported errors in $file; see above" 1>&2; } - fi - test "$fail" = '' -} - -vg_check() -{ - local file=$1 - if test x$VALGRIND != x; then - vg_error_check $file && vg_leak_check $file - fi -} diff --git a/qpid/cpp/tests/topic_listener.cpp b/qpid/cpp/tests/topic_listener.cpp deleted file mode 100644 index 7a32373492..0000000000 --- a/qpid/cpp/tests/topic_listener.cpp +++ /dev/null @@ -1,212 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -/** - * This file provides one half of a test and example of a pub-sub - * style of interaction. See topic_publisher.cpp for the other half, - * in which the logic for publishing is defined. - * - * This file contains the listener logic. A listener will subscribe to - * a logical 'topic'. It will count the number of messages it receives - * and the time elapsed between the first one and the last one. It - * recognises two types of 'special' message that tell it to (a) send - * a report containing this information, (b) shutdown (i.e. stop - * listening). - */ - -#include <QpidError.h> -#include <ClientChannel.h> -#include <Connection.h> -#include <ClientExchange.h> -#include <MessageListener.h> -#include <ClientQueue.h> -#include <sys/Time.h> -#include <iostream> -#include <sstream> - -using namespace qpid::client; -using namespace qpid::sys; -using std::string; - -/** - * A message listener implementation in which the runtime logic is - * defined. - */ -class Listener : public MessageListener{ - Channel* const channel; - const std::string responseQueue; - const bool transactional; - bool init; - int count; - Time start; - - void shutdown(); - void report(); -public: - Listener(Channel* channel, const std::string& reponseQueue, bool tx); - virtual void received(Message& msg); -}; - -/** - * A utility class for managing the options passed in. - */ -class Args{ - string host; - int port; - int ackMode; - bool transactional; - int prefetch; - bool trace; - bool help; -public: - inline Args() : host("localhost"), port(5672), ackMode(NO_ACK), transactional(false), prefetch(1000), trace(false), help(false){} - void parse(int argc, char** argv); - void usage(); - - inline const string& getHost() const { return host;} - inline int getPort() const { return port; } - inline int getAckMode(){ return ackMode; } - inline bool getTransactional() const { return transactional; } - inline int getPrefetch(){ return prefetch; } - inline bool getTrace() const { return trace; } - inline bool getHelp() const { return help; } -}; - -/** - * The main routine creates a Listener instance and sets it up to - * consume from a private queue bound to the exchange with the - * appropriate topic name. - */ -int main(int argc, char** argv){ - Args args; - args.parse(argc, argv); - if(args.getHelp()){ - args.usage(); - }else{ - try{ - Connection connection(args.getTrace()); - connection.open(args.getHost(), args.getPort(), "guest", "guest", "/test"); - Channel channel(args.getTransactional(), args.getPrefetch()); - connection.openChannel(&channel); - - //declare exchange, queue and bind them: - Queue response("response"); - channel.declareQueue(response); - - Queue control; - channel.declareQueue(control); - qpid::framing::FieldTable bindArgs; - channel.bind(Exchange::STANDARD_TOPIC_EXCHANGE, control, "topic_control", bindArgs); - //set up listener - Listener listener(&channel, response.getName(), args.getTransactional()); - std::string tag; - channel.consume(control, tag, &listener, args.getAckMode()); - channel.run(); - connection.close(); - }catch(qpid::QpidError error){ - std::cout << error.what() << std::endl; - } - } -} - -Listener::Listener(Channel* _channel, const std::string& _responseq, bool tx) : - channel(_channel), responseQueue(_responseq), transactional(tx), init(false), count(0){} - -void Listener::received(Message& message){ - if(!init){ - start = now(); - count = 0; - init = true; - } - std::string type(message.getHeaders().getString("TYPE")); - - if(type == "TERMINATION_REQUEST"){ - shutdown(); - }else if(type == "REPORT_REQUEST"){ - //send a report: - report(); - init = false; - }else if (++count % 100 == 0){ - std::cout <<"Received " << count << " messages." << std::endl; - } -} - -void Listener::shutdown(){ - channel->close(); -} - -void Listener::report(){ - Time finish = now(); - Time time = finish - start; - std::stringstream reportstr; - reportstr << "Received " << count << " messages in " - << time/TIME_MSEC << " ms."; - Message msg; - msg.setData(reportstr.str()); - channel->publish(msg, string(), responseQueue); - if(transactional){ - channel->commit(); - } -} - - -void Args::parse(int argc, char** argv){ - for(int i = 1; i < argc; i++){ - string name(argv[i]); - if("-help" == name){ - help = true; - break; - }else if("-host" == name){ - host = argv[++i]; - }else if("-port" == name){ - port = atoi(argv[++i]); - }else if("-ack_mode" == name){ - ackMode = atoi(argv[++i]); - }else if("-transactional" == name){ - transactional = true; - }else if("-prefetch" == name){ - prefetch = atoi(argv[++i]); - }else if("-trace" == name){ - trace = true; - }else{ - std::cout << "Warning: unrecognised option " << name << std::endl; - } - } -} - -void Args::usage(){ - std::cout << "Options:" << std::endl; - std::cout << " -help" << std::endl; - std::cout << " Prints this usage message" << std::endl; - std::cout << " -host <host>" << std::endl; - std::cout << " Specifies host to connect to (default is localhost)" << std::endl; - std::cout << " -port <port>" << std::endl; - std::cout << " Specifies port to conect to (default is 5762)" << std::endl; - std::cout << " -ack_mode <mode>" << std::endl; - std::cout << " Sets the acknowledgement mode" << std::endl; - std::cout << " 0=NO_ACK (default), 1=AUTO_ACK, 2=LAZY_ACK" << std::endl; - std::cout << " -transactional" << std::endl; - std::cout << " Indicates the client should use transactions" << std::endl; - std::cout << " -prefetch <count>" << std::endl; - std::cout << " Specifies the prefetch count (default is 1000)" << std::endl; - std::cout << " -trace" << std::endl; - std::cout << " Indicates that the frames sent and received should be logged" << std::endl; -} diff --git a/qpid/cpp/tests/topic_publisher.cpp b/qpid/cpp/tests/topic_publisher.cpp deleted file mode 100644 index 31e5fc3fc2..0000000000 --- a/qpid/cpp/tests/topic_publisher.cpp +++ /dev/null @@ -1,282 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -/** - * This file provides one half of a test and example of a pub-sub - * style of interaction. See topic_listener.cpp for the other half, in - * which the logic for subscribers is defined. - * - * This file contains the publisher logic. The publisher will send a - * number of messages to the exchange with the appropriate routing key - * for the logical 'topic'. Once it has done this it will then send a - * request that each subscriber report back with the number of message - * it has received and the time that elapsed between receiving the - * first one and receiving the report request. Once the expected - * number of reports are received, it sends out a request that each - * subscriber shutdown. - */ - -#include <QpidError.h> -#include <ClientChannel.h> -#include <Connection.h> -#include <ClientExchange.h> -#include <MessageListener.h> -#include <ClientQueue.h> -#include <sys/Monitor.h> -#include "unistd.h" -#include <sys/Time.h> -#include <cstdlib> -#include <iostream> - -using namespace qpid::client; -using namespace qpid::sys; -using std::string; - -/** - * The publishing logic is defined in this class. It implements - * message listener and can therfore be used to receive messages sent - * back by the subscribers. - */ -class Publisher : public MessageListener{ - Channel* const channel; - const std::string controlTopic; - const bool transactional; - Monitor monitor; - int count; - - void waitForCompletion(int msgs); - string generateData(int size); - -public: - Publisher(Channel* channel, const std::string& controlTopic, bool tx); - virtual void received(Message& msg); - int64_t publish(int msgs, int listeners, int size); - void terminate(); -}; - -/** - * A utility class for managing the options passed in to the test - */ -class Args{ - string host; - int port; - int messages; - int subscribers; - int ackMode; - bool transactional; - int prefetch; - int batches; - int delay; - int size; - bool trace; - bool help; -public: - inline Args() : host("localhost"), port(5672), messages(1000), subscribers(1), - ackMode(NO_ACK), transactional(false), prefetch(1000), batches(1), - delay(0), size(256), trace(false), help(false){} - - void parse(int argc, char** argv); - void usage(); - - inline const string& getHost() const { return host;} - inline int getPort() const { return port; } - inline int getMessages() const { return messages; } - inline int getSubscribers() const { return subscribers; } - inline int getAckMode(){ return ackMode; } - inline bool getTransactional() const { return transactional; } - inline int getPrefetch(){ return prefetch; } - inline int getBatches(){ return batches; } - inline int getDelay(){ return delay; } - inline int getSize(){ return size; } - inline bool getTrace() const { return trace; } - inline bool getHelp() const { return help; } -}; - -int main(int argc, char** argv){ - Args args; - args.parse(argc, argv); - if(args.getHelp()){ - args.usage(); - }else{ - try{ - Connection connection(args.getTrace()); - connection.open(args.getHost(), args.getPort(), "guest", "guest", "/test"); - Channel channel(args.getTransactional(), args.getPrefetch()); - connection.openChannel(&channel); - - //declare queue (relying on default binding): - Queue response("response"); - channel.declareQueue(response); - - //set up listener - Publisher publisher(&channel, "topic_control", args.getTransactional()); - std::string tag("mytag"); - channel.consume(response, tag, &publisher, args.getAckMode()); - channel.start(); - - int batchSize(args.getBatches()); - int64_t max(0); - int64_t min(0); - int64_t sum(0); - for(int i = 0; i < batchSize; i++){ - if(i > 0 && args.getDelay()) sleep(args.getDelay()); - Time time = publisher.publish( - args.getMessages(), args.getSubscribers(), args.getSize()); - if(!max || time > max) max = time; - if(!min || time < min) min = time; - sum += time; - std::cout << "Completed " << (i+1) << " of " << batchSize - << " in " << time/TIME_MSEC << "ms" << std::endl; - } - publisher.terminate(); - int64_t avg = sum / batchSize; - if(batchSize > 1){ - std::cout << batchSize << " batches completed. avg=" << avg << - ", max=" << max << ", min=" << min << std::endl; - } - channel.close(); - connection.close(); - }catch(qpid::QpidError error){ - std::cout << error.what() << std::endl; - } - } -} - -Publisher::Publisher(Channel* _channel, const std::string& _controlTopic, bool tx) : - channel(_channel), controlTopic(_controlTopic), transactional(tx){} - -void Publisher::received(Message& ){ - //count responses and when all are received end the current batch - Monitor::ScopedLock l(monitor); - if(--count == 0){ - monitor.notify(); - } -} - -void Publisher::waitForCompletion(int msgs){ - count = msgs; - monitor.wait(); -} - -int64_t Publisher::publish(int msgs, int listeners, int size){ - Message msg; - msg.setData(generateData(size)); - Time start = now(); - { - Monitor::ScopedLock l(monitor); - for(int i = 0; i < msgs; i++){ - channel->publish(msg, Exchange::STANDARD_TOPIC_EXCHANGE, controlTopic); - } - //send report request - Message reportRequest; - reportRequest.getHeaders().setString("TYPE", "REPORT_REQUEST"); - channel->publish(reportRequest, Exchange::STANDARD_TOPIC_EXCHANGE, controlTopic); - if(transactional){ - channel->commit(); - } - - waitForCompletion(listeners); - } - - Time finish = now(); - return finish - start; -} - -string Publisher::generateData(int size){ - string data; - for(int i = 0; i < size; i++){ - data += ('A' + (i / 26)); - } - return data; -} - -void Publisher::terminate(){ - //send termination request - Message terminationRequest; - terminationRequest.getHeaders().setString("TYPE", "TERMINATION_REQUEST"); - channel->publish(terminationRequest, Exchange::STANDARD_TOPIC_EXCHANGE, controlTopic); - if(transactional){ - channel->commit(); - } -} - -void Args::parse(int argc, char** argv){ - for(int i = 1; i < argc; i++){ - string name(argv[i]); - if("-help" == name){ - help = true; - break; - }else if("-host" == name){ - host = argv[++i]; - }else if("-port" == name){ - port = atoi(argv[++i]); - }else if("-messages" == name){ - messages = atoi(argv[++i]); - }else if("-subscribers" == name){ - subscribers = atoi(argv[++i]); - }else if("-ack_mode" == name){ - ackMode = atoi(argv[++i]); - }else if("-transactional" == name){ - transactional = true; - }else if("-prefetch" == name){ - prefetch = atoi(argv[++i]); - }else if("-batches" == name){ - batches = atoi(argv[++i]); - }else if("-delay" == name){ - delay = atoi(argv[++i]); - }else if("-size" == name){ - size = atoi(argv[++i]); - }else if("-trace" == name){ - trace = true; - }else{ - std::cout << "Warning: unrecognised option " << name << std::endl; - } - } -} - -void Args::usage(){ - std::cout << "Options:" << std::endl; - std::cout << " -help" << std::endl; - std::cout << " Prints this usage message" << std::endl; - std::cout << " -host <host>" << std::endl; - std::cout << " Specifies host to connect to (default is localhost)" << std::endl; - std::cout << " -port <port>" << std::endl; - std::cout << " Specifies port to conect to (default is 5762)" << std::endl; - std::cout << " -messages <count>" << std::endl; - std::cout << " Specifies how many messages to send" << std::endl; - std::cout << " -subscribers <count>" << std::endl; - std::cout << " Specifies how many subscribers to expect reports from" << std::endl; - std::cout << " -ack_mode <mode>" << std::endl; - std::cout << " Sets the acknowledgement mode" << std::endl; - std::cout << " 0=NO_ACK (default), 1=AUTO_ACK, 2=LAZY_ACK" << std::endl; - std::cout << " -transactional" << std::endl; - std::cout << " Indicates the client should use transactions" << std::endl; - std::cout << " -prefetch <count>" << std::endl; - std::cout << " Specifies the prefetch count (default is 1000)" << std::endl; - std::cout << " -batches <count>" << std::endl; - std::cout << " Specifies how many batches to run" << std::endl; - std::cout << " -delay <seconds>" << std::endl; - std::cout << " Causes a delay between each batch" << std::endl; - std::cout << " -size <bytes>" << std::endl; - std::cout << " Sets the size of the published messages (default is 256 bytes)" << std::endl; - std::cout << " -trace" << std::endl; - std::cout << " Indicates that the frames sent and received should be logged" << std::endl; -} diff --git a/qpid/cpp/tests/topicall b/qpid/cpp/tests/topicall deleted file mode 100755 index bde04a5b30..0000000000 --- a/qpid/cpp/tests/topicall +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -# Do 3 runs of topictests for C++ and Java brokers with reduced output. - -. `dirname $0`/env - -# Run a short topictest to warm up the broker and iron out startup effects. -flush() { - topic_listener >/dev/null 2>&1 & - topic_publisher >/dev/null 2>&1 -} - -echo Java broker -broker j ; flush -topictest c | tail -n1 -topictest c | tail -n1 -topictest c | tail -n1 - -echo C++ broker -broker c ; flush -topictest c | tail -n1 -topictest c | tail -n1 -topictest c | tail -n1 - -# Don't bother with java clients we know they're slower. - diff --git a/qpid/cpp/tests/topictest b/qpid/cpp/tests/topictest deleted file mode 100755 index 8ad24aba8c..0000000000 --- a/qpid/cpp/tests/topictest +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# Run the c++ or java topic test - -. `dirname $0`/env - -# Edit parameters here: - -# Big test: -# LISTENERS=10 -# MESSAGES=10000 -# BATCHES=20 - -LISTENERS=10 -MESSAGES=2000 -BATCHES=10 - -cppcmds() { - LISTEN_CMD=./topic_listener - PUBLISH_CMD="./topic_publisher -messages $MESSAGES -batches $BATCHES -subscribers $LISTENERS" -} - -javacmds() { - DEF=-Damqj.logging.level="error" - LISTEN_CMD="qpid-run $DEF org.apache.qpid.topic.Listener" - PUBLISH_CMD="qpid-run $DEF org.apache.qpid.topic.Publisher -messages $MESSAGES -batch $BATCHES -clients $LISTENERS" -} - -case $1 in - c) cppcmds ;; - j) javacmds ;; - *) cppcmds ;; -esac - -for ((i=$LISTENERS ; i--; )); do - $LISTEN_CMD > /dev/null 2>&1 & -done -sleep 1 -echo $PUBLISH_CMD $OPTIONS - -STATS=~/bin/topictest.times -echo "---- topictest `date`" >> $STATS -$PUBLISH_CMD $OPTIONS | tee -a $STATS |