summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Goodliffe <dan.goodliffe@octal.co.uk>2026-06-08 12:31:07 +0100
committerDan Goodliffe <dan.goodliffe@octal.co.uk>2026-06-08 12:31:07 +0100
commitee9517e452376bc4963aa3a43ca90ebb9d710b85 (patch)
tree8830e147a173d64995c7e3e0666e1782c226a5af
parentaa8f64a3e140e74a1f8d0074b606dd1f8560ad0a (diff)
downloadwebstat-ee9517e452376bc4963aa3a43ca90ebb9d710b85.tar.bz2
webstat-ee9517e452376bc4963aa3a43ca90ebb9d710b85.tar.xz
webstat-ee9517e452376bc4963aa3a43ca90ebb9d710b85.zip
Remove the purge time limit
This is a background job, has been for a while, so we can sanely allow it to run for as long as is required.
-rw-r--r--src/ingestor.cpp3
-rw-r--r--src/ingestor.hpp1
-rw-r--r--src/webstat_logger_main.cpp2
3 files changed, 1 insertions, 5 deletions
diff --git a/src/ingestor.cpp b/src/ingestor.cpp
index d15940c..16638eb 100644
--- a/src/ingestor.cpp
+++ b/src/ingestor.cpp
@@ -586,12 +586,11 @@ namespace WebStat {
Ingestor::jobPurgeOldLogs()
{
auto dbconn = dbpool->get();
- const auto stopAt = Job::LastRunTime::clock::now() + settings.purgeDeleteMaxTime;
const auto purge = dbconn->modify(SQL::ACCESS_LOG_PURGE_OLD, SQL::ACCESS_LOG_PURGE_OLD_OPTS);
purge->bindParam(0, std::format("{} days", settings.purgeDaysToKeep));
purge->bindParam(1, settings.purgeDeleteMax);
unsigned int purgedTotal {};
- while (!terminated && stopAt > Job::LastRunTime::clock::now()) {
+ while (!terminated) {
const auto purged = purge->execute();
purgedTotal += purged;
if (purged < settings.purgeDeleteMax) {
diff --git a/src/ingestor.hpp b/src/ingestor.hpp
index 2050b7c..8808ed8 100644
--- a/src/ingestor.hpp
+++ b/src/ingestor.hpp
@@ -32,7 +32,6 @@ namespace WebStat {
minutes freqPurgeOldLogs = 6h;
unsigned int purgeDaysToKeep = 61; // ~2 months
unsigned int purgeDeleteMax = 10'000;
- minutes purgeDeleteMaxTime = 5min;
seconds purgeDeletePause = 3s;
// NOLINTEND(readability-magic-numbers)
};
diff --git a/src/webstat_logger_main.cpp b/src/webstat_logger_main.cpp
index 8dd9f52..963e318 100644
--- a/src/webstat_logger_main.cpp
+++ b/src/webstat_logger_main.cpp
@@ -83,8 +83,6 @@ main(int argc, char ** argv)
"How many days of access log entries to keep")
("job.purge.max", po::value(&settings.purgeDeleteMax)->default_value(settings.purgeDeleteMax),
"Maximum number of access log entries to delete in a single operation")
- ("job.purge.time", po::value(&settings.purgeDeleteMaxTime)->default_value(settings.purgeDeleteMaxTime),
- "Maximum amount of time to spending purging old access log entries before continuing to ingest")
("job.purge.pause", po::value(&settings.purgeDeletePause)->default_value(settings.purgeDeletePause),
"Time to pause for between repeated exections of a delete operation")
;