misc/migration/3.10.4_Any.py
author Erica Marco <erica.marco@logilab.fr>
Tue, 17 Mar 2015 15:50:40 +0100
changeset 10270 1ae64186af94
parent 6702 dfc19a6fb8aa
permissions -rw-r--r--
[migration] reorder system tables / meta-schema migration into bootstrap_migration Also fix a bug in the backwards-compat eid_type_source method where it returned an extid (possibly null) instead of a source name. With these changes, migrating a database from cw 3.12 is now possible. Closes #4962681
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6579
2b93aa515031 [migration] fix 3.10 migration: since cw_source is marked as meta relation, it has not been automatically added to all existant entity type
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     1
for eschema in schema.entities():
6608
1a76045d093d [migration] skip final entity types
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 6607
diff changeset
     2
    if not (eschema.final or 'cw_source' in eschema.subjrels):
6702
dfc19a6fb8aa [migration] 3.10.4 migration should not ask confirmation when adding CWSource
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 6679
diff changeset
     3
        add_relation_definition(eschema.type, 'cw_source', 'CWSource', ask_confirm=False)
6579
2b93aa515031 [migration] fix 3.10 migration: since cw_source is marked as meta relation, it has not been automatically added to all existant entity type
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     4
2b93aa515031 [migration] fix 3.10 migration: since cw_source is marked as meta relation, it has not been automatically added to all existant entity type
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     5
sql('INSERT INTO cw_source_relation(eid_from, eid_to) '
2b93aa515031 [migration] fix 3.10 migration: since cw_source is marked as meta relation, it has not been automatically added to all existant entity type
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     6
    'SELECT e.eid,s.cw_eid FROM entities as e, cw_CWSource as s '
6621
11c09415078b [migration] stupid typo, cw_source still not properly set
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 6608
diff changeset
     7
    'WHERE s.cw_name=e.source AND NOT EXISTS(SELECT 1 FROM cw_source_relation WHERE eid_from=e.eid AND eid_to=s.cw_eid)')
6579
2b93aa515031 [migration] fix 3.10 migration: since cw_source is marked as meta relation, it has not been automatically added to all existant entity type
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     8
commit()