X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fdbmaintenancethread.cpp;h=f8c33571e3e3a7f139b10a40a303cf40ac5cfe3c;hb=d5c9f7e6c1dd263dfc85a3cb5941a378a5ddd923;hp=0309414215886de440d32fdb0902e658848a5467;hpb=dec33c63afafabf83c3039e916725cac6faef9b3;p=fms.git diff --git a/src/dbmaintenancethread.cpp b/src/dbmaintenancethread.cpp index 0309414..f8c3357 100644 --- a/src/dbmaintenancethread.cpp +++ b/src/dbmaintenancethread.cpp @@ -20,10 +20,16 @@ DBMaintenanceThread::DBMaintenanceThread() m_last1day=Poco::Timestamp(); m_last1day-=Poco::Timespan(0,23,51,0,0); + m_deletemessagesolderthan=180; std::string tempval="180"; Option::Instance()->Get("DeleteMessagesOlderThan",tempval); StringFunctions::Convert(tempval,m_deletemessagesolderthan); + m_messagedownloadmaxdaysbackward=5; + tempval="5"; + Option::Instance()->Get("MessageDownloadMaxDaysBackward",tempval); + StringFunctions::Convert(tempval,m_messagedownloadmaxdaysbackward); + } @@ -95,6 +101,9 @@ void DBMaintenanceThread::Do1HourMaintenance() st.Step(); } + // insert all identities not in trust list already + m_db->Execute("INSERT INTO tblIdentityTrust(LocalIdentityID,IdentityID) SELECT LocalIdentityID,IdentityID FROM tblLocalIdentity,tblIdentity WHERE LocalIdentityID || '_' || IdentityID NOT IN (SELECT LocalIdentityID || '_' || IdentityID FROM tblIdentityTrust);"); + m_log->debug("PeriodicDBMaintenance::Do1HourMaintenance"); } @@ -249,10 +258,18 @@ void DBMaintenanceThread::Do1DayMaintenance() // delete old messages date=Poco::Timestamp(); date-=Poco::Timespan(m_deletemessagesolderthan,0,0,0,0); + m_log->trace("PeriodicDBMaintenance::Do1DayMaintenance deleting messages prior to "+Poco::DateTimeFormatter::format(date,"%Y-%m-%d")); st=m_db->Prepare("DELETE FROM tblMessage WHERE MessageDatePrepare("DELETE FROM tblMessageRequests WHERE DayExecute("DELETE FROM tblIdentityTrust WHERE LocalIdentityID NOT IN (SELECT LocalIdentityID FROM tblLocalIdentity);"); m_db->Execute("DELETE FROM tblIdentityTrust WHERE IdentityID NOT IN (SELECT IdentityID FROM tblIdentity);");