Public bug reported:

Hi,
I've found this to fail to build in update-excuses.
It turns out that on s390x it actually builds fine, but the following 
self-tests that are executed make konclude run into a segfault.

Example failing log:
https://launchpadlibrarian.net/542007740/buildlog_ubuntu-impish-s390x.konclude_0.7.0+1137~dfsg-1_BUILDING.txt.gz

it seems that in this code
Source/Reasoner/Triples/CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData.cpp:
                        template<class T>
                        
CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<T>* 
CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<T>::addBatchLinker(T* 
linker) {
                                if (linker) {
                                        mBatchLinker = 
linker->append(mBatchLinker);
                                }
                                if (!mLastBatchLinker && mBatchLinker) {
                                        mLastBatchLinker = 
mBatchLinker->getLastListLink();
                                }
                                return this;
                        }

Somehow mBatchLinker gets corrupted.

Repro after building the code (e.g. via debuild):
$ Release/Konclude sparqlfile --verbose -s 
Tests/lubm-univ-bench-sparql-load-and-query-test.sparql -o 
Tests/query-answers.xml -c Configs/querying-config.xml

Backtrace:
(gdb) run sparqlfile --verbose -s 
Tests/lubm-univ-bench-sparql-load-and-query-test.sparql -o 
Tests/query-answers.xml -c Configs/querying-config.xml
Starting program: /home/ubuntu/konclude-0.7.0+1137~dfsg/Release/Konclude 
sparqlfile --verbose -s Tests/lubm-univ-bench-sparql-load-and-query-test.sparql 
-o Tests/query-answers.xml -c Configs/querying-config.xml
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/s390x-linux-gnu/libthread_db.so.1".
[New Thread 0x3fff6bff870 (LWP 38353)]
[New Thread 0x3fff5a7f870 (LWP 38354)]
[New Thread 0x3fff4fff870 (LWP 38355)]
[New Thread 0x3fff45ef870 (LWP 38356)]
[New Thread 0x3fff33ff870 (LWP 38357)]
[New Thread 0x3fff2bfe870 (LWP 38358)]
[New Thread 0x3fff1dff870 (LWP 38359)]
{info} 09:23:57:915 >> Starting Konclude ...
{info} 09:23:57:915 >> Konclude - Uni Ulm Parallel Reasoner
{info} 09:23:57:915 >> Reasoner for the SROIQV(D) Description Logic, 64-bit, 
Version v0.7.0-1137 - e414f879 (Apr 19 2021)

{info} 09:23:57:918 >> Processing OWLlink request from file 
'Configs/querying-config.xml'.
[New Thread 0x3fff01ff870 (LWP 38360)]
{info} 09:23:57:918 >> Initializing reasoner. Creating calculation context.
[New Thread 0x3ffef3ff870 (LWP 38361)]
[New Thread 0x3ffee96f870 (LWP 38362)]
[New Thread 0x3ffed9ff870 (LWP 38363)]
[New Thread 0x3ffecfef870 (LWP 38364)]
[New Thread 0x3ffec7ee870 (LWP 38365)]
[New Thread 0x3ffeb9ff870 (LWP 38366)]
[New Thread 0x3ffea8ff870 (LWP 38367)]
{info} 09:23:57:920 >> Processing SPARQL request from file 
'Tests/lubm-univ-bench-sparql-load-and-query-test.sparql'.
[New Thread 0x3ffe997f870 (LWP 38368)]
[New Thread 0x3ffe917e870 (LWP 38369)]
{info} 09:23:57:920 >> Read XML content in 0 ms.
[New Thread 0x3ffe79ff870 (LWP 38370)]
{info} 09:23:57:921 >> Reasoner initialized with 1 processing unit(s).
{warning} 09:23:57:922 >> Annotations are currently not handled.
{info} 09:23:57:923 >> Ontology parsed in 1 ms.
{info} 09:23:58:617 >> Ontology parsed in 693 ms.
{info} 09:23:58:618 >> SPARQL Query parsed in 0 ms.
{info} 09:23:58:619 >> Preprocessing ontology 
'http://Konclude.com/Ontologies/UnnamedOntologies/0/8e919ad9-d406-429f-a77d-82acede11398/'.
[New Thread 0x3ffddaff870 (LWP 38371)]

Thread 20 "QThread" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x3ffddaff870 (LWP 38371)]
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>::addBatchLinker
 (
    linker=0x3ffdc26dbb8, this=0x1a600000000) at 
