vtm file crashes with slice
We have a semi repeatable crash when slicing a vtm dataset. This can frequently be replicated, but unfortunately, it appears to be somewhat random with regards to when it occurs. It also appears totally random which cells internally show the issue. Here is how to replicate:
- ParaView 5.8.0, or master, builtin server, Linux.
- Load dataset named vtm_only_5888_elements.vtm. Variables don't matter. Apply.
- Although it shouldn't matter, -Z.
- Slice. Origin: 0,0,0. Normal: 0,0,1. Apply. This should crash. If it doesn't, delete the slice and create it again.
It is crashing in void vtkPolyData::ComputeBounds(), at
for (auto cellId = 0; cellId < numCells; ++cellId)
{
cellA[ca]->GetCellAtId(cellId, npts, pts);
for (ptIdx = 0; ptIdx < npts; ++ptIdx)
{
>>>> ptUses[pts[ptIdx]] = 1;
}
}
where cellA[ca]->GetCellAtId (3 lines above) is returning pts[ptIdx] == bazillions, which is causing a set fault accessing the ptUsers array.
Directions on getting the dataset will be sent to Utkarsh and Berk.
Here is a stack trace:
73 0x408109 ./paraview() [0x408109]
72 0x7f63b8199545 __libc_start_main + 245
71 0x4105cb ./paraview() [0x4105cb]
70 0x7f63b5b08364 QCoreApplication::exec() + 132
69 0x7f63b5affada QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 298
68 0x7f63b5b575df QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 95
67 0x7f63a2fbe45c g_main_context_iteration + 44
65 0x7f63a2fbe049 g_main_context_dispatch + 345
64 0x7f6384af3450 /snip/plugins/platforms/../../lib/libQt5XcbQpa.so.5(+0x86450) [0x7f6384af3450]
63 0x7f63b5ea5a9b QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 171
62 0x7f63b5ecc205 QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) + 261
61 0x7f63b5eca8bb QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) + 1739
60 0x7f63b5b014c8 QCoreApplication::notifyInternal2(QObject*, QEvent*) + 280
59 0x7f63b76f19c4 QApplication::notify(QObject*, QEvent*) + 628
58 0x7f63b76ea64c QApplicationPrivate::notify_helper(QObject*, QEvent*) + 156
57 0x7f63b7742aa1 /snip/bin/../lib/libQt5Widgets.so.5(+0x1b2aa1) [0x7f63b7742aa1]
56 0x7f63b774064b /snip/bin/../lib/libQt5Widgets.so.5(+0x1b064b) [0x7f63b774064b]
55 0x7f63b76f0f6f QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) + 447
54 0x7f63b5b014c8 QCoreApplication::notifyInternal2(QObject*, QEvent*) + 280
53 0x7f63b76f1f1f QApplication::notify(QObject*, QEvent*) + 1999
52 0x7f63b76ea64c QApplicationPrivate::notify_helper(QObject*, QEvent*) + 156
51 0x7f63b77263c8 QWidget::event(QEvent*) + 472
50 0x7f63b77d6714 QAbstractButton::mouseReleaseEvent(QMouseEvent*) + 212
49 0x7f63b77d654a /snip/bin/../lib/libQt5Widgets.so.5(+0x24654a) [0x7f63b77d654a]
48 0x7f63b77d522a /snip/bin/../lib/libQt5Widgets.so.5(+0x24522a) [0x7f63b77d522a]
47 0x7f63b77d5042 QAbstractButton::clicked(bool) + 50
46 0x7f63b5b2e9da QMetaObject::activate(QObject*, int, int, void**) + 1898
45 0x7f63b6f8ef56 /snip/bin/../lib/libpqComponents-pv5.8.so.1(+0x344f56) [0x7f63b6f8ef56]
44 0x7f63b6ece451 pqPropertiesPanel::apply() + 621
43 0x7f63b6f8f627 pqPropertiesPanel::applied(pqProxy*) + 71
42 0x7f63b5b2e9da QMetaObject::activate(QObject*, int, int, void**) + 1898
41 0x7f63b7e0350b /snip/bin/../lib/libpqApplicationComponents-pv5.8.so.1(+0x23f50b) [0x7f63b7e0350b]
40 0x7f63b7cc270a pqApplyBehavior::onApplied(pqProxy*) + 78
39 0x7f63b7cc27cf pqApplyBehavior::applied(pqPropertiesPanel*, pqProxy*) + 117
38 0x7f63b7cc33dd pqApplyBehavior::showData(pqPipelineSource*, pqView*) + 359
37 0x7f63a9afae60 vtkSMParaViewPipelineControllerWithRendering::ShowInPreferredView(vtkSMSourceProxy*, int, vtkSMViewProxy*) + 612
36 0x7f63a9afba6c vtkSMParaViewPipelineControllerWithRendering::UpdatePipelineBeforeDisplay(vtkSMSourceProxy*, int, vtkSMViewProxy*) + 642
35 0x7f63b4df1a19 vtkSMSourceProxy::UpdatePipeline(double) + 183
34 0x7f63b4df2063 vtkSMSourceProxy::PostUpdateData(bool) + 71
33 0x7f63b4d82643 vtkSMProxy::PostUpdateData(bool) + 231
32 0x7f63ad9dbf85 vtkObject::InvokeEvent(unsigned long, void*) + 61
31 0x7f63ad9dba78 /snip/bin/../lib/libvtkCommonCore-pv5.8.so.1(+0x70aa78) [0x7f63ad9dba78]
30 0x7f63ad802ea7 vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*) + 67
29 0x7f63b53906b6 /snip/bin/../lib/libvtkGUISupportQt-pv5.8.so.1(+0x596b6) [0x7f63b53906b6]
28 0x7f63b539071a /snip/bin/../lib/libvtkGUISupportQt-pv5.8.so.1(+0x5971a) [0x7f63b539071a]
27 0x7f63b53a210b /snip/bin/../lib/libvtkGUISupportQt-pv5.8.so.1(+0x6b10b) [0x7f63b53a210b]
26 0x7f63b5b2e9da QMetaObject::activate(QObject*, int, int, void**) + 1898
25 0x7f63b677c043 /snip/bin/../lib/libpqCore-pv5.8.so.1(+0x157043) [0x7f63b677c043]
24 0x7f63b6722247 pqPipelineSource::dataUpdated() + 31
23 0x7f63b677cb0b pqPipelineSource::dataUpdated(pqPipelineSource*) + 71
22 0x7f63b5b2e9da QMetaObject::activate(QObject*, int, int, void**) + 1898
21 0x7f63b6f85baa /snip/../lib/libpqComponents-pv5.8.so.1(+0x33bbaa) [0x7f63b6f85baa]
20 0x7f63b6e182f1 pqDataInformationModel::dataUpdated(pqPipelineSource*) + 237
19 0x7f63b67138ef pqOutputPort::getDataInformation() const + 81
18 0x7f63b4df219e vtkSMSourceProxy::GetDataInformation(unsigned int) + 130
17 0x7f63b4d555c2 vtkSMOutputPort::GetDataInformation() + 218
16 0x7f63b4d55969 vtkSMOutputPort::GatherDataInformation() + 463
15 0x7f63b4d80cec vtkSMProxy::GatherInformation(vtkPVInformation*) + 340
14 0x7f63b4c5ce52 vtkPVSessionBase::GatherInformation(unsigned int, vtkPVInformation*, unsigned int) + 62
13 0x7f63b4c6114f vtkPVSessionCore::GatherInformation(unsigned int, vtkPVInformation*, unsigned int) + 141
12 0x7f63b4c61077 vtkPVSessionCore::GatherInformationInternal(vtkPVInformation*, unsigned int) + 485
11 0x7f63b2474e00 vtkPVDataInformation::CopyFromObject(vtkObject*) + 926
10 0x7f63b2473aed vtkPVDataInformation::CopyFromCompositeDataSet(vtkCompositeDataSet*) + 35
9 0x7f63b2473704 vtkPVDataInformation::CopyFromCompositeDataSetInitialize(vtkCompositeDataSet*) + 74
8 0x7f63b246abe1 vtkPVCompositeDataInformation::CopyFromObject(vtkObject*) + 689
7 0x7f63b2474e00 vtkPVDataInformation::CopyFromObject(vtkObject*) + 926
6 0x7f63b2473b46 vtkPVDataInformation::CopyFromCompositeDataSet(vtkCompositeDataSet*) + 124
5 0x7f63b24735f6 vtkPVDataInformation::AddFromMultiPieceDataSet(vtkCompositeDataSet*) + 190
4 0x7f63b2474ea3 vtkPVDataInformation::CopyFromObject(vtkObject*) + 1089
3 0x7f63b2473f97 vtkPVDataInformation::CopyFromDataSet(vtkDataSet*) + 565
2 0x7f63aeff16a7 vtkDataSet::GetBounds() + 37
1 0x7f63af1af662 vtkPolyData::ComputeBounds() + 656
0 0x7f63b81ad3f0 /lib64/libc.so.6(+0x363f0) [0x7f63b81ad3f0]
Edited by W. Alan Scott