/* * Request a checkpoint of the database. Called once per minute by the thread manager. */ void cdb_checkpoint(void) { int ret; syslog(LOG_DEBUG, "-- db checkpoint --"); ret = dbenv->txn_checkpoint(dbenv, MAX_CHECKPOINT_KBYTES, MAX_CHECKPOINT_MINUTES, 0); if (ret != 0) { syslog(LOG_EMERG, "cdb_checkpoint: txn_checkpoint: %s", db_strerror(ret)); cdb_abort(); } /* After a successful checkpoint, we can cull the unused logs */ if (config.c_auto_cull) { cdb_cull_logs(); } }
/* * Manually initiate log file cull. */ void cmd_cull(char *argbuf) { if (CtdlAccessCheck(ac_internal)) return; cdb_cull_logs(); cprintf("%d Database log file cull completed.\n", CIT_OK); }