Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support new zpool status: ZPOOL_STATUS_HOSTID_ACTIVE, ZPOOL_STATUS_HOSTID_REQUIRED and ZPOOL_STATUS_IO_FAILURE_MMP #4

Open
rdegez opened this issue Sep 4, 2018 · 0 comments

Comments

@rdegez
Copy link

rdegez commented Sep 4, 2018

Hi,

After upgarding zfs on a Linux system, we noticed that the ZPOOL_STATUS enum now contains 28 entry (0 to 27) instead of 25. (shifting the ZPOOL_STATUS_OK position from 24 to 27 in the process... triggering an alert in our Prometheus monitoring :-)

According to https://github.com/zfsonlinux/zfs/blob/master/include/libzfs.h, 3 new status were added:
ZPOOL_STATUS_HOSTID_ACTIVE, ZPOOL_STATUS_HOSTID_REQUIRED and ZPOOL_STATUS_IO_FAILURE_MMP.

For the record, here is the full list of values in zpool_status_t enum :

0 ZPOOL_STATUS_CORRUPT_CACHE, /* corrupt /kernel/drv/zpool.cache /
1 ZPOOL_STATUS_MISSING_DEV_R, /
missing device with replicas /
2 ZPOOL_STATUS_MISSING_DEV_NR, /
missing device with no replicas /
3 ZPOOL_STATUS_CORRUPT_LABEL_R, /
bad device label with replicas /
4 ZPOOL_STATUS_CORRUPT_LABEL_NR, /
bad device label with no replicas /
5 ZPOOL_STATUS_BAD_GUID_SUM, /
sum of device guids didn't match /
6 ZPOOL_STATUS_CORRUPT_POOL, /
pool metadata is corrupted /
7 ZPOOL_STATUS_CORRUPT_DATA, /
data errors in user (meta)data /
8 ZPOOL_STATUS_FAILING_DEV, /
device experiencing errors /
9 ZPOOL_STATUS_VERSION_NEWER, /
newer on-disk version /
10 ZPOOL_STATUS_HOSTID_MISMATCH, /
last accessed by another system /
11 ZPOOL_STATUS_HOSTID_ACTIVE, /
currently active on another system /
12 ZPOOL_STATUS_HOSTID_REQUIRED, /
multihost=on and hostid=0 /
13 ZPOOL_STATUS_IO_FAILURE_WAIT, /
failed I/O, failmode 'wait' /
14 ZPOOL_STATUS_IO_FAILURE_CONTINUE, /
failed I/O, failmode 'continue' /
15 ZPOOL_STATUS_IO_FAILURE_MMP, /
failed MMP, failmode not 'panic' /
16 ZPOOL_STATUS_BAD_LOG, /
cannot read log chain(s) /
17 ZPOOL_STATUS_ERRATA, /
informational errata available /
18 ZPOOL_STATUS_UNSUP_FEAT_READ, /
unsupported features for read /
19 ZPOOL_STATUS_UNSUP_FEAT_WRITE, /
unsupported features for write /
20 ZPOOL_STATUS_FAULTED_DEV_R, /
faulted device with replicas /
21 ZPOOL_STATUS_FAULTED_DEV_NR, /
faulted device with no replicas /
22 ZPOOL_STATUS_VERSION_OLDER, /
older legacy on-disk version /
23 ZPOOL_STATUS_FEAT_DISABLED, /
supported features are disabled /
24 ZPOOL_STATUS_RESILVERING, /
device being resilvered /
25 ZPOOL_STATUS_OFFLINE_DEV, /
device offline /
26 ZPOOL_STATUS_REMOVED_DEV, /
removed device */
27 ZPOOL_STATUS_OK

We are fine with the zfs-exporter code as it is because it return a numeric status sufficient for alerting but maybe updating the zfs_zpool_poolstatus metric help text would be a good idea :-)

Cheers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant