FreeNAS 11.2 deleting user created mount points breaks plugin jail

Joined
Mar 10, 2014
Messages
55
Thanks
4
#1
Hi All,

Just thought I would get someone else to confirm this bug before I report it.

Recently upgraded to FreeNAS 11.2 U2 from FreeNAS 11.1 U7, been happy with it but stumbled upon a bug when using the UI for mount points in Plugin Jails.

In the UI I had created 3 mount points for the Transmission Plugin Jail.

After creating the 3 mount points, I then went to the first one and deleted it. Upon deletion, the UI came back and showed all were removed. This then stopped the plugin jail from starting up again.

Sorry forgot to record the specific error message at the time, was trying to get the jail working again.

Basically behind the scenes the plugin jails have a whole bunch of hidden mount points that is used to allow the plugin jail to run, and all of these but 1 of the mount points got deleted as well.

Luckily I had another plugin running as well so I managed to use the hidden mount points its got to reconstruct the deleted ones for the transmission plugin jail.

The hidden mount points for the plugin jails are in table below.

Could someone else confirm this bug please.

Note this occured on FireFox, have not tested on Chrome/IE/Safari


Code:
+-------+----------------------------------------------------------------------------------------------------------------+
| INDEX |                                                  FSTAB ENTRY                                                   |
+=======+================================================================================================================+
| 0     | /mnt/iocage/releases/11.2-RELEASE/root/bin /mnt/iocage/jails/zoneminder/root/bin nullfs ro 0 0                 |
+-------+----------------------------------------------------------------------------------------------------------------+
| 1     | /mnt/iocage/releases/11.2-RELEASE/root/boot /mnt/iocage/jails/zoneminder/root/boot nullfs ro 0 0               |
+-------+----------------------------------------------------------------------------------------------------------------+
| 2     | /mnt/iocage/releases/11.2-RELEASE/root/lib /mnt/iocage/jails/zoneminder/root/lib nullfs ro 0 0                 |
+-------+----------------------------------------------------------------------------------------------------------------+
| 3     | /mnt/iocage/releases/11.2-RELEASE/root/libexec /mnt/iocage/jails/zoneminder/root/libexec nullfs ro 0 0         |
+-------+----------------------------------------------------------------------------------------------------------------+
| 4     | /mnt/iocage/releases/11.2-RELEASE/root/rescue /mnt/iocage/jails/zoneminder/root/rescue nullfs ro 0 0           |
+-------+----------------------------------------------------------------------------------------------------------------+
| 5     | /mnt/iocage/releases/11.2-RELEASE/root/sbin /mnt/iocage/jails/zoneminder/root/sbin nullfs ro 0 0               |
+-------+----------------------------------------------------------------------------------------------------------------+
| 6     | /mnt/iocage/releases/11.2-RELEASE/root/usr/bin /mnt/iocage/jails/zoneminder/root/usr/bin nullfs ro 0 0         |
+-------+----------------------------------------------------------------------------------------------------------------+
| 7     | /mnt/iocage/releases/11.2-RELEASE/root/usr/include /mnt/iocage/jails/zoneminder/root/usr/include nullfs ro 0 0 |
+-------+----------------------------------------------------------------------------------------------------------------+
| 8     | /mnt/iocage/releases/11.2-RELEASE/root/usr/lib /mnt/iocage/jails/zoneminder/root/usr/lib nullfs ro 0 0         |
+-------+----------------------------------------------------------------------------------------------------------------+
| 9     | /mnt/iocage/releases/11.2-RELEASE/root/usr/libexec /mnt/iocage/jails/zoneminder/root/usr/libexec nullfs ro 0 0 |
+-------+----------------------------------------------------------------------------------------------------------------+
| 10    | /mnt/iocage/releases/11.2-RELEASE/root/usr/sbin /mnt/iocage/jails/zoneminder/root/usr/sbin nullfs ro 0 0       |
+-------+----------------------------------------------------------------------------------------------------------------+
| 11    | /mnt/iocage/releases/11.2-RELEASE/root/usr/share /mnt/iocage/jails/zoneminder/root/usr/share nullfs ro 0 0     |
+-------+----------------------------------------------------------------------------------------------------------------+
| 12    | /mnt/iocage/releases/11.2-RELEASE/root/usr/libdata /mnt/iocage/jails/zoneminder/root/usr/libdata nullfs ro 0 0 |
+-------+----------------------------------------------------------------------------------------------------------------+
| 13    | /mnt/iocage/releases/11.2-RELEASE/root/usr/lib32 /mnt/iocage/jails/zoneminder/root/usr/lib32 nullfs ro 0 0     |
+-------+----------------------------------------------------------------------------------------------------------------+
 

