Skip to content

Opening ADIOS2 bp files leads to core dump

The paraview package currently does not support opening the ADIOS2 bp file format.

To provide some testing data, compile test.cpp with

g++ -std=c++17 test.cpp -l adios2_cxx11

Then run ./a.out which creates the test.bp directory with synthetic data. Run paraview, select Open in the menu and navigate to the test.bp directory. Upon opening, Paraview will dump core:

/usr/include/c++/13.2.1/bits/stl_vector.h:1125: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp = int; _Alloc = std::allocator<int>; reference = int&; size_type = long unsigned int]: Assertion '__n < this->size()' failed.

Loguru caught a signal: SIGABRT
Stack trace:
46      0x558b6dbad085 /opt/paraview/bin/paraview(+0xc085) [0x558b6dbad085]
45      0x7f23aa8afd8a __libc_start_main + 138
44      0x7f23aa8afcd0 /usr/lib/libc.so.6(+0x27cd0) [0x7f23aa8afcd0]
43      0x558b6dbabe2f /opt/paraview/bin/paraview(+0xae2f) [0x558b6dbabe2f]
42      0x7f23a8a9b1f3 QCoreApplication::exec() + 147
41      0x7f23a8a99d54 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 308
40      0x7f23a8ae9e0c QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 108
39      0x7f23a150c162 g_main_context_iteration + 50
38      0x7f23a156c367 /usr/lib/libglib-2.0.so.0(+0xb8367) [0x7f23a156c367]
37      0x7f23a150df69 /usr/lib/libglib-2.0.so.0(+0x59f69) [0x7f23a150df69]
36      0x7f237f72f570 /usr/lib/libQt5XcbQpa.so.5(+0x65570) [0x7f237f72f570]
35      0x7f23a8f2a6f5 QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 181
34      0x7f23a8f45542 QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) + 146
33      0x7f23a8f2be28 QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) + 376
32      0x7f23a8f77425 QShortcutMap::tryShortcut(QKeyEvent*) + 133
31      0x7f23a8f77036 QShortcutMap::dispatchEvent(QKeyEvent*) + 726
30      0x7f23a8a9b048 QCoreApplication::notifyInternal2(QObject*, QEvent*) + 296
29      0x7f23a9d788ff QApplicationPrivate::notify_helper(QObject*, QEvent*) + 143
28      0x7f23a9d716de QAction::event(QEvent*) + 78
27      0x7f23a9d7160b QAction::activate(QAction::ActionEvent) + 187
26      0x7f23a9d6bbb7 QAction::triggered(bool) + 71
25      0x7f23a8ad0113 /usr/lib/libQt5Core.so.5(+0x2d0113) [0x7f23a8ad0113]
24      0x7f23aa4f1b1b /opt/paraview/lib/libpqApplicationComponents.so.1(+0xf1b1b) [0x7f23aa4f1b1b]
23      0x7f23aa5899b2 pqLoadDataReaction::loadData() + 50
22      0x7f23aa5892bc pqLoadDataReaction::loadData(QSet<QPair<QString, QString> > const&) + 5836
21      0x7f23aa584cd5 pqLoadDataReaction::loadFilesForSupportedTypes(QList<QStringList>) + 1461
20      0x7f23aa58ee5f pqLoadDataReaction::loadData(QStringList const&, QString const&, QString const&, pqServer*) + 1615
19      0x7f23aa58e32a pqLoadDataReaction::loadData(QList<QStringList> const&, QString const&, QString const&, pqServer*) + 1946
18      0x7f23aa58bd67 pqLoadDataReaction::DetermineFileReader(QString const&, pqServer*, vtkSMReaderFactory*, QPair<QString, QString>&) + 151
17      0x7f23a859ccf4 vtkSMReaderFactory::GetReaders(char const*, vtkSMSession*) + 324
16      0x7f23a859c7ee vtkSMReaderFactory::vtkInternals::vtkValue::CanReadFile(char const*, bool, std::vector<std::string> const&, vtkSMSession*, bool) + 334
15      0x7f23a859c40d vtkSMReaderFactory::CanReadFile(char const*, vtkSMProxy*) + 365
14      0x7f23a8578ea2 vtkSMProxy::UpdateVTKObjects() + 50
13      0x7f23a85c4dea vtkSMSourceProxy::CreateVTKObjects() + 26
12      0x7f23a85797a1 vtkSMProxy::CreateVTKObjects() + 1201
11      0x7f23a84b9ad8 vtkPVSessionBase::PushState(paraview_protobuf::Message*) + 88
10      0x7f23a84e4c90 vtkSIProxy::Push(paraview_protobuf::Message*) + 64
9       0x7f23a84e4829 vtkSIProxy::InitializeAndCreateVTKObjects(paraview_protobuf::Message*) + 2345
8       0x7f23a84e9618 vtkSISourceProxy::ReadXMLAttributes(vtkPVXMLElement*) + 24
7       0x7f23a84dea8b vtkSIProxy::ReadXMLAttributes(vtkPVXMLElement*) + 715
6       0x7f23a84e5121 vtkSIProxy::ReadXMLProperty(vtkPVXMLElement*) + 385
5       0x7f23a84f0070 vtkSIStringVectorProperty::ReadXMLAttributes(vtkSIProxy*, vtkPVXMLElement*) + 2400
4       0x7f23a36dd3b2 /usr/lib/libstdc++.so.6(+0xdd3b2) [0x7f23a36dd3b2]
3       0x7f23aa8ae4b8 abort + 215
2       0x7f23aa8c6668 raise + 24
1       0x7f23aa91683c /usr/lib/libc.so.6(+0x8e83c) [0x7f23aa91683c]
0       0x7f23aa8c6710 /usr/lib/libc.so.6(+0x3e710) [0x7f23aa8c6710]
(   4.521s) [paraview        ]                       :0     FATL| Signal: SIGABRT
Aborted (core dumped)

Note that opening the data with the upstream build of paraview works fine.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information