- if (cType != eWrite)
- {
- syslog(LOG_DEBUG, "Loading [%s]", ChrPtr(guid));
- cdbut = cdb_fetch(CDB_USETABLE, SKEY(guid));
- if ((cdbut != NULL) && (cdbut->ptr != NULL)) {
- memcpy(&ut, cdbut->ptr, ((cdbut->len > sizeof(struct UseTable)) ? sizeof(struct UseTable) : cdbut->len));
- InDBTimeStamp = now - ut.ut_timestamp;
-
- if (InDBTimeStamp < antiexpire)
- {
- syslog(LOG_DEBUG, "Found - Not expired %ld < %ld", InDBTimeStamp, antiexpire);
- cdb_free(cdbut);
- return InDBTimeStamp;
- }
- else
- {
- syslog(LOG_DEBUG, "Found - Expired. %ld >= %ld", InDBTimeStamp, antiexpire);
- cdb_free(cdbut);
- }
- }
- else
- {
- if (cdbut) cdb_free(cdbut);
-
- syslog(LOG_DEBUG, "not Found");
- if (cType == eCheckUpdate)
- return 0;
+ syslog(LOG_DEBUG, "db: cdb_compact() started");
+ for (i = 0; i < MAXCDB; i++) {
+ syslog(LOG_DEBUG, "db: compacting database %d", i);
+ ret = dbp[i]->compact(dbp[i], NULL, NULL, NULL, NULL, DB_FREE_SPACE, NULL);
+ if (ret) {
+ syslog(LOG_ERR, "db: compact: %s", db_strerror(ret));