enclosure rewrite on CORE

Description

Enclosure management code doesn't scale very well on large systems (100's of HDD's). There is a ton of lock contention on "busy" systems because we subprocess for each enclosure that's detected on the system.

Furthermore, the output that is generated from subprocess is quite a bit so parsing stdout fo the child process becomes a bottleneck.

This is, arguably, one of the most critical portions of our API for enclosure management, sync'inc disks to slots to devices in the zpool etc, etc. It should be as fast as possible.

See commit with all the fixes that were committed as a work-around for U5.1 hot-fix release.
https://github.com/truenas/middleware/commit/6c639bd48a2c080be016e918421b11f41b032dae

Problem/Justification

None

Impact

None

Activity

Show:
Complete

Details

Assignee

Reporter

Labels

Time remaining

0m

Components

Fix versions

Affects versions

Priority

Katalon Platform

Created August 23, 2021 at 6:34 PM
Updated July 1, 2022 at 5:28 PM
Resolved September 30, 2021 at 3:46 PM