Don't migrate old databases
This commit is contained in:
1 parent
230b7f47cc
commit
9de8ed2dee
1 file changed
+20
-5
@@ -2,6 +2,7 @@ import json
|
|||||||
import os
|
import os
|
||||||
import time
|
import time
|
||||||
import traceback
|
import traceback
|
||||||
|
from sqlite3 import OperationalError
|
||||||
|
|
||||||
from CodernityDB.database import RecordNotFound
|
from CodernityDB.database import RecordNotFound
|
||||||
from CodernityDB.index import IndexException, IndexNotFoundException, IndexConflict
|
from CodernityDB.index import IndexException, IndexNotFoundException, IndexConflict
|
||||||
@@ -9,7 +10,7 @@ from couchpotato import CPLog
|
|||||||
from couchpotato.api import addApiView
|
from couchpotato.api import addApiView
|
||||||
from couchpotato.core.event import addEvent, fireEvent, fireEventAsync
|
from couchpotato.core.event import addEvent, fireEvent, fireEventAsync
|
||||||
from couchpotato.core.helpers.encoding import toUnicode, sp
|
from couchpotato.core.helpers.encoding import toUnicode, sp
|
||||||
from couchpotato.core.helpers.variable import getImdb, tryInt
|
from couchpotato.core.helpers.variable import getImdb, tryInt, randomString
|
||||||
|
|
||||||
|
|
||||||
log = CPLog(__name__)
|
log = CPLog(__name__)
|
||||||
@@ -311,6 +312,9 @@ class Database(object):
|
|||||||
}
|
}
|
||||||
|
|
||||||
migrate_data = {}
|
migrate_data = {}
|
||||||
|
rename_old = False
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
c = conn.cursor()
|
c = conn.cursor()
|
||||||
|
|
||||||
@@ -325,6 +329,7 @@ class Database(object):
|
|||||||
if ml == 'category':
|
if ml == 'category':
|
||||||
migrate_data[ml] = {}
|
migrate_data[ml] = {}
|
||||||
else:
|
else:
|
||||||
|
rename_old = True
|
||||||
raise
|
raise
|
||||||
|
|
||||||
for p in c.fetchall():
|
for p in c.fetchall():
|
||||||
@@ -612,11 +617,21 @@ class Database(object):
|
|||||||
log.info('Total migration took %s', time.time() - migrate_start)
|
log.info('Total migration took %s', time.time() - migrate_start)
|
||||||
log.info('=' * 30)
|
log.info('=' * 30)
|
||||||
|
|
||||||
|
rename_old = True
|
||||||
|
|
||||||
|
except OperationalError:
|
||||||
|
log.error('Migrating from faulty database, probably a (too) old version: %s', traceback.format_exc())
|
||||||
|
except:
|
||||||
|
log.error('Migration failed: %s', traceback.format_exc())
|
||||||
|
|
||||||
|
|
||||||
# rename old database
|
# rename old database
|
||||||
log.info('Renaming old database to %s ', old_db + '.old')
|
if rename_old:
|
||||||
os.rename(old_db, old_db + '.old')
|
random = randomString()
|
||||||
|
log.info('Renaming old database to %s ', '%s.%s_old' % (old_db, random))
|
||||||
|
os.rename(old_db, '%s.%s_old' % (old_db, random))
|
||||||
|
|
||||||
if os.path.isfile(old_db + '-wal'):
|
if os.path.isfile(old_db + '-wal'):
|
||||||
os.rename(old_db + '-wal', old_db + '-wal.old')
|
os.rename(old_db + '-wal', '%s-wal.%s_old' % (old_db, random))
|
||||||
if os.path.isfile(old_db + '-shm'):
|
if os.path.isfile(old_db + '-shm'):
|
||||||
os.rename(old_db + '-shm', old_db + '-shm.old')
|
os.rename(old_db + '-shm', '%s-shm.%s_old' % (old_db, random))
|
||||||
Reference in new issue
Block a user