[ http://issues.apache.org/jira/browse/AXISCPP-719?page=comments#action_12317158 ]
Dushshantha Chandradasa commented on AXISCPP-719: ------------------------------------------------- I tested Xerces c++ 2.6.0 with Axis C++. It didnt give any Build breakages and all samples are working fine. What i did was i just used Xerces c++ 2.6.0 in place of Xerces c++ 2.2 . It simply worked. I think we can move to Xerces c++ 2.6.0 without any major changes to the system. Any thoughts on this please... Dushshantha > xerces 2.2 has bugs, let's move to the latest version > ----------------------------------------------------- > > Key: AXISCPP-719 > URL: http://issues.apache.org/jira/browse/AXISCPP-719 > Project: Axis-C++ > Type: Wish > Components: Client - Deserialization, Parser Library - Xerces, > Serialization, Server - Deserialization > Versions: current (nightly) > Reporter: Henrik Nordberg > > I wish we could move to the latest version of xerces, since version 2.2 has > bugs that can cause the server to become unstable. Here are the results of a > run with valgrind: > Mismatched free() / delete / delete [] > at 0x1B90579D: free (vg_replace_malloc.c:152) > by 0x1D8C0972: operator delete(void*) (in /usr/lib/libstdc++.so.5.0.7) > by 0x1D6D4D50: xercesc_2_2::SAX2XMLReaderImpl::~SAX2XMLReaderImpl() (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D5357CB: XMLParserXerces::~XMLParserXerces() (XMLParserXerces.cpp:70) > by 0x1D536B2D: DestroyInstance (ParserLoader.cpp:48) > by 0x1BFFACDB: axiscpp::XMLParserFactory::destroyParserObject(XMLParser*) > (XMLParserFactory.cpp:203) > by 0x1C0140C1: axiscpp::WSDDDocument::parseDocument(char const*) > (WSDDDocument.cpp:390) > by 0x1C0141CD: axiscpp::WSDDDocument::getDeployment(char const*, > axiscpp::WSDDDeployment*) (WSDDDocument.cpp:99) > by 0x1BFD378F: axiscpp::WSDDDeployment::loadWSDD(char const*) > (WSDDDeployment.cpp:204) > by 0x1C00004A: initialize_module (Axis.cpp:527) > by 0x1B90E085: module_init (mod_axis2.cpp:138) > by 0x178D1: ap_run_child_init (in /usr/sbin/httpd) > Address 0x1D3B0030 is 0 bytes inside a block of size 124 alloc'd > at 0x1B905407: operator new(unsigned) (vg_replace_malloc.c:132) > by 0x1D535297: XMLParserXerces::XMLParserXerces() > (XMLReaderFactory.hpp:112) > by 0x1D536ADD: CreateInstance (ParserLoader.cpp:36) > by 0x1BFFAC74: axiscpp::XMLParserFactory::getParserObject() > (XMLParserFactory.cpp:180) > by 0x1C013E84: axiscpp::WSDDDocument::parseDocument(char const*) > (WSDDDocument.cpp:330) > by 0x1C0141CD: axiscpp::WSDDDocument::getDeployment(char const*, > axiscpp::WSDDDeployment*) (WSDDDocument.cpp:99) > by 0x1BFD378F: axiscpp::WSDDDeployment::loadWSDD(char const*) > (WSDDDeployment.cpp:204) > by 0x1C00004A: initialize_module (Axis.cpp:527) > by 0x1B90E085: module_init (mod_axis2.cpp:138) > by 0x178D1: ap_run_child_init (in /usr/sbin/httpd) > by 0x1556A: (within /usr/sbin/httpd) > by 0x15B37: (within /usr/sbin/httpd) > Conditional jump or move depends on uninitialised value(s) > at 0x1BB936ED: strstr (in /lib/tls/libc-2.3.5.so) > by 0x1B90DB90: Apache2Transport::getBytes(char*, int*) (cstring:125) > by 0x1D53701F: SoapBinInputStream::readBytes(unsigned char*, unsigned) > (SoapBinInputStream.cpp:97) > by 0x1D72E73F: xercesc_2_2::XMLReader::refreshRawBuffer() (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D72BC9C: xercesc_2_2::XMLReader::XMLReader(unsigned short const*, > unsigned short const*, xercesc_2_2::BinInputStream*, > xercesc_2_2::XMLReader::RefFrom, xercesc_2_2::XMLReader::Types, > xercesc_2_2::XMLReader::Sources, bool, bool, > xercesc_2_2::XMLReader::XMLVersion) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D6C94E0: > xercesc_2_2::ReaderMgr::createReader(xercesc_2_2::InputSource const&, bool, > xercesc_2_2::XMLReader::RefFrom, xercesc_2_2::XMLReader::Types, > xercesc_2_2::XMLReader::Sources, bool) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D6A2E19: > xercesc_2_2::IGXMLScanner::scanReset(xercesc_2_2::InputSource const&) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D730ABA: xercesc_2_2::XMLScanner::scanFirst(xercesc_2_2::InputSource > const&, xercesc_2_2::XMLPScanToken&) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D6D5804: > xercesc_2_2::SAX2XMLReaderImpl::parseFirst(xercesc_2_2::InputSource const&, > xercesc_2_2::XMLPScanToken&) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D535D85: XMLParserXerces::next(bool) (XMLParserXerces.cpp:171) > by 0x1C0498A7: axiscpp::SoapDeSerializer::getEnvelope() > (SoapDeSerializer.cpp:200) > by 0x1C049C97: axiscpp::SoapDeSerializer::getVersion() > (SoapDeSerializer.cpp:826) > Conditional jump or move depends on uninitialised value(s) > at 0x1BB936D9: strstr (in /lib/tls/libc-2.3.5.so) > by 0x1B90DB90: Apache2Transport::getBytes(char*, int*) (cstring:125) > by 0x1D53701F: SoapBinInputStream::readBytes(unsigned char*, unsigned) > (SoapBinInputStream.cpp:97) > by 0x1D72E73F: xercesc_2_2::XMLReader::refreshRawBuffer() (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D72BC9C: xercesc_2_2::XMLReader::XMLReader(unsigned short const*, > unsigned short const*, xercesc_2_2::BinInputStream*, > xercesc_2_2::XMLReader::RefFrom, xercesc_2_2::XMLReader::Types, > xercesc_2_2::XMLReader::Sources, bool, bool, > xercesc_2_2::XMLReader::XMLVersion) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D6C94E0: > xercesc_2_2::ReaderMgr::createReader(xercesc_2_2::InputSource const&, bool, > xercesc_2_2::XMLReader::RefFrom, xercesc_2_2::XMLReader::Types, > xercesc_2_2::XMLReader::Sources, bool) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D6A2E19: > xercesc_2_2::IGXMLScanner::scanReset(xercesc_2_2::InputSource const&) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D730ABA: xercesc_2_2::XMLScanner::scanFirst(xercesc_2_2::InputSource > const&, xercesc_2_2::XMLPScanToken&) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D6D5804: > xercesc_2_2::SAX2XMLReaderImpl::parseFirst(xercesc_2_2::InputSource const&, > xercesc_2_2::XMLPScanToken&) (in > /usr/local/xerces-c-LINUX-c++-2_2_0/lib/libxerces-c.so.22.0) > by 0x1D535D85: XMLParserXerces::next(bool) (XMLParserXerces.cpp:171) > by 0x1C0498A7: axiscpp::SoapDeSerializer::getEnvelope() > (SoapDeSerializer.cpp:200) > by 0x1C049C97: axiscpp::SoapDeSerializer::getVersion() > (SoapDeSerializer.cpp:826) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
