misc/migration/3.21.0_Any.py
changeset 10209 4c64a41c0a1d
parent 10208 249126034c0e
child 10316 4ce8b8437838
--- a/misc/migration/3.21.0_Any.py	Fri Jan 16 12:43:32 2015 +0100
+++ b/misc/migration/3.21.0_Any.py	Fri Jan 16 12:35:46 2015 +0100
@@ -2,4 +2,18 @@
 helper = repo.system_source.dbhelper
 sql('DROP INDEX entities_extid_idx')
 sql(helper.sql_create_index('entities', 'extid', True))
+
+sql('''
+CREATE TABLE moved_entities (
+  eid INTEGER PRIMARY KEY NOT NULL,
+  extid VARCHAR(256) UNIQUE
+)
+''')
+
+moved_entities = sql('SELECT -eid, extid FROM entities WHERE eid < 0')
+cu = session.cnxset.cu
+cu.executemany('INSERT INTO moved_entities (eid, extid) VALUES (%s, %s)',
+               moved_entities)
+sql('DELETE FROM entities WHERE eid < 0')
+
 commit()