[vtk-developers] Updated VTK Breaks ParaView tests

David Gobbi david.gobbi at gmail.com
Tue Nov 24 13:13:06 EST 2015


Hi Mathieu,

The errors look similar to ones that were fixed by this commit:
https://gitlab.kitware.com/paraview/paraview/commit/8a6e6fe9

At the very root, bugs such as the ones fixed by the above commit
are caused by type checks of the form "type{x) == y".   Such type
checks should almost always be replaced by calls to "isinstance()"
or "issubclass()".

I did a quick grep through the ParaView source code to find places
where type() is being used to do type checks, and I found several.
I'm pretty sure that at least some of these are bugs:

Wrapping/Python/paraview/coprocessing.py:54:        if type(frequencies) !=
dict:
Wrapping/Python/paraview/data_exploration.py:204:                    if
type(value) == type("String"):
Wrapping/Python/paraview/extract_selection.py:88:            (query,
type(maskArray))
Wrapping/Python/paraview/servermanager.py:654:        if not type(self) is
Property:
Wrapping/Python/paraview/servermanager.py:671:        if type(self) is
Property:
Wrapping/Python/paraview/servermanager.py:888:        if type(value) == str:
Wrapping/Python/paraview/servermanager.py:2295:    elif type(arg1) is
types.IntType:
Wrapping/Python/paraview/servermanager.py:3038:    if not type(val) == int:
Wrapping/Python/paraview/simple.py:740:    if type(filename) == list:
Wrapping/Python/paraview/smtrace.py:397:            if not type(prop) ==
sm.Property:
Wrapping/Python/paraview/smtrace.py:490:        assert type(propertyname)
== str
Wrapping/Python/paraview/smtrace.py:1112:            return "'%s'" % x if
type(x) == str else x
Web/Applications/FileViewer/server/pv_web_file_loader.py:136:        if
type(files) == list:
Web/Python/paraview/web/helper.py:249:            if type(data) in
allowedTypes:
Web/Python/paraview/web/helper.py:272:            elif type(prop) ==
ProxyProperty:
Web/Python/paraview/web/helper.py:297:             if
property.GetDomain('proxy_list') and len(value) == 1 and type(value[0]) ==
str:
Web/Python/paraview/web/helper.py:315:    if type(value) == unicode:
Web/Python/paraview/web/helper.py:317:    if type(value) == list:
Web/Python/paraview/web/helper.py:349:       if
type(proxy.GetProperty(property)) == ProxyProperty:
Web/Python/paraview/web/protocols.py:1192:                if type(prop) ==
ProxyProperty or type(prop) == InputProperty:
Web/Python/paraview/web/protocols.py:1590:        if type(relativePath) ==
list:
Web/Python/paraview/web/protocols.py:1933:        if type(relativePath) ==
list:
Web/Python/paraview/web/protocols.py:1962:                if
type(lut['name']) == unicode:
Web/Python/paraview/web/pv_web_catalyst.py:202:        if type(files) ==
list:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:54:    elif
type(array) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:74:    if
type(array1) == dsa.VTKCompositeDataArray and type(val2) ==
dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:83:    elif
type(array1) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:112:        if
type(array) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:132:        if
type(ds) == dsa.CompositeDataSet:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:176:    if
type(array) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:341:    t =
type(array)
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:700:        if
type(array) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:727:        if
type(array) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:753:    if
type(array) == dsa.VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/algorithms.py:776:    if
type(arrayx) == dsa.VTKCompositeDataArray and type(arrayy) ==
dsa.VTKCompositeDataArray and (type(arrayz) == dsa.VTKCompositeDataArray or
arrayz is None):
VTK/Wrapping/Python/vtk/numpy_interface/dataset_adapter.py:515:        if
type(index) == VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/dataset_adapter.py:534:        if
type(other) == VTKCompositeDataArray:
VTK/Wrapping/Python/vtk/numpy_interface/dataset_adapter.py:555:        if
type(other) == VTKCompositeDataArray:

 - David





On Tue, Nov 24, 2015 at 4:04 AM, Mathieu Westphal <
mathieu.westphal at kitware.com> wrote:

> Hello
>
> I am trying to update VTK in ParaView in order to integrate my GIL ensured
> changes, but a lot of python Tests are failing with paraview, with the
> following error :
>
> Traceback (most recent call last): File
> "/home/kitware/Dashboards/buildslave/paraview-amber8-linux-static-release_mpi_osmesa_python/source/ParaViewCore/ServerManager/Default/Testing/Python/MultiView.py",
> line 9, in <module> Show() File
> "/home/kitware/Dashboards/buildslave/paraview-amber8-linux-static-release_mpi_osmesa_python/build/lib/site-packages/paraview/simple.py",
> line 400, in Show rep = controller.Show(proxy, proxy.Port, view) File
> "/home/kitware/Dashboards/buildslave/paraview-amber8-linux-static-release_mpi_osmesa_python/build/lib/site-packages/paraview/servermanager.py",
> line 158, in __getattr__ return getattr(self.SMController, name)
> AttributeError: 'vtkPVServerManagerCorePython.vtkSMParaViewPipeline' object
> has no attribute 'Show' Traceback (most recent call last): File
> "/home/kitware/Dashboards/buildslave/paraview-amber8-linux-static-release_mpi_osmesa_python/source/ParaViewCore/ServerManager/Default/Testing/Python/MultiView.py",
> line 9, in <module> Show() File
> "/home/kitware/Dashboards/buildslave/paraview-amber8-linux-static-release_mpi_osmesa_python/build/lib/site-packages/paraview/simple.py",
> line 400, in Show rep = controller.Show(proxy, proxy.Port, view) File
> "/home/kitware/Dashboards/buildslave/paraview-amber8-linux-static-release_mpi_osmesa_python/build/lib/site-packages/paraview/servermanager.py",
> line 158, in __getattr__ return getattr(self.SMController, name)
> AttributeError: 'vtkPVServerManagerCorePython.vtkSMParaViewPipeline' object
> has no attribute 'Show'
>
>
>
> https://open.cdash.org/index.php?compare1=63&filtercount=2&field1=buildname%2Fstring&project=ParaView&field2=buildstarttime%2Fdate&showfilters=0&limit=100&compare2=83&value1=dbdbee7a&showfeed=0&value2=20151124T043202
>
> https://gitlab.kitware.com/paraview/paraview/merge_requests/329#note_47210
>
>
> I Suspect it is because of a VTK commit, and i will try to recreate it
> locally by only updating VTK and bisecting the commits.
>
> But if anyone has an idea about it, that would be nice.
>
> Mathieu Westphal
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtk-developers/attachments/20151124/efcaa244/attachment.html>


More information about the vtk-developers mailing list