Traceback when trying to export an offline pool

Description

I have a pool that composed of a single mirror. I put the pool offline by yanking both disks.
When trying to call pool.export regardless of how cascade or destroy params are set, I get the following traceback...

`Error: concurrent.futures.process._RemoteTraceback:
"""
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/middlewared/plugins/zfs.py", line 171, in get_devices
return [i.replace('/dev/', '') for i in zfs.get(name).disks]
File "libzfs.pyx", line 391, in libzfs.ZFS._exit_
File "/usr/lib/python3/dist-packages/middlewared/plugins/zfs.py", line 171, in get_devices
return [i.replace('/dev/', '') for i in zfs.get(name).disks]
File "libzfs.pyx", line 1032, in libzfs.ZFS.get
libzfs.ZFSException: Pool Masodik not found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/lib/python3.8/concurrent/futures/process.py", line 239, in _process_worker
r = call_item.fn(*call_item.args, **call_item.kwargs)
File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 94, in main_worker
res = MIDDLEWARE._run(*call_args)
File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 45, in _run
return self._call(name, serviceobj, methodobj, args, job=job)
File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 39, in _call
return methodobj(*params)
File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 39, in _call
return methodobj(*params)
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1025, in nf
return f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/middlewared/plugins/zfs_/disks_linux.py", line 17, in get_disks
disks = self.middleware.call_sync('zfs.pool.get_devices', name)
File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 59, in call_sync
return methodobj(*params)
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1025, in nf
return f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/middlewared/plugins/zfs.py", line 173, in get_devices
raise CallError(str(e), errno.ENOENT)
middlewared.service_exception.CallError: [ENOENT] Pool Masodik not found
"""

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

Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/middlewared/job.py", line 372, in run
await self.future
File "/usr/lib/python3/dist-packages/middlewared/job.py", line 408, in __run_body
rv = await self.method(*([self] + args))
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1021, in nf
return await f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/middlewared/plugins/pool.py", line 1530, in export
attachments = await delegate.query(pool['path'], True)
File "/usr/lib/python3/dist-packages/middlewared/common/attachment/_init_.py", line 94, in query
for resource in await self.middleware.call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1258, in call
return await self._call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1215, in _call
return await methodobj(*prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1021, in nf
return await f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/middlewared/service.py", line 456, in query
result = await self.middleware.call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1258, in call
return await self._call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1215, in _call
return await methodobj(*prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1021, in nf
return await f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/middlewared/plugins/datastore/read.py", line 163, in query
result = await self._queryset_serialize(
File "/usr/lib/python3/dist-packages/middlewared/plugins/datastore/read.py", line 207, in _queryset_serialize
extend_context_value = await self.middleware.call(extend_context, extra_options)
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1258, in call
return await self._call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1215, in _call
return await methodobj(*prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/service.py", line 600, in sharing_task_extend_context
'service_extend': (await self.middleware.call(self._config.datastore_extend_context, extra))
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1258, in call
return await self._call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1215, in _call
return await methodobj(*prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/plugins/iscsi.py", line 698, in extent_extend_context
'pools': {
File "/usr/lib/python3/dist-packages/middlewared/plugins/iscsi.py", line 699, in <dictcomp>
p['name']: {'disks': await self.middleware.call('zfs.pool.get_disks', p['name']), 'all_flash': False}
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1258, in call
return await self._call(
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1223, in _call
return await self._call_worker(name, *prepared_call.args)
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1229, in _call_worker
return await self.run_in_proc(main_worker, name, args, job)
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1156, in run_in_proc
return await self.run_in_executor(self.__procpool, method, *args, **kwargs)
File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1130, in run_in_executor
return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
middlewared.service_exception.CallError: [ENOENT] Pool Masodik not found`

Problem/Justification

None

Impact

None

blocks

SmartDraw Connector

Katalon Manual Tests (BETA)

Activity

Show:

Bug Clerk December 18, 2020 at 7:59 PM

Complete

Details

Assignee

Reporter

Components

Affects versions

Priority

More fields

Katalon Platform

Created December 16, 2020 at 5:48 PM
Updated July 1, 2022 at 4:59 PM
Resolved January 20, 2021 at 4:53 PM