MantisBT - ParaView
View Issue Details
0011070ParaViewBugpublic2010-07-29 23:222010-12-07 18:10
Alan Scott 
Robert Maynard 
normalcrashalways
closedfixed 
 
3.10 
0011070: Crash client/server when plugins don't match
Linux, remote servers (4), trunk.

Special setup of ParaView:
  * Client - Go into lib/paraview3.9. Edit .plugins. Turn on the following plugins: Moments, pvblot, PointSprite_Plugin, and H5PartReader.
  * Server - Have nothing in the lib/paraview3.9/plugins directory.

OK, start ParaView client/ remote server. Open can.exo. All vars on. Apply.

Crash.

I suppose this could be put off until 3.10 if a fix isn't simple, but we would need to document this VERY LOUDLY somewhere - maybe the wiki? It took some time to figure out what it was.

This bug has been around since 3.8.0.
No tags attached.
parent of 0010666closed  Error always reported when plugin required on client and server 
png mismatchedPluginsScreenshot.png (80,397) 2010-12-01 20:01
https://www.vtk.org/Bug/file/8543/mismatchedPluginsScreenshot.png
png
Issue History
2010-07-29 23:22Alan ScottNew Issue
2010-09-01 11:37Utkarsh AyachitPriorityhigh => normal
2010-09-01 11:37Utkarsh AyachitTarget Version3.8.1 => 3.10.shortlist
2010-11-08 09:32Utkarsh AyachitNote Added: 0023054
2010-11-08 09:32Utkarsh AyachitStatusbacklog => tabled
2010-11-08 09:32Utkarsh AyachitAssigned To => Robert Maynard
2010-11-11 10:10Robert MaynardNote Added: 0023173
2010-11-11 10:10Robert MaynardStatustabled => @80@
2010-11-11 10:10Robert MaynardFixed in Version => 3.10.shortlist
2010-11-11 10:10Robert MaynardResolutionopen => fixed
2010-12-01 15:31Utkarsh AyachitFixed in Version3.10.shortlist => 3.10
2010-12-01 20:00Alan ScottNote Added: 0023655
2010-12-01 20:00Alan ScottStatus@80@ => @20@
2010-12-01 20:00Alan ScottResolutionfixed => reopened
2010-12-01 20:01Alan ScottFile Added: mismatchedPluginsScreenshot.png
2010-12-02 10:20Ken MorelandNote Added: 0023666
2010-12-02 10:21Ken MorelandRelationship addedparent of 0010666
2010-12-02 15:05Alan ScottNote Added: 0023676
2010-12-02 15:05Alan ScottStatus@20@ => tabled
2010-12-03 11:18Robert MaynardNote Added: 0023697
2010-12-03 16:31Robert MaynardNote Added: 0023708
2010-12-03 16:31Robert MaynardStatustabled => @80@
2010-12-03 16:31Robert MaynardResolutionreopened => fixed
2010-12-07 18:10Alan ScottNote Added: 0023784
2010-12-07 18:10Alan ScottStatus@80@ => closed

Notes
(0023054)
Utkarsh Ayachit   
2010-11-08 09:32   
A solution would be after a client connects to the server, it checks if all plugin requirements are satisfied, if not, it should popup a dialog letting the user know that he should go to the plugin manager and ensure proper server side plugins are loaded before doing anything.

To developer: this can be easily implemented as a 'behavior'.
(0023173)
Robert Maynard   
2010-11-11 10:10   
Now when connecting to a server if a mismatch between the two machines plugins are detected the plugin dialog will spawn to show the user they have an issue.
(0023655)
Alan Scott   
2010-12-01 20:00   
This doesn't seem to work for me. There are two possible problems - 1) When plugins are turned on and match, this failure screen comes up, and 2) there are plugins that only exist on one side or the other, and these are causing the error screen to come up. To replicate, add the following to .plugins in your bin directory of the client (building the H5 reader, blot and PointSprite_Plugin):

<?xml version="1.0"?>
<Plugins>
  <Plugin name="Moments" auto_load="1"/>
  <Plugin name="PrismServerPlugin" auto_load="0"/>
  <Plugin name="PrismClientPlugin" auto_load="0"/>
  <Plugin name="PointSprite_Plugin" auto_load="1"/>
  <Plugin name="pvblot" auto_load="1"/>
  <Plugin name="SierraPlotTools" auto_load="0"/>
  <Plugin name="SLACTools" auto_load="0"/>
  <Plugin name="SurfaceLIC" auto_load="0"/>
  <Plugin name="H5PartReader" auto_load="1"/>
  <Plugin name="AnalyzeReader" auto_load="0"/>
  <Plugin name="AnalyzeWriter" auto_load="0"/>
  <Plugin name="NIfTIReader" auto_load="0"/>
  <Plugin name="NIfTIWriter" auto_load="0"/>
</Plugins>

Then, on the server side, lib/paraview3.9/plugins directory, add soft links as follows:

ln -s ../libPointSprite_Plugin.so libPointSprite_Plugin.so
ln -s ../libMoments.so libMoments.so
ln -s ../libH5PartReader.so libH5PartReader.so

I will attach what I get in the error screen as a screenshot.
(0023666)
Ken Moreland   
2010-12-02 10:20   
I understand the first problem; the failure screen should certainly not come up if the plugins match. (In fact, this sounds like bug 0010666.)

I don't think I understand the second problem. When the plugin does not exist on the server side, it seems to me that the behavior, bringing up the error screen, is the exact right thing to do. It's telling you that there is a plugin mismatch (which there is) and that needs to be addressed (probably by finding the plugin somewhere on the server side). What behavior do you expect?
(0023676)
Alan Scott   
2010-12-02 15:05   
OK, my bad.

Number 2 above results in a hang.
(0023697)
Robert Maynard   
2010-12-03 11:18   
I have fixed bug 10666.
(0023708)
Robert Maynard   
2010-12-03 16:31   
with bug 10666 fixed I do believe the feedback issues have been resolved.
(0023784)
Alan Scott   
2010-12-07 18:10   
Pretty sure this is fixed. If there are nuances, lets write up that specific case. Tested remote server, windows client, trunk.