misc/migration/3.14.4_Any.py
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Fri, 18 Jan 2013 18:48:15 +0100
changeset 8661 4d24ac49f90d
parent 8375 7d8979176bc0
child 9450 af4b93bc38a5
permissions -rw-r--r--
[entity] add a "repo_side" parameter to `_cw_dont_cache_attribute` This parameter (defaulting to `False`) is used to inform cubicweb that we really really do not want to cache a value during creation or update. This will be used by a storage that may do very specific processing on attribute values that result in a stored value different than the provided one (e.g. BFSS `fs_importing` mode).

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['system']
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)
dbhelper.change_col_type(cursor, 'deleted_entities', 'source', attrtype, False)