[ https://issues.apache.org/jira/browse/XERCESC-2162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718063#comment-16718063 ]
Roger Leigh commented on XERCESC-2162: -------------------------------------- If you compile with the icc equivalent of "-g3", could you post the full stacktrace when it freezes so that we can see exactly where it's stuck? I wouldn't expect any significant difference between "standard" and "posix" because it's all ultimately pthreads underneath. But Xerces is using a somewhat indirect abstraction via the MutexManager, rather than the RAII-style you get with C++11 direct mutex locking. (Were we to require C++11, we could drop the MutexManager entirely and use C++11 threads and mutexes directly without this abstraction,) > ThreadTest freezes with Intel 17.0.5.239 and 18.0.1.163 > ------------------------------------------------------- > > Key: XERCESC-2162 > URL: https://issues.apache.org/jira/browse/XERCESC-2162 > Project: Xerces-C++ > Issue Type: Bug > Components: Samples/Tests > Affects Versions: 3.2.2 > Environment: cat /etc/redhat-release > Red Hat Enterprise Linux Server release 7.6 (Maipo) > uname -a > Linux tfe10 3.10.0-957.el7.x86_64 #1 SMP Thu Oct 4 20:48:51 UTC 2018 x86_64 > x86_64 x86_64 GNU/Linux > Two versions of the Intel compiler suite were tried: > icpc --version > icpc (ICC) 17.0.5 20170817 > Copyright (C) 1985-2017 Intel Corporation. All rights reserved. > icc --version > icc (ICC) 17.0.5 20170817 > Copyright (C) 1985-2017 Intel Corporation. All rights reserved. > icpc --version > icpc (ICC) 18.0.1 20171018 > Copyright (C) 1985-2017 Intel Corporation. All rights reserved. > icc --version > icc (ICC) 18.0.1 20171018 > Copyright (C) 1985-2017 Intel Corporation. All rights reserved. > Reporter: Sam Trahan > Priority: Major > > The ThreadTest1 hangs forever when Xerces-C 3.2.2 is compiled using the Intel > compiler versions 17.0.5.239 or 18.0.1.163. Running ThreadTest1 directly in > gdb reveals that all ten threads exit, and main() is stuck in a wait loop > calling sleep() forever. > export CXX=icpc > export CFLAGS='-fp-model precise' > export CXXFLAGS='-fp-model precise' > export CC=icc > export CPP="icc -E" > export CXXCPP="icpc -E" > ./configure --prefix=/some/path > make > make check > Changing the CXXFLAGS to this does not help: > export CXXFLAGS='-fp-model precise -std=c++11' > The last bit of output from "make check:" > make[3]: Entering directory `/a-very-long-path/.../tests' > PASS: scripts/DOMTest > PASS: scripts/DOMMemTest > PASS: scripts/RangeTest > PASS: scripts/DOMTraversalTest > XFAIL: scripts/XSerializerTest > PASS: scripts/XSerializerTest1 > PASS: scripts/XSerializerTest2 > PASS: scripts/XSerializerTest3 > PASS: scripts/XSerializerTest4 > PASS: scripts/XSerializerTest5 > PASS: scripts/XSValueTest > XFAIL: scripts/InitTermTest > PASS: scripts/InitTermTest1 > PASS: scripts/InitTermTest2 > PASS: scripts/InitTermTest3 > XFAIL: scripts/ThreadTest > The test hangs at that XFAIL: line. The "ps" command reveals ThreadTest1 is > running: > /a-very-long-path/.../tests/.libs/lt-ThreadTest -parser=sax -v=never -quiet > -threads 10 -time 20 personal.xml -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: c-dev-unsubscr...@xerces.apache.org For additional commands, e-mail: c-dev-h...@xerces.apache.org