After around four days the process appeared to have stalled (no
audible hard drive activity). I restarted with milestone=none; deleted
/etc/zfs/zpool.cache, restarted, and went zpool import tank. (also
allowed root login to ssh, so I could make new ssh sessions if
required.) Now I can watch the process from on the machine.

My present question is how is the DDT stored? I believe the DDT to
have around 10M entries for this dataset, as per:
DDT-sha256-zap-duplicate: 400478 entries, size 490 on disk, 295 in core
DDT-sha256-zap-unique: 10965661 entries, size 381 on disk, 187 in core
(taken just previous to the attempt to destroy the dataset)

A sample from iopattern shows:
%RAN %SEQ  COUNT    MIN    MAX    AVG     KR
 100    0    195    512    512    512     97
 100    0    414    512  65536    895    362
 100    0    261    512    512    512    130
 100    0    273    512    512    512    136
 100    0    247    512    512    512    123
 100    0    297    512    512    512    148
 100    0    292    512    512    512    146
 100    0    250    512    512    512    125
 100    0    274    512    512    512    137
 100    0    302    512    512    512    151
 100    0    294    512    512    512    147
 100    0    308    512    512    512    154
  98    2    286    512    512    512    143
 100    0    270    512    512    512    135
 100    0    390    512    512    512    195
 100    0    269    512    512    512    134
 100    0    251    512    512    512    125
 100    0    254    512    512    512    127
 100    0    265    512    512    512    132
 100    0    283    512    512    512    141

As the pool is comprised of 2x 8-disk raidz vdevs, I presume that each
element is stored twice (for the raidz redundancy). So around 280 512b
read op/s, that's 140 entries per second.

Is the import of a semi-broken pool:
1> Reading all the DDT markers for the dataset; or
2> Reading all the DDT markers for the pool; or
3> Reading all of the block markers for the dataset; or
4> Reading all of the block markers for the pool
Prior to actually finalising what it needs to do to fix the pool? I'd
like to be able to estimate the length of time likely before the
import finishes.

Or should I tell it to roll back to the last valid txg - ie before the
zfs destroy <dataset> command was issued? (by zpool import -F.) Or is
this likely to take as long/longer than the present import/fix?

Cheers.
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to