]> git.phdru.name Git - m_librarian.git/commitdiff
Fix VACUUM command
authorOleg Broytman <phd@phdru.name>
Mon, 24 Oct 2016 11:30:46 +0000 (14:30 +0300)
committerOleg Broytman <phd@phdru.name>
Mon, 24 Oct 2016 11:30:46 +0000 (14:30 +0300)
SQLite doesn't vacuum a single table but the entire database.

m_librarian/glst.py
m_librarian/inp.py

index f639c1b3b6d4cb58bb6c1e58e3262336376845e4..0ceba1a350f64a7da2a91fb83f32a3f33246c0b5 100755 (executable)
@@ -48,8 +48,10 @@ def _import_glst():
     old_nonfb2, new_nonfb2 = import_glst_file(
         os.path.join(ml_dir, 'glst', 'genres_nonfb2.glst'))
     connection = sqlhub.processConnection
-    if connection.dbName in ('postgres', 'sqlite'):
+    if connection.dbName == 'postgres':
         connection.query("VACUUM %s" % Genre.sqlmeta.table)
+    elif connection.dbName == 'sqlite':
+        connection.query("VACUUM")
     return old_fb2 + old_nonfb2, new_fb2 + new_nonfb2
 
 
index e16df6c5d91496d9f652e966084429737ce21a5e..863523fe2cbbf0f95637656e702f6b364873a5c5 100644 (file)
@@ -90,6 +90,8 @@ def import_inpx(path):
         sqlhub.doInTransaction(import_inp, archive + '.zip', inp)
         inp.close()
     connection = sqlhub.processConnection
-    if connection.dbName in ('postgres', 'sqlite'):
+    if connection.dbName == 'postgres':
         for table in Author, Book, Extension, Genre, Language:
             connection.query("VACUUM %s" % table.sqlmeta.table)
+    elif connection.dbName == 'sqlite':
+        connection.query("VACUUM")