server/repository.py
branchstable
changeset 7616 8837e4733888
parent 7573 c8f8762c986d
child 7622 36126858405f
equal deleted inserted replaced
7613:63bac28113a5 7616:8837e4733888
   740                     ex.entity = ex.entity.eid # error raised by yams
   740                     ex.entity = ex.entity.eid # error raised by yams
   741                     args = list(ex.args)
   741                     args = list(ex.args)
   742                     args[0] = ex.entity
   742                     args[0] = ex.entity
   743                     ex.args = tuple(args)
   743                     ex.args = tuple(args)
   744                 raise
   744                 raise
   745             except:
   745             except Exception:
   746                 # FIXME: check error to catch internal errors
   746                 # FIXME: check error to catch internal errors
   747                 self.exception('unexpected error while executing %s with %s', rqlstring, args)
   747                 self.exception('unexpected error while executing %s with %s', rqlstring, args)
   748                 raise
   748                 raise
   749         finally:
   749         finally:
   750             session.reset_pool()
   750             session.reset_pool()
  1118                     # (here, scleanup
  1118                     # (here, scleanup
  1119                     rql += ', NOT (Y cw_source S, S eid %(seid)s)'
  1119                     rql += ', NOT (Y cw_source S, S eid %(seid)s)'
  1120                 try:
  1120                 try:
  1121                     session.execute(rql, {'x': eid, 'seid': scleanup},
  1121                     session.execute(rql, {'x': eid, 'seid': scleanup},
  1122                                     build_descr=False)
  1122                                     build_descr=False)
  1123                 except:
  1123                 except Exception:
  1124                     self.exception('error while cascading delete for entity %s '
  1124                     self.exception('error while cascading delete for entity %s '
  1125                                    'from %s. RQL: %s', entity, sourceuri, rql)
  1125                                    'from %s. RQL: %s', entity, sourceuri, rql)
  1126         self.system_source.delete_info_multi(session, [entity], sourceuri)
  1126         self.system_source.delete_info_multi(session, [entity], sourceuri)
  1127 
  1127 
  1128     def _delete_info_multi(self, session, entities, sourceuri, scleanup=None):
  1128     def _delete_info_multi(self, session, entities, sourceuri, scleanup=None):
  1148                 if scleanup is not None:
  1148                 if scleanup is not None:
  1149                     # source cleaning: only delete relations stored locally
  1149                     # source cleaning: only delete relations stored locally
  1150                     rql += ', NOT (Y cw_source S, S eid %(seid)s)'
  1150                     rql += ', NOT (Y cw_source S, S eid %(seid)s)'
  1151                 try:
  1151                 try:
  1152                     session.execute(rql, {'seid': scleanup}, build_descr=False)
  1152                     session.execute(rql, {'seid': scleanup}, build_descr=False)
  1153                 except:
  1153                 except Exception:
  1154                     self.exception('error while cascading delete for entity %s '
  1154                     self.exception('error while cascading delete for entity %s '
  1155                                    'from %s. RQL: %s', entities, sourceuri, rql)
  1155                                    'from %s. RQL: %s', entities, sourceuri, rql)
  1156         self.system_source.delete_info_multi(session, entities, sourceuri)
  1156         self.system_source.delete_info_multi(session, entities, sourceuri)
  1157 
  1157 
  1158     def locate_relation_source(self, session, subject, rtype, object):
  1158     def locate_relation_source(self, session, subject, rtype, object):