From: Oleg Broytman Date: Mon, 24 Oct 2016 11:30:46 +0000 (+0300) Subject: Fix VACUUM command X-Git-Tag: 0.0.15~17 X-Git-Url: https://git.phdru.name/?p=m_librarian.git;a=commitdiff_plain;h=6b2af0acc721c0b211fb0952c009b23cf3252d00 Fix VACUUM command SQLite doesn't vacuum a single table but the entire database. --- diff --git a/m_librarian/glst.py b/m_librarian/glst.py index f639c1b..0ceba1a 100755 --- a/m_librarian/glst.py +++ b/m_librarian/glst.py @@ -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 diff --git a/m_librarian/inp.py b/m_librarian/inp.py index e16df6c..863523f 100644 --- a/m_librarian/inp.py +++ b/m_librarian/inp.py @@ -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")