feat: add cleanup for expired sessions on server start and during queue evaluation
This commit is contained in:
@@ -102,6 +102,7 @@ async function evaluateQueue(eventId, io) {
|
|||||||
|
|
||||||
// Clean up expired sessions from database
|
// Clean up expired sessions from database
|
||||||
if (expiredSessions.length > 0) {
|
if (expiredSessions.length > 0) {
|
||||||
|
console.log(`Cleaning up ${expiredSessions.length} expired sessions for event ${eventId}`);
|
||||||
await connection.execute(
|
await connection.execute(
|
||||||
'DELETE FROM active_sessions WHERE event_id = ? AND expires_at < NOW()',
|
'DELETE FROM active_sessions WHERE event_id = ? AND expires_at < NOW()',
|
||||||
[eventId]
|
[eventId]
|
||||||
@@ -163,6 +164,18 @@ export async function GET(req) {
|
|||||||
|
|
||||||
global.io = io
|
global.io = io
|
||||||
|
|
||||||
|
// Clean up all expired sessions on server start
|
||||||
|
const connection = await getDbConnection()
|
||||||
|
if (connection) {
|
||||||
|
try {
|
||||||
|
const [result] = await connection.execute('DELETE FROM active_sessions WHERE expires_at < NOW()')
|
||||||
|
console.log(`Server startup: Cleaned ${result.affectedRows} expired sessions`)
|
||||||
|
await connection.end()
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Cleanup error on startup:', error)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Periodikus token ellenőrzés minden 5 másodpercben
|
// Periodikus token ellenőrzés minden 5 másodpercben
|
||||||
setInterval(async () => {
|
setInterval(async () => {
|
||||||
for (const eventId of Object.keys(events)) {
|
for (const eventId of Object.keys(events)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user