ParticleTracer segfault with distributed server and non-distributed input
ParticleTracer segfault with distributed server and non-distributed input
Steps to reproduce:
mpirun -np 2 ./bin/pvserver
- run ParaView, connect to server
- Open flow.*.vtk (data is not distributed, all on rank 0)
- Create a point source anywhere
- Create a particle tracer on the flow and select point source as seed
- Apply
- rank 1 segfault
( 114.000s) [pvserver.1 ]vtkParticleTracerBase.c:448 ERR| vtkPParticleTracer (0x555557f94c80): Couldn't find vector array
( 114.000s) [pvserver.1 ]vtkParticleTracerBase.c:906 ERR| vtkPParticleTracer (0x555557f94c80): InitializeInterpolator failed
Thread 1 "pvserver" received signal SIGSEGV, Segmentation fault.
vtkParticleTracerBase::GetCacheDataTime (this=0x555557f94c80, i=0) at /home/glow/dev/paraview/pv1/src/VTK/Filters/FlowPaths/vtkParticleTracerBase.cxx:1546
1546 return this->CachedData[i]->GetInformation()->Get(vtkDataObject::DATA_TIME_STEP());
(gdb) bt
#0 vtkParticleTracerBase::GetCacheDataTime (this=0x555557f94c80, i=0)
at /home/glow/dev/paraview/pv1/src/VTK/Filters/FlowPaths/vtkParticleTracerBase.cxx:1546
#1 0x00007fffeca6bf0f in vtkParticleTracerBase::Execute (this=0x555557f94c80,
inputVector=0x5555586fb1f0)
at /home/glow/dev/paraview/pv1/src/VTK/Filters/FlowPaths/vtkParticleTracerBase.cxx:887
#2 0x00007fffed3b0f86 in vtkPParticleTracerBase::Execute (
this=0x555557f94c80, inputVector=0x5555586fb1f0)
at /home/glow/dev/paraview/pv1/src/VTK/Filters/ParallelFlowPaths/vtkPParticleTracerBase.cxx:75
#3 0x00007fffeca6ebca in vtkParticleTracerBase::RequestData (
this=0x555557f94c80, request=0x555558b42320, inputVector=0x5555586fb1f0,
outputVector=0x555557ca16e0)
at /home/glow/dev/paraview/pv1/src/VTK/Filters/FlowPaths/vtkParticleTracerBase.cxx:1192
#4 0x00007fffeca6710e in vtkParticleTracerBase::ProcessRequest (
this=0x555557f94c80, request=0x555558b42320, inputVector=0x5555586fb1f0,
outputVector=0x555557ca16e0)
at /home/glow/dev/paraview/pv1/src/VTK/Filters/FlowPaths/vtkParticleTracerBase.cxx:230
Of course, using a RedistributeDataSet before the ParticleTracer fixes the issue.
Edited by Mathieu Westphal (Kitware)