2012-01-21 20:50, Bob Friesenhahn wrote: > TXGs get forgotten from memory as soon as they are written.
As I said, that can be arranged - i.e. free the TXG cache after the corresponding TXG number has been verified? Point about ARC being overwritten seems valid...
Zfs already knows how to by-pass the ARC. However, any "media" reads are subject to caching since the underlying devices try very hard to cache data in order to improve read performance.
As a pointer, the "format" command presents options to disable (separately) read and write caching on drives it sees. MAYBE there is some option to explicitly read data from media, like sync-writes. Whether the drive firmwares honor that (disabling caching and/or such hypothetical sync-reads) - it's something out of ZFS's control. But we can do the best effort...
As an extreme case of caching, consider a device represented by an iSCSI LUN on a OpenSolaris server with 512GB of RAM. If you request to read data you are exceedingly likely to read data from the zfs ARC on that server rather than underlying "media".
So far I rather considered "flaky" hardware with lousy consumer qualities. The server you describe is likely to exceed that bar ;) Besides, if this OpenSolaris server is up-to-date, it would do such media checks itself, and/or honour the sync-read requests or temporary cache disabling ;) Of course, this can't be guaranteed of other devices, so in general ZFS can do best-effort verification. //Jim _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss