hooks/syncschema.py
branchstable
changeset 7815 2a164a9cf81c
parent 7562 cdef82ca9eab
child 7879 9aae456abab5
equal deleted inserted replaced
7814:1ec9fe1dfba9 7815:2a164a9cf81c
    85     column = SQL_PREFIX + rtype
    85     column = SQL_PREFIX + rtype
    86     try:
    86     try:
    87         session.system_sql(str('ALTER TABLE %s ADD %s integer'
    87         session.system_sql(str('ALTER TABLE %s ADD %s integer'
    88                                % (table, column)), rollback_on_failure=False)
    88                                % (table, column)), rollback_on_failure=False)
    89         session.info('added column %s to table %s', column, table)
    89         session.info('added column %s to table %s', column, table)
    90     except:
    90     except Exception:
    91         # silent exception here, if this error has not been raised because the
    91         # silent exception here, if this error has not been raised because the
    92         # column already exists, index creation will fail anyway
    92         # column already exists, index creation will fail anyway
    93         session.exception('error while adding column %s to table %s',
    93         session.exception('error while adding column %s to table %s',
    94                           table, column)
    94                           table, column)
    95     # create index before alter table which may expectingly fail during test
    95     # create index before alter table which may expectingly fail during test
   219             repo.set_schema(repo.schema, rebuildinfered=rebuildinfered)
   219             repo.set_schema(repo.schema, rebuildinfered=rebuildinfered)
   220             # CWUser class might have changed, update current session users
   220             # CWUser class might have changed, update current session users
   221             cwuser_cls = self.session.vreg['etypes'].etype_class('CWUser')
   221             cwuser_cls = self.session.vreg['etypes'].etype_class('CWUser')
   222             for session in repo._sessions.values():
   222             for session in repo._sessions.values():
   223                 session.user.__class__ = cwuser_cls
   223                 session.user.__class__ = cwuser_cls
   224         except:
   224         except Exception:
   225             self.critical('error while setting schmea', exc_info=True)
   225             self.critical('error while setting schema', exc_info=True)
   226 
   226 
   227     def rollback_event(self):
   227     def rollback_event(self):
   228         self.precommit_event()
   228         self.precommit_event()
   229 
   229 
   230 
   230