summaryrefslogtreecommitdiffstats
path: root/ctdb/server/ctdb_tunables.c
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronniesahlberg@gmail.com>2009-09-29 13:20:18 +1000
committerRonnie Sahlberg <ronniesahlberg@gmail.com>2009-09-29 13:27:19 +1000
commitc971d934a94be8676a7ece035ae1a0b963765464 (patch)
tree4a745ba59c5285a81a2d1f1d5a4250650aa3ab7d /ctdb/server/ctdb_tunables.c
parent9bac6f2e2cfc880126349113e977aaf6b9f01b03 (diff)
downloadsamba-c971d934a94be8676a7ece035ae1a0b963765464.tar.gz
samba-c971d934a94be8676a7ece035ae1a0b963765464.tar.xz
samba-c971d934a94be8676a7ece035ae1a0b963765464.zip
From Wolfgang Mueller-Friedt
Remove the explicit vacuum/repack commands from the 00.ctdb eventscript and implement this in the ctdb daemon. Combine vacuuming and repacking into one cheap read traverse to enumerate all candidate records and one write traverse that both repacks the database and also deletes the record locally where we are lmaster and where the records have already been deleted remotely. this code also adds initial autotuning heuristics for the vacuum intervals and how many records to delete in each iteration. minor stylish changes made by ronnie s (This used to be ctdb commit 95a3ee551241aa164967991fe5efe078e1714bde)
Diffstat (limited to 'ctdb/server/ctdb_tunables.c')
-rw-r--r--ctdb/server/ctdb_tunables.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ctdb/server/ctdb_tunables.c b/ctdb/server/ctdb_tunables.c
index 85cbc112d78..a32178942b8 100644
--- a/ctdb/server/ctdb_tunables.c
+++ b/ctdb/server/ctdb_tunables.c
@@ -56,9 +56,12 @@ static const struct {
{ "RecLockLatencyMs", 1000, offsetof(struct ctdb_tunable, reclock_latency_ms) },
{ "RecoveryDropAllIPs", 60, offsetof(struct ctdb_tunable, recovery_drop_all_ips) },
{ "VerifyRecoveryLock", 1, offsetof(struct ctdb_tunable, verify_recovery_lock) },
- { "VacuumDefaultInterval", 120, offsetof(struct ctdb_tunable, vacuum_default_interval) },
+ { "VacuumDefaultInterval", 300, offsetof(struct ctdb_tunable, vacuum_default_interval) },
{ "VacuumMaxRunTime", 30, offsetof(struct ctdb_tunable, vacuum_max_run_time) },
{ "RepackLimit", 10000, offsetof(struct ctdb_tunable, repack_limit) },
+ { "VacuumLimit", 5000, offsetof(struct ctdb_tunable, vacuum_limit) },
+ { "VacuumMinInterval", 60, offsetof(struct ctdb_tunable, vacuum_min_interval) },
+ { "VacuumMaxInterval", 600, offsetof(struct ctdb_tunable, vacuum_max_interval) }
};
/*