# Plugin Auto-Loaded Twice (Maybe)

**URL:** https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852
**Category:** ParaView Support
**Created:** [July 15, 2020, 7:37pm UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852 "2020-07-15T19:37:56Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![theodorebaltis](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/t/e480ec/32.png) [@theodorebaltis](https://discourse.paraview.org/u/theodorebaltis)
#### Post date: [July 15, 2020, 7:37pm UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/1 "2020-07-15T19:37:56Z")

</div>

I’m using the PV\_PLUGIN\_CONFIG\_FILE environment variable to autoload a Python-based plugin in a custom Linux build of ParaView.

Doing so produces two identical entries in the Plugin Manager.  
Not sure if it’s actually being loaded twice or if it’s just a GUI issue.  
When I remove one of the entries they both disappear.

It doesn’t seem to affect behavior at all though. Plugin performs as expected.

I confirmed this doesn’t happen with the released Linux binaries.  
Any idea how this might be happening in my build?

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [July 20, 2020, 8:43am UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/2 "2020-07-20T08:43:30Z")

</div>

What happens if you remove your ParaView settings file ?

---

<div class="post-metadata">

### Author: ![theodorebaltis](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/t/e480ec/32.png) [@theodorebaltis](https://discourse.paraview.org/u/theodorebaltis)
#### Post date: [July 20, 2020, 9:52pm UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/3 "2020-07-20T21:52:25Z")

</div>

The JSON-formatted one? I actually don’t have one for my server build to remove, and I’m unable to locate one for the system (I’ll have to ask our system admin).

---

<div class="post-metadata">

### Author: ![theodorebaltis](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/t/e480ec/32.png) [@theodorebaltis](https://discourse.paraview.org/u/theodorebaltis)
#### Post date: [July 20, 2020, 9:57pm UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/4 "2020-07-20T21:57:22Z")

</div>

I was hoping this would be a “hey someone actually had this weird thing happen before!” kind of situation.  
Just seems like a tiny graphical bug, doesn’t seem to hurt anything.

It just personally annoys me so I’m sure I’ll play around more and If I find something more concrete that affects the behavior I’ll update.

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [July 21, 2020, 6:50am UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/5 "2020-07-21T06:50:32Z")

</div>

This issue kinda rings a bell, but I’m not sure.

It would be nice to identify it more clearly.

Can you share a screenshot of the before/after loading the plugin ?

---

<div class="post-metadata">

### Author: ![utkarsh.ayachit](https://discourse.paraview.org/user_avatar/discourse.paraview.org/utkarsh.ayachit/32/39_2.png) [@utkarsh.ayachit](https://discourse.paraview.org/u/utkarsh.ayachit)
#### Post date: [July 21, 2020, 7:28am UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/6 "2020-07-21T07:28:33Z")

</div>

Also try setting the environment variable `PARAVIEW_LOG_PLUGIN_VERBOSITY` to INFO and run ParaView with `-l=[some path]/plugin.log` command line argument. This will generate a log file which tells which plugins are being loaded. That may shed some more light on this.

---

<div class="post-metadata">

### Author: ![theodorebaltis](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/t/e480ec/32.png) [@theodorebaltis](https://discourse.paraview.org/u/theodorebaltis)
#### Post date: [July 21, 2020, 6:13pm UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/7 "2020-07-21T18:13:04Z")

</div>

I did some more testing and it does happen in the released binaries as well, but only on the remote side through pvserver.

Plugin file:

```xml
<?xml version="1.0"?>
  <Plugins>
    <Plugin name="VelodyneLagrangianXDMFReader" filename="/some/path/to/VelodyneLagReader_latest.py"/>
</Plugins>

```

where “name” in the xml matches “paraview\_plugin\_name” global variable in the Python script

**Before the plugin has ever been used**  
Paraview5.8.0.ini:

```auto
[PluginsList]
Connection1%3A\installs\paraview\5.8.0\bin\paraview="<?xml version=\"1.0\" ?>\n<Plugins>\n [a bunch of standard plugins]</Plugins>\n"

```

Plugin Manager:

 ![without_plugin_env_var](https://discourse.paraview.org/uploads/default/original/2X/2/22dedc20c52929da99a22c1f865289d1233ba596.png)

**Loading with PV\_PLUGIN\_CONFIG\_FILE set**  
Paraview5.8.0.ini:

```auto
[PluginsList]
Connection1%3A\installs\paraview\5.8.0\bin\paraview="<?xml version=\"1.0\" ?>\n<Plugins>\n <Plugin name=\"VelodyneLagrangianXDMFReader\" filename=\"/some/path/to/VelodyneLagReader_latest.py\" auto_load=\"0\" />\n <Plugin name=\"VelodyneLagrangianXDMFReader\" filename=\"/some/path/to/VelodyneLagReader_latest.py\" auto_load=\"0\" />\n [a bunch of standard plugins]</Plugins>\n"

```

Plugin Manager:

 ![with_plugin_env_var](https://discourse.paraview.org/uploads/default/original/2X/0/012b8a4be0196b021615656f9010156fb8165a99.png)  
Notice how the plugin is listed twice in the .ini file as well as the plugin manager dialog

**Then loading with PV\_PLUGIN\_CONFIG\_FILE unset**  
Paraview5.8.0.ini:

```auto
[PluginsList]
Connection1%3A\installs\paraview\5.8.0\bin\paraview="<?xml version=\"1.0\" ?>\n<Plugins>\n <Plugin name=\"VelodyneLagrangianXDMFReader\" filename=\"/some/path/to/VelodyneLagReader_latest.py\" auto_load=\"0\" />\n [a bunch of standard plugins]</Plugins>\n"

```

Plugin Manager:

 ![without_plugin_env_var2](https://discourse.paraview.org/uploads/default/original/2X/c/cc5253c521f1b42d1e60ecd3a97632fe4d0dcbdf.png)

Notice how the file is listed only once in each location.  
(The name updates to “VelodyneLagrangianXDMFReader” once loaded)

And the relative bits from the log file (when PV\_PLUGIN\_CONFIG\_FILE is set):

```auto
( 0.031s) [pvserver] vtkPVPluginLoader.cxx:342 INFO| Loading plugins in Path: /opt/Software/paraview/5.8.0_server/bin/plugins
( 0.031s) [pvserver] vtkPVPluginLoader.cxx:347 INFO| Invalid directory: /opt/Software/paraview/5.8.0_server/bin/plugins
( 0.031s) [pvserver] vtkPVPluginLoader.cxx:322 INFO| Loading Plugins from standard PV_PLUGIN_CONFIG_FILE: /home/shelf1/Software/paraview/scripts/python_plugins.xml
( 0.032s) [pvserver] vtkPVPluginTracker.cxx:358 INFO| Loading plugin configuration xml `/home/shelf1/Software/paraview/scripts/python_plugins.xml`.
( 0.032s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `VelodyneLagrangianXDMFReader`
( 0.032s) [pvserver] vtkPVPluginTracker.cxx:464 INFO| found `/opt/Software/paraview/corvid_readers/velLagrangian/VelodyneLagReader_latest.py`
( 0.032s) [pvserver] vtkPVPluginLoader.cxx:244 INFO| PV_PLUGIN_PATH: /opt/Software/paraview/scripts/plugins
( 0.032s) [pvserver] vtkPVPluginLoader.cxx:270 INFO| appDir: /opt/Software/paraview/5.8.0_server/bin/plugins
( 0.032s) [pvserver] vtkPVPluginLoader.cxx:244 INFO| PV_PLUGIN_PATH: /opt/Software/paraview/scripts/plugins
( 0.032s) [pvserver] vtkPVPluginLoader.cxx:270 INFO| appDir: /opt/Software/paraview/5.8.0_server/bin/plugins
( 0.032s) [pvserver] vtkPVPluginLoader.cxx:446 INFO| Attempting to load: /opt/Software/paraview/corvid_readers/velLagrangian/VelodyneLagReader_latest.py
( 1.553s) [pvserver] vtkPVPluginLoader.cxx:244 INFO| PV_PLUGIN_PATH: /opt/Software/paraview/scripts/plugins
( 1.553s) [pvserver] vtkPVPluginLoader.cxx:270 INFO| appDir: /opt/Software/paraview/5.8.0_server/bin/plugins
( 1.553s) [pvserver] vtkPVPlugin.cxx:62 INFO| Import status: success 
----------------------------------------------------------
Importing plugin: **VelodyneLagrangianXDMFReader**
  name: VelodyneLagrangianXDMFReader
  version: 1.01
  filename: /opt/Software/paraview/corvid_readers/velLagrangian/VelodyneLagReader_latest.py
  required-on-server: 1
  required-on-client: 0
  has-eula: 0

( 1.554s) [pvserver] vtkPVPluginTracker.cxx:358 INFO| Loading plugin configuration xml `/opt/Software/paraview/5.8.0_server/bin/../lib64/paraview-5.8/plugins/paraview.plugins.xml`.
( 1.554s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `AcceleratedAlgorithms`
( 1.554s) [pvserver] vtkPVPluginTracker.cxx:105 INFO| { looking for plugin 'AcceleratedAlgorithms'
( 1.554s) [pvserver]vtkResourceFileLocator.:61 INFO| . { looking for 'AcceleratedAlgorithms.so'
( 1.555s) [pvserver]vtkResourceFileLocator.:74 INFO| . . trying file /opt/Software/paraview/5.8.0_server/bin/../lib64/paraview-5.8/plugins/AcceleratedAlgorithms/AcceleratedAlgorithms.so -- success!
( 1.555s) [pvserver]vtkResourceFileLocator.:61 INFO| . } 0.000 s: looking for 'AcceleratedAlgorithms.so'

...

( 12.741s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `spanwise_integration`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:464 INFO| found `/opt/Software/paraview/scripts/plugins/spanwise_integration.xml`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `VelodyneLagrangianXDMFReader`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:464 INFO| found `/opt/Software/paraview/corvid_readers/velLagrangian/VelodyneLagReader_latest.py`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `VelodyneLagrangianXDMFReader`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:464 INFO| found `/opt/Software/paraview/corvid_readers/velLagrangian/VelodyneLagReader_latest.py`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `AcceleratedAlgorithms`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:464 INFO| found `/opt/Software/paraview/5.8.0_server/bin/../lib64/paraview-5.8/plugins/AcceleratedAlgorithms/AcceleratedAlgorithms.so`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `AnalyzeNIfTIReaderWriter`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:464 INFO| found `/opt/Software/paraview/5.8.0_server/bin/../lib64/paraview-5.8/plugins/AnalyzeNIfTIReaderWriter/AnalyzeNIfTIReaderWriter.so`
( 12.742s) [pvserver] vtkPVPluginTracker.cxx:414 INFO| Trying to locate plugin with name `ArrowGlyph`

...

```

Note how the file appears twice here as well, but it seems that it’s only actually loaded once.

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [July 22, 2020, 7:40am UTC](https://discourse.paraview.org/t/plugin-auto-loaded-twice-maybe/4852/8 "2020-07-22T07:40:19Z")

</div>

That indeed looks like a graphical only bug. Worth fixing at some point.
