A ZFS intent log record could not be read due to an error. This may be due to
a missing or broken log device, or a device within the pool may be
experiencing I/O errors.
The pool itself is not corrupt but is missing some pool changes
that happened shortly before a power loss or system failure.
These are pool changes that applications had
requested to be written synchronously but had not been committed
in the pool. This transaction group commit currently occurs every
five seconds, and so typically at most five seconds worth of
synchronous writes have been lost.
ZFS itself cannot determine if the pool changes lost are critical
to those applications running at the time of the system failure.
This is a decision the administrator must make.
You may want to consider mirroring log devices.
First determine which pool is in error:
# zpool status -x
pool: test
state: FAULTED
status: One or more of the intent logs could not be read.
Waiting for adminstrator intervention to fix the faulted pool.
action: Either restore the affected device(s) and run 'zpool online',
or ignore the intent log records by running 'zpool clear'.
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
test FAULTED 0 0 0 bad intent log
c3t2d0 ONLINE 0 0 0
logs FAULTED 0 0 0 bad intent log
c5t3d0 UNAVAIL 0 0 0 cannot open
There are two courses of action to resolve this problem.
If the validity of the pool from an application perspective requires
the pool changes then the log devices must be recovered. Make sure
power and cables are connected and that the affected device is online.
Then run 'zpool online' and then 'zpool clear':
# zpool online test c5t3d0
# zpool clear test
# zpool status test
pool: test
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
test ONLINE 0 0 0
c3t2d0 ONLINE 0 0 0
logs ONLINE 0 0 0
c5t3d0 ONLINE 0 0 0
errors: No known data errors
The second alternative action is to ignore the most recent pool
changes that could not be read. To do this run 'zpool clear':
# zpool clear test
# zpool status test
pool: test
state: DEGRADED
status: One or more devices could not be opened. Sufficient replicas exist for
the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
see: https://zfsonlinux.org/msg/ZFS-8000-2Q
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
test DEGRADED 0 0 0
c3t2d0 ONLINE 0 0 0
logs DEGRADED 0 0 0
c5t3d0 UNAVAIL 0 0 0 cannot open
errors: No known data errors
Future log records will not use a failed log device but will be written
to the main pool. You should fix or replace any failed log devices.