From c119f48ec8e19c5cea7e2f6730e887a3a83fffbe Mon Sep 17 00:00:00 2001 From: Retro_Guy Date: Wed, 4 Oct 2023 06:27:08 -0700 Subject: [PATCH] Add group database maintenance to expire.php. --- Rocksolid_Light/rslight/scripts/expire.php | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) mode change 100755 => 100644 Rocksolid_Light/rslight/scripts/expire.php diff --git a/Rocksolid_Light/rslight/scripts/expire.php b/Rocksolid_Light/rslight/scripts/expire.php old mode 100755 new mode 100644 index eed63e0..a70208b --- a/Rocksolid_Light/rslight/scripts/expire.php +++ b/Rocksolid_Light/rslight/scripts/expire.php @@ -44,6 +44,7 @@ foreach ($grouplist as $groupline) { } $expire = trim($expire); if ($expire < 1) { + vacuum_group_database($group); continue; } $expireme = time() - ($expire * 86400); @@ -126,10 +127,32 @@ foreach ($grouplist as $groupline) { } thread_load_newsserver($ns, $group, 0); } + vacuum_group_database($group); echo "Expired " . $i . " articles for " . $group . "\n"; file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " Expired " . $i . " articles", FILE_APPEND); } +function vacuum_group_database($group) +{ + global $spooldir, $logfile, $config_name, $OVERRIDES, $CONFIG; + if ($CONFIG['article_database'] == '1') { + $database = $spooldir . '/' . $group . '-articles.db3'; + if ($article_dbh = article_db_open($database)) { + file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " VACUUM article database...", FILE_APPEND); + $article_stmt = $article_dbh->prepare('VACUUM'); + $article_stmt->execute(); + $article_dbh = null; + } + } + $database = $spooldir . '/' . $group . '-data.db3'; + if ($data_dbh = threads_db_open($database)) { + file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " VACUUM threads database...", FILE_APPEND); + $data_stmt = $data_dbh->prepare('VACUUM'); + $data_stmt->execute(); + $data_dbh = null; + } +} + function convert_max_articles_to_days($group) { global $spooldir, $OVERRIDES, $CONFIG;