[ https://issues.apache.org/jira/browse/QPID-1766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12698299#action_12698299 ]
Carl Trieloff commented on QPID-1766: ------------------------------------- The patch is close, two issues need to be resolved before commit: 1.) I am able to create a core, this might be due to a mistake in my refactor to make it into a plug-in, or something else. I have not had time to look into that. 2.) We need to add a test, python test would be the way to go. I have attached the pa,tch, with all everything I have added to Chenta's work.... I have move the selector into the XML exchange plugin, so both get loaded at one. Below is the backtrace from the core. (gdb) bt #0 0x0000003425fbc110 in vtable for xercesc_2_8::PanicHandler () from /usr/lib64/libxerces-c.so.28 #1 0x000000342616f528 in xercesc_2_8::RefHash2KeysTableOf<VarHashEntry<StaticAnalysis const*> >::removeAll () from /usr/lib64/libxqilla.so.4 #2 0x0000003426172720 in XQContextImpl::~XQContextImpl () from /usr/lib64/libxqilla.so.4 #3 0x00000034261c5103 in XQQuery::~XQQuery () from /usr/lib64/libxqilla.so.4 #4 0x00007f5582f80b32 in checked_delete<XQQuery> (x=<value optimized out>) at /usr/include/boost/checked_delete.hpp:34 #5 boost::detail::sp_counted_impl_p<XQQuery>::dispose (this=<value optimized out>) at /usr/include/boost/detail/sp_counted_impl.hpp:79 #6 0x00007f5582f85a61 in boost::detail::sp_counted_base::release () at /usr/include/boost/detail/sp_counted_base_gcc_x86.hpp:145 #7 ~shared_count () at /usr/include/boost/detail/shared_count.hpp:205 #8 ~shared_ptr () at /usr/include/boost/shared_ptr.hpp:131 #9 ~SelectorImpl (this=0x10e2d90) at qpid/xml/Selector.h:48 #10 0x00007f5583ba6bcb in boost::detail::sp_counted_base::release () at /usr/include/boost/detail/sp_counted_base_gcc_x86.hpp:145 #11 ~shared_count () at /usr/include/boost/detail/shared_count.hpp:205 #12 ~shared_ptr () at /usr/include/boost/shared_ptr.hpp:131 #13 ~ConsumerImpl (this=0x10e1f80) at qpid/broker/SemanticState.cpp:338 #14 0x00007f5583b29e39 in boost::detail::sp_counted_base::release () at /usr/include/boost/detail/sp_counted_base_gcc_x86.hpp:145 #15 ~shared_count (this=<value optimized out>) at /usr/include/boost/detail/shared_count.hpp:205 #16 0x00007f5583ba8498 in ~shared_ptr () at /usr/include/boost/shared_ptr.hpp:131 #17 ~pair () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/bits/stl_pair.h:73 #18 __gnu_cxx::new_allocator<std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> > >::destroy () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/ext/new_allocator.h:118 #19 std::_Rb_tree<std::string, std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> >, std::_Select1st<std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> > > >::_M_destroy_node () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/bits/stl_tree.h:390 #20 std::_Rb_tree<std::string, std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> >, std::_Select1st<std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> > > >::erase () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/bits/stl_tree.h:1319 #21 std::map<std::string, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl>, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<qpid::broker::SemanticState::ConsumerImpl> > > >::erase () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/bits/stl_map.h:523 #22 qpid::broker::SemanticState::cancel (this=0x10e8de8, t...@0x10e86d0) at qpid/broker/SemanticState.cpp:100 #23 0x00007f5583bab5ec in qpid::broker::SessionAdapter::MessageHandlerImpl::cancel (this=0x10e8fa8, destinati...@0x1157fa0) at qpid/broker/SessionAdapter.cpp:496 #24 0x00007f558370ad12 in std::string::_M_rep () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/bits/basic_string.h:286 #25 ~basic_string () at /usr/lib/gcc/x86_64-redhat-linux/4.3.2/../../../../include/c++/4.3.2/bits/basic_string.h:494 #26 ~Result () at ./qpid/framing/Invoker.h:41 #27 ~Invoker () at ./qpid/framing/Invoker.h:39 #28 ~Invoker (this=0x109f4d0) at gen/qpid/framing/ClientInvoker.h:138 #29 0x00007f558370c9b0 in ?? () from /home/cctrieloff/apache/qpid1/cpp/src/.libs/libqpidcommon.so.0 #30 0x00007f5583a3e6f0 in vtable for qpid::framing::AMQP_ClientOperations::ConnectionHandler::Invoker () > Implemention of selector using Xquery > ------------------------------------- > > Key: QPID-1766 > URL: https://issues.apache.org/jira/browse/QPID-1766 > Project: Qpid > Issue Type: Improvement > Components: C++ Broker, C++ Client > Environment: Linux > Reporter: chenta lee > Attachments: Makefile.patch, Makefile.patch, selector.patch, > selector.patch, selector_broker.patch, selector_client.patch, > selector_client.patch, selector_example.zip > > > I implemented the message selector for C++ broker and client using Xquery. > I will attach an example later. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org