dlavigne

Storage Engineering
Administrator
Moderator
iXsystems
Joined
May 24, 2011
Messages
10,671
Thanks
884
#2
Did you report this as a bug? If so, what is the issue number?
 
Joined
Mar 25, 2019
Messages
1
Thanks
0
#3
Just ran into this bug as well. I can reproduce this by doing :
1. Install plex plugin
2. Add 2 mount points
3. Start / stop jail
4. Remove 1 mount point

After this the jail fails to start with the error :

Code:
Stopped plex_2 due to VNET failure

Error: concurrent.futures.process._RemoteTraceback: 
"""
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/concurrent/futures/process.py", line 175, in _process_worker
    r = call_item.fn(*call_item.args, **call_item.kwargs)
  File "/usr/local/lib/python3.6/site-packages/middlewared/worker.py", line 128, in main_worker
    res = loop.run_until_complete(coro)
  File "/usr/local/lib/python3.6/asyncio/base_events.py", line 468, in run_until_complete
    return future.result()
  File "/usr/local/lib/python3.6/site-packages/middlewared/worker.py", line 88, in _run
    return await self._call(f'{service_name}.{method}', serviceobj, methodobj, params=args, job=job)
  File "/usr/local/lib/python3.6/site-packages/middlewared/worker.py", line 81, in _call
    return methodobj(*params)
  File "/usr/local/lib/python3.6/site-packages/middlewared/worker.py", line 81, in _call
    return methodobj(*params)
  File "/usr/local/lib/python3.6/site-packages/middlewared/schema.py", line 668, in nf
    return f(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/middlewared/plugins/jail.py", line 581, in start
    iocage.start()
  File "/usr/local/lib/python3.6/site-packages/iocage_lib/iocage.py", line 1663, in start
    callback=self.callback
  File "/usr/local/lib/python3.6/site-packages/iocage_lib/ioc_start.py", line 66, in __init__
    self.__start_jail__()
  File "/usr/local/lib/python3.6/site-packages/iocage_lib/ioc_start.py", line 491, in __start_jail__
    _callback=self.callback)
  File "/usr/local/lib/python3.6/site-packages/iocage_lib/ioc_common.py", line 90, in logit
    _callback(content, exception)
  File "/usr/local/lib/python3.6/site-packages/iocage_lib/ioc_common.py", line 64, in callback
    raise callback_exception(message)
RuntimeError: 
Stopped plex_2 due to VNET failure
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/middlewared/main.py", line 165, in call_method
    result = await self.middleware.call_method(self, message)
  File "/usr/local/lib/python3.6/site-packages/middlewared/main.py", line 1141, in call_method
    return await self._call(message['method'], serviceobj, methodobj, params, app=app, io_thread=False)
  File "/usr/local/lib/python3.6/site-packages/middlewared/main.py", line 1078, in _call
    return await self._call_worker(serviceobj, name, *args)
  File "/usr/local/lib/python3.6/site-packages/middlewared/main.py", line 1105, in _call_worker
    job,
  File "/usr/local/lib/python3.6/site-packages/middlewared/main.py", line 1036, in run_in_proc
    return await self.run_in_executor(self.__procpool, method, *args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/middlewared/main.py", line 1021, in run_in_executor
    return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
RuntimeError: 
Stopped plex_2 due to VNET failure


 

dlavigne

Storage Engineering
Administrator
Moderator
iXsystems
Joined
May 24, 2011
Messages
10,671
Thanks
884
#4
Were you able to resolve this? If not, does updating to U3 resolve it?
 
Joined
Mar 10, 2014
Messages
55
Thanks
4
#5
Were you able to resolve this? If not, does updating to U3 resolve it?
Just tested this a moment ago on the U3 release. Looks like it's resolved for me. Thankyou :)
 
Joined
Apr 14, 2019
Messages
2
Thanks
0
#6
I am on U3 and have run in to this issue. it has happened to me multiple times now except it usually happens when i change the location of the mount point. any ideas on how to fix this? i'm not a huge fan of remaking my Sonarr jail that i just got done creating.
 
Top