misc/migration/3.14.4_Any.py
author Julien Cristau <julien.cristau@logilab.fr>
Mon, 22 Dec 2014 14:39:50 +0100
changeset 10129 52adf66fae7d
parent 9463 d62e13eba033
child 10200 cceb2c7c02f4
permissions -rw-r--r--
[migration] don't crash when deleting a non-existing rtype When asked to delete a relation type, instead of checking if it was computed or not, just delete both the CWRType and CWComputedRType.

from yams import schema2sql as y2sql

dbhelper = repo.system_source.dbhelper
rdefdef = schema['CWSource'].rdef('name')
attrtype = y2sql.type_from_constraints(dbhelper, rdefdef.object, rdefdef.constraints).split()[0]

cursor = session.cnxset.cu
sql('UPDATE entities SET asource = source WHERE asource is NULL')
dbhelper.change_col_type(cursor, 'entities', 'asource', attrtype, False)
dbhelper.change_col_type(cursor, 'entities', 'source', attrtype, False)