I am using large parts of ParaView’s libraries in Tomviz, and we run many Python operations in background threads. As an application we have no use for the tracing functionality, but we came to realize it is always there recording many ParaView API calls. The Python GIL causes many locks when calling API if there are background tasks running due to the use of
vtkSMTrace.cxx. I just tried patching this file locally to enable Python code if
PARAVIEW_ENABLE_PYTHON_TRACE rather than reusing
In initial testing it looks like everything is nicely contained in this file, would the ParaView community be open to the addition of an advanced CMake flag to disable Python tracing even when Python wrapping is enabled, or is there a way to disable tracing altogether that I simply missed and should have skipped this whole exercise in the first place? I know ParaView may not want to build in this way, but it seems reasonable to be able to disable this functionality for consumers of the APIs who are not making use of it and working around GIL issues.