dont leave transactions open in cron

pull/166/head
Aevann 2023-07-05 19:59:06 +03:00
parent 5bd8bdd089
commit 97d6ba5d48
1 changed files with 18 additions and 14 deletions

View File

@ -9,6 +9,7 @@ from sqlalchemy.orm import load_only, InstrumentedAttribute
import click
import requests
import traceback
import files.helpers.offsitementions as offsitementions
import files.helpers.stats as stats
@ -32,7 +33,7 @@ def cron(every_5m, every_1h, every_1d, every_1mo):
g.db = db_session()
g.v = None
#I put commit under each task to release database locks and prevent main flask app crashing
try:
if every_5m:
_award_timers_task()
@ -52,8 +53,11 @@ def cron(every_5m, every_1h, every_1d, every_1mo):
_generate_emojis_zip()
_leaderboard_task()
g.db.commit()
except:
print(traceback.format_exc(), flush=True)
g.db.rollback()
g.db.close()
del g.db
stdout.flush()