ExtractSurface causes the whole pipeline to execute twice when using MPI

Hi all,

I have noticed that sometimes Paraview executes twice some filters even when it is not needed when using MPI. I have noticed that this happens when the ExtractSurface filter is present in the Pipeline.

I use MPI 4.0.3 and Paraview 5.10.1 to which I added a line of code:

std::cout<< "In Here"<<std::endl;

The line is added at the beginning of the RequestData function of the file VTK/Filters/Core/vtkThreshold.cxx and is only here to show that Threshold executes twice.

Here is my pipeline (with the file here (392.4 KB)):

Wavelet > Threshold > ExtractSurface

Both Threshold and ExtractSurface are visible. I then execute this on Paraview, using:

mpirun -n 2 pvserver



When this is executed, I can see that the message “In Here” appears 4 times, even though it is only supposed to be shown twice. Threshold is therefore executed twice. This also happens when the Pipeline is in Python code and executed with pvbatch. However, if executed on only one process, the bug doesn’t appear.

This is a problem for me as my Paraview plugin cashes information and the second execution can cause errors.

Thanks for any help.

Confirmed, this is really strange.

Could you open an issue ?


Thank you for your reply.
I just created the issue here: https://gitlab.kitware.com/paraview/paraview/-/issues/21795