Source/Reasoner/Triples/CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData.cpp:59
59 mBatchLinker = linker->append(mBatchLinker);
(gdb) p mBatchLinker
Cannot access memory at address 0x1a6000000a8
(gdb) p linker
$1 = 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker 
*) 0x3ffdc26dbb8
(gdb) bt
#0  
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>::addBatchLinker
 (
    linker=0x3ffdc26dbb8, this=0x1a600000000) at 
Source/Reasoner/Triples/CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData.cpp:59
#1  
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>::addBatchLinker(long
 long, 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker*) 
[clone .isra.0] (this=<optimized out>, index=<optimized out>, 
linker=0x3ffdc26dbb8)
    at 
Source/Reasoner/Triples/CRedlandStoredTriplesIndexingBaseBatchLinkerVector.cpp:72
#2  0x000002aa006202b2 in operator() (batchData=@0x3ffdca00020: 0x3ffdca700f8, 
__closure=0x3ffdceb3a60)
    at 
Source/Reasoner/Triples/CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer.cpp:594
#3  
std::__invoke_impl<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer::indexTriples(Konclude::Reasoner::Triples::CRedlandStoredTriplesData*,
 librdf_node*, librdf_node*, 
Konclude::Reasoner::Ontology::CConcreteOntology*)::<lambda(const 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const&)>&, const 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const&> (__f=...) at /usr/include/c++/10/bits/invoke.h:60
#4  
std::__invoke_r<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer::indexTriples(Konclude::Reasoner::Triples::CRedlandStoredTriplesData*,
 librdf_node*, librdf_node*, 
Konclude::Reasoner::Ontology::CConcreteOntology*)::<lambda(const 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const&)>&, const 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const&> (__fn=...) at /usr/include/c++/10/bits/invoke.h:142
#5  
std::_Function_handler<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>(const
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const&), 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer::indexTriples(Konclude::Reasoner::Triples::CRedlandStoredTriplesData*,
 librdf_node*, librdf_node*, 
Konclude::Reasoner::Ontology::CConcreteOntology*)::<lambda(const 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const&)> >::_M_invoke(const std::_Any_data &, const 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 * const&) (__functor=..., __args#0=@0x3ffdca00020: 0x3ffdca700f8) at 
/usr/include/c++/10/bits/std_function.h:292
#6  0x000002aa00626978 in 
std::function<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 const* 
const&)>::operator()(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 const* const&) const (
    __args#0=@0x3ffdca00020: 0x3ffdca700f8, this=0x3ffdcd01ef8) at 
/usr/include/c++/10/bits/std_function.h:622
#7  
QtConcurrent::MappedReducedKernel<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const*, 
std::function<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 const* const&)>, std::function<void 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>&,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 const&)>, QtConcurrent::ReduceKernel<std::function<void 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>&,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 const&)>, 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 > 
>::runIterations(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const*, int, int, 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>*)
 (this=0x3ffdcd01e00, sequenceBeginIterator=<optimized out>, 
beginIndex=<optimized out>, endIndex=<optimized out>)
    at /usr/include/s390x-linux-gnu/qt5/QtConcurrent/qtconcurrentmapkernel.h:131
#8  0x000002aa00622f50 in 
QtConcurrent::IterateKernel<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const*, 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 >--Type <RET> for more, q to quit, c to continue without paging--
::forThreadFunction (this=0x3ffdcd01e00) at 
/usr/include/s390x-linux-gnu/qt5/QtConcurrent/qtconcurrentiteratekernel.h:255
#9  
QtConcurrent::IterateKernel<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>*
 const*, 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 >::threadFunction (
    this=0x3ffdcd01e00) at 
/usr/include/s390x-linux-gnu/qt5/QtConcurrent/qtconcurrentiteratekernel.h:217
#10 0x000003fffd882f66 in QtConcurrent::ThreadEngineBase::startBlocking() () 
from /lib/s390x-linux-gnu/libQt5Concurrent.so.5
#11 0x000002aa0062aebe in 
QtConcurrent::ThreadEngine<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 >::startBlocking (this=0x3ffdcd01e00) at 
/usr/include/s390x-linux-gnu/qt5/QtConcurrent/qtconcurrentthreadengine.h:150
#12 
QtConcurrent::ThreadEngineStarter<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 >::startBlocking (this=<optimized out>) at 
/usr/include/s390x-linux-gnu/qt5/QtConcurrent/qtconcurrentthreadengine.h:239
#13 
QtConcurrent::blockingMappedReduced<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>,
 
