Commit 6f9e5279 authored by Ozzie Isaacs's avatar Ozzie Isaacs

No autoflush on metadata.db change

parent 4a9b01e9
...@@ -402,6 +402,9 @@ class AlchemyEncoder(json.JSONEncoder): ...@@ -402,6 +402,9 @@ class AlchemyEncoder(json.JSONEncoder):
el.append(ele.get()) el.append(ele.get())
else: else:
el.append(json.dumps(ele, cls=AlchemyEncoder)) el.append(json.dumps(ele, cls=AlchemyEncoder))
if field == 'authors':
data = " & ".join(el)
else:
data = ",".join(el) data = ",".join(el)
if data == '[]': if data == '[]':
data = "" data = ""
...@@ -542,7 +545,7 @@ class CalibreDB(): ...@@ -542,7 +545,7 @@ class CalibreDB():
backref='books')) backref='books'))
cls.session_factory = scoped_session(sessionmaker(autocommit=False, cls.session_factory = scoped_session(sessionmaker(autocommit=False,
autoflush=True, autoflush=False,
bind=cls.engine)) bind=cls.engine))
for inst in cls.instances: for inst in cls.instances:
inst.initSession() inst.initSession()
...@@ -619,9 +622,12 @@ class CalibreDB(): ...@@ -619,9 +622,12 @@ class CalibreDB():
.join(*join, isouter=True) \ .join(*join, isouter=True) \
.filter(db_filter) \ .filter(db_filter) \
.filter(self.common_filters(allow_show_archived)) .filter(self.common_filters(allow_show_archived))
try:
pagination = Pagination(page, pagesize, pagination = Pagination(page, pagesize,
len(query.all())) len(query.all()))
entries = query.order_by(*order).offset(off).limit(pagesize).all() entries = query.order_by(*order).offset(off).limit(pagesize).all()
except Exception as e:
logger.debug(e)
for book in entries: for book in entries:
book = self.order_authors(book) book = self.order_authors(book)
return entries, randm, pagination return entries, randm, pagination
......
...@@ -394,7 +394,8 @@ def uploadFileToEbooksFolder(destFile, f): ...@@ -394,7 +394,8 @@ def uploadFileToEbooksFolder(destFile, f):
if len(existingFiles) > 0: if len(existingFiles) > 0:
driveFile = existingFiles[0] driveFile = existingFiles[0]
else: else:
driveFile = drive.CreateFile({'title': x, 'parents': [{"kind": "drive#fileLink", 'id': parent['id']}],}) driveFile = drive.CreateFile({'title': x,
'parents': [{"kind": "drive#fileLink", 'id': parent['id']}], })
driveFile.SetContentFile(f) driveFile.SetContentFile(f)
driveFile.Upload() driveFile.Upload()
else: else:
......
...@@ -123,6 +123,7 @@ class TaskConvert(CalibreTask): ...@@ -123,6 +123,7 @@ class TaskConvert(CalibreTask):
book=book_id, uncompressed_size=os.path.getsize(file_path + format_new_ext)) book=book_id, uncompressed_size=os.path.getsize(file_path + format_new_ext))
try: try:
local_db.session.merge(new_format) local_db.session.merge(new_format)
local_db.session.flush()
local_db.session.commit() local_db.session.commit()
except SQLAlchemyError as e: except SQLAlchemyError as e:
local_db.session.rollback() local_db.session.rollback()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment