mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-23 02:44:41 +03:00
Add TXG timestamp database
This feature enables tracking of when TXGs are committed to disk, providing an estimated timestamp for each TXG. With this information, it becomes possible to perform scrubs based on specific date ranges, improving the granularity of data management and recovery operations. Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com> Reviewed-by: Paul Dagnelie <paul.dagnelie@klarasystems.com> Signed-off-by: Mariusz Zaborski <mariusz.zaborski@klarasystems.com> Sponsored-by: Klara, Inc. Sponsored-by: Wasabi Technology, Inc. Closes #16853
This commit is contained in:
@@ -55,6 +55,8 @@
|
||||
#include <sys/dsl_deadlist.h>
|
||||
#include <zfeature_common.h>
|
||||
|
||||
#include "zfs_crrd.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@@ -344,6 +346,12 @@ struct spa {
|
||||
spa_checkpoint_info_t spa_checkpoint_info; /* checkpoint accounting */
|
||||
zthr_t *spa_checkpoint_discard_zthr;
|
||||
|
||||
kmutex_t spa_txg_log_time_lock; /* for spa_txg_log_time */
|
||||
dbrrd_t spa_txg_log_time;
|
||||
uint64_t spa_last_noted_txg;
|
||||
uint64_t spa_last_noted_txg_time;
|
||||
uint64_t spa_last_flush_txg_time;
|
||||
|
||||
space_map_t *spa_syncing_log_sm; /* current log space map */
|
||||
avl_tree_t spa_sm_logs_by_txg;
|
||||
kmutex_t spa_flushed_ms_lock; /* for metaslabs_by_flushed */
|
||||
|
||||
Reference in New Issue
Block a user