Archived
1
0
Fork 0

try to fix memory leak

This commit is contained in:
yzhh 2021-08-25 00:49:19 +08:00
parent b66f54decd
commit 69a897b55e
3 changed files with 18 additions and 6 deletions

View file

@ -1,7 +1,7 @@
import datetime
from core.elements import MessageSession
from database.orm import session
from database.orm import DBSession
from database.tables import EnabledModules, SenderInfo, TargetAdmin, CommandTriggerTime
@ -13,6 +13,9 @@ def convert_str_to_list(s: str) -> list:
return s.split('|')
session = DBSession().session
class BotDBUtil:
class Module:
def __init__(self, msg: [MessageSession, str]):
@ -20,6 +23,7 @@ class BotDBUtil:
self.targetId = str(msg.target.targetId)
else:
self.targetId = msg
self.query = session.query(EnabledModules).filter_by(targetId=self.targetId).first()
self.enable_modules_list = convert_str_to_list(self.query.enabledModules) if self.query is not None else []
self.need_insert = True if self.query is None else False

View file

@ -6,8 +6,13 @@ from database.tables import *
DB_LINK = Config('db_path')
engine = create_engine(DB_LINK)
class DBSession:
def __init__(self):
self.engine = engine = create_engine(DB_LINK)
Base.metadata.create_all(bind=engine, checkfirst=True)
self.Session = sessionmaker()
self.Session.configure(bind=self.engine)
Base.metadata.create_all(bind=engine, checkfirst=True)
session = sessionmaker(engine)()
@property
def session(self):
return self.Session()

View file

@ -2,10 +2,13 @@ from sqlalchemy import Column, String, Text, TIMESTAMP, text
from sqlalchemy.dialects.mysql import LONGTEXT
from sqlalchemy.ext.declarative import declarative_base
from database.orm import engine, session
from database.orm import DBSession
Base = declarative_base()
table_prefix = 'module_wiki_'
db = DBSession()
session = db.session
engine = db.engine
class WikiTargetSetInfo(Base):