std::function<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 const* const&)>, std::function<void 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>&,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 const&)> 
>(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 const&, 
std::function<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVectorData<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinker>
 const* const&)>, std::function<void 
(Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>&,
 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseBatchLinkerVector<Konclude::Reasoner::Triples::CRedlandStoredTriplesIndexingBaseResolvingLinker>
 const&)>, QFlags<QtConcurrent::ReduceOption>) (options=..., reduce=..., 
map=..., sequence=...) at 
/usr/include/s390x-linux-gnu/qt5/QtConcurrent/qtconcurrentmap.h:168
#14 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer::indexTriples
 (this=<optimized out>, redlandTriplesData=<optimized out>,
    rdfTypePredicate=<optimized out>, namedIndividualObject=<optimized out>, 
updateConcreteOntology=<optimized out>)
    at 
Source/Reasoner/Triples/CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer.cpp:606
#15 0x000002aa006288dc in 
Konclude::Reasoner::Triples::CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer::indexABoxIndividuals
 (this=0x3ffdc9d0180,
    updateConcreteOntology=<optimized out>, ontologyTripleData=0x3fff07023d0) 
at 
Source/Reasoner/Triples/CRedlandStoredTriplesIndividualAssertionConvertionQtConcurrentIndexer.cpp:272
#16 0x000002aa0054a0d6 in 
Konclude::Reasoner::Preprocess::CRequirementConfigPreprocessingThread::createNextTest
 (this=0x3ffef4d0500)
    at Source/Reasoner/Preprocess/CRequirementConfigPreprocessingThread.cpp:154
#17 0x000002aa0053efb6 in 
Konclude::Reasoner::Preprocess::CPreprocessingThread::doNextPendingTests 
(this=0x3ffef4d0500) at Source/Reasoner/Preprocess/CPreprocessingThread.cpp:93
#18 0x000002aa00540c76 in 
Konclude::Reasoner::Preprocess::CPreprocessingThread::processCustomsEvents 
(this=0x3ffef4d0500, type=<optimized out>, event=<optimized out>)
    at Source/Reasoner/Preprocess/CPreprocessingThread.cpp:175
#19 0x000002aa0011875a in Konclude::Concurrent::CThread::event 
(this=0x3ffef4d0508, event=0x3ffef550800) at Source/Concurrent/CThread.cpp:187
#20 0x000003fffd56c3e0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) 
() from /lib/s390x-linux-gnu/libQt5Core.so.5
#21 0x000003fffd575630 in QCoreApplicationPrivate::sendPostedEvents(QObject*, 
int, QThreadData*) () from /lib/s390x-linux-gnu/libQt5Core.so.5
#22 0x000003fffd5e7ef6 in ?? () from /lib/s390x-linux-gnu/libQt5Core.so.5
#23 0x000003fffb7e9c20 in g_main_context_dispatch () from 
/lib/s390x-linux-gnu/libglib-2.0.so.0
#24 0x000003fffb7ea2a4 in g_main_context_iteration () from 
/lib/s390x-linux-gnu/libglib-2.0.so.0
#25 0x000003fffd5e70dc in 
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () 
from /lib/s390x-linux-gnu/libQt5Core.so.5
#26 0x000003fffd56895e in 
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from 
/lib/s390x-linux-gnu/libQt5Core.so.5
#27 0x000003fffd2c11d4 in QThread::exec() () from 
/lib/s390x-linux-gnu/libQt5Core.so.5
#28 0x000002aa00113f02 in Konclude::Concurrent::CThread::run 
(this=0x3ffef4d0508) at Source/Concurrent/CThread.cpp:133
#29 0x000003fffd2c2120 in ?? () from /lib/s390x-linux-gnu/libQt5Core.so.5
#30 0x000003fffc2092f6 in start_thread (arg=0x3ffddaff870) at 
pthread_create.c:481
--Type <RET> for more, q to quit, c to continue without paging--
#31 0x000003fffcd21bc6 in thread_start () at 
../sysdeps/unix/sysv/linux/s390/s390-64/clone.S:65

I've reported this upstream but didn't find an externally reachable bug tracker.
Therefore I've asked them to ping back here on this bug if they find anything 
we could fix.

** Affects: konclude (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: update-excuse

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1931229

Title:
  0.7 is FTFBS on s390x in Impish (segfault)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/konclude/+bug/1931229/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to