zpool import -D failed, "guid mismatch for provider /dev/da#:"
Adam Nowacki
nowakpl at platinum.linux.pl
Wed Jul 10 04:06:50 UTC 2013
It fails because of a check at
http://fxr.watson.org/fxr/source/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c?im=10#L272
state == POOL_STATE_DESTROYED will be true and no config will be read,
then
http://fxr.watson.org/fxr/source/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c?im=10#L445
returns 0 for guid.
removing that check should make the pool importable
On 2013-07-10 05:03, Jiansong Liu wrote:
> Hi All,
>
> I destroyed a pool and try to recovery with the "zpool import" command
> failed and it says have no pool to import, then I realized that I
> missed the "-D", so I run the command "zpool import -D", now it says
> UNAVAIL, the pool has six vdev (da0 da1 da2 da3 da5 da6) original:
>
> # zpool import -D
> pool: storage
> id: 8511691845980256432
> state: UNAVAIL (DESTROYED)
> status: One or more devices are missing from the system.
> action: The pool cannot be imported. Attach the missing
> devices and try again.
> see: http://illumos.org/msg/ZFS-8000-3C
> config:
>
> storage UNAVAIL insufficient replicas
> raidz2-0 UNAVAIL insufficient replicas
> 8368872959405194221 UNAVAIL cannot open
> 16925320148488343503 UNAVAIL cannot open
> 2721065418012152096 UNAVAIL cannot open
> 1488947662741999881 UNAVAIL cannot open
> 16956133848943560671 UNAVAIL cannot open
> 7236613667503893647 UNAVAIL cannot open
>
> Every time I run the "zpool import -D", the zfs debug will output a
> error for every vdev member, seems the vdev returned a wrong guid:
>
> vdev_geom_open_by_path:550[1]: Found provider by name /dev/da6.
> vdev_geom_attach:97[1]: Attaching to da6.
> vdev_geom_attach:118[1]: Created geom and consumer for da6.
> vdev_geom_read_config:243[1]: Reading config from da6...
> vdev_geom_detach:158[1]: Closing access to da6.
> vdev_geom_detach:162[1]: Destroyed consumer to da6.
> vdev_geom_detach:170[1]: Destroyed geom zfs::vdev.
> vdev_geom_open_by_path:562[1]: guid mismatch for provider /dev/da6:
> 7236613667503893647 != 0.
> vdev_geom_open_by_guid:518[1]: Searching by guid [7236613667503893647].
> vdev_geom_read_config:243[1]: Reading config from da4s1g...
> vdev_geom_read_config:243[1]: Reading config from da4s1f...
> vdev_geom_read_config:243[1]: Reading config from da4s1e...
> vdev_geom_read_config:243[1]: Reading config from da4s1d...
> vdev_geom_read_config:243[1]: Reading config from da4s1b...
> vdev_geom_read_config:243[1]: Reading config from da4s1a...
> vdev_geom_read_config:243[1]: Reading config from da4s1...
> vdev_geom_read_config:243[1]: Reading config from da6...
> vdev_geom_read_config:243[1]: Reading config from da5...
> vdev_geom_read_config:243[1]: Reading config from da4...
> vdev_geom_read_config:243[1]: Reading config from da3...
> vdev_geom_read_config:243[1]: Reading config from da2...
> vdev_geom_read_config:243[1]: Reading config from da1...
> vdev_geom_read_config:243[1]: Reading config from da0...
> vdev_geom_open_by_guid:532[1]: Search by guid [7236613667503893647] failed.
> vdev_geom_open:617[1]: Provider /dev/da6 not found.
>
> the system version is 9-STABLE r250636
> any comment and advice are appreciated, thanks in advance.
>
>
> Best regards,
> Jiansong Liu
> _______________________________________________
> freebsd-fs at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-fs
> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"
>
More information about the freebsd-fs
mailing list