zfs/lib
George Wilson 0936981d86
zpool import cachefile improvements
Importing a pool using the cachefile is ideal to reduce the time
required to import a pool. However, if the devices associated with
a pool in the cachefile have changed, then the import would fail.
This can easily be corrected by doing a normal import which would
then read the pool configuration from the labels.

The goal of this change is make importing using a cachefile more
resilient and auto-correcting. This is accomplished by having
the cachefile import logic automatically fallback to reading the
labels of the devices similar to a normal import. The main difference
between the fallback logic and a normal import is that the cachefile
import logic will only look at the device directories that were
originally used when the cachefile was populated. Additionally,
the fallback logic will always import by guid to ensure that only
the pools in the cachefile would be imported.

External-issue: DLPX-71980
Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: George Wilson <gwilson@delphix.com>
Closes #11716
2021-03-12 15:42:27 -08:00
..
libavl cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libefi cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libicp cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libnvpair cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libshare cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libspl cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libtpool cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libunicode cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libuutil Fix a resource leak in uu_avl_pool_destroy 2021-01-26 19:39:28 -08:00
libzfs Return finer grain errors in libzfs unmount_one 2021-03-08 08:46:45 -08:00
libzfs_core cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libzfsbootenv cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libzpool libzpool: set_global_var: refactor to not modify 'arg' 2021-02-19 22:45:04 -08:00
libzstd cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
libzutil zpool import cachefile improvements 2021-03-12 15:42:27 -08:00
Makefile.am cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00