def main(): DBMgr.getInstance().startRequest() ch = ConferenceHolder() ids = [] print "Getting conference IDs..." for conf in ch.getList(): ids.append(conf.getId()) totalNumberConfs = len(ids) DBMgr.getInstance().endRequest() print "Updating conferences..." i = 0 N_CONF = 10 cErrorList = [] while ids: if len(ids) >= N_CONF: lids = ids[:N_CONF] del ids[:N_CONF] else: lids = ids ids = None for j in range(10): conf = None try: DBMgr.getInstance().startRequest() for id in lids: conf = ch.getById(id) log("check for conference %s: %s/%s" % (conf.getId(), i, totalNumberConfs)) for cont in conf.getContributionList(): #if not isinstance(cont, AcceptedContribution): if "content" in cont.getFields().keys(): if cont.getFields()["content"]: if cont.getFields( )["content"] != cont.description: log(" contribution %s : content field no empty and diffrent from description" % cont.getId()) else: #cont.setField("content",cont.description) cont.getFields()["content"] = cont.description cont._p_changed = 1 else: #cont.setField("content",cont.description) cont.getFields()["content"] = cont.description cont._p_changed = 1 i += 1 DBMgr.getInstance().endRequest() print "wait 0.5s..." sleep(0.5) break except Exception, e: cErrorList.append(conf) i -= N_CONF log("error %s, retry %d time(s)" % (e, int(10 - j))) sleep(int(j)) DBMgr.getInstance().abort()
def main(): DBMgr.getInstance().startRequest() ch = ConferenceHolder() ids = [] print "Getting conference IDs..." for conf in ch.getList(): ids.append(conf.getId()) totalNumberConfs = len(ids) DBMgr.getInstance().endRequest() print "Updating conferences..." i = 0 N_CONF = 10 cErrorList = [] while ids: if len(ids) >= N_CONF: lids = ids[:N_CONF] del ids[:N_CONF] else: lids = ids ids = None for j in range(10): conf = None try: DBMgr.getInstance().startRequest() for id in lids: conf = ch.getById(id) log("check for conference %s: %s/%s" % (conf.getId(), i, totalNumberConfs)) for cont in conf.getContributionList(): # if not isinstance(cont, AcceptedContribution): if "content" in cont.getFields().keys(): if cont.getFields()["content"]: if cont.getFields()["content"] != cont.description: log( " contribution %s : content field no empty and diffrent from description" % cont.getId() ) else: # cont.setField("content",cont.description) cont.getFields()["content"] = cont.description cont._p_changed = 1 else: # cont.setField("content",cont.description) cont.getFields()["content"] = cont.description cont._p_changed = 1 i += 1 DBMgr.getInstance().endRequest() print "wait 0.5s..." sleep(0.5) break except Exception, e: cErrorList.append(conf) i -= N_CONF log("error %s, retry %d time(s)" % (e, int(10 - j))) sleep(int(j)) DBMgr.getInstance().abort()
def run4eachConfSlowly(): DBMgr.getInstance().startRequest() ch = ConferenceHolder() ids = [] print "Getting conference IDs..." for conf in ch.getList(): ids.append(conf.getId()) totalNumberConfs = len(ids) DBMgr.getInstance().endRequest() print "Updating conferences..." i = 0 N_CONF = 10 cErrorList = [] while ids: if len(ids) >= N_CONF: lids = ids[:N_CONF] del ids[:N_CONF] else: lids = ids ids = None for j in range(10): conf = None try: DBMgr.getInstance().startRequest() for id in lids: conf = ch.getById(id) log("check for conference %s: %s/%s" % (conf.getId(), i, totalNumberConfs)) i += 1 DBMgr.getInstance().endRequest() print "wait 0.5s..." sleep(0.5) break except Exception, e: cErrorList.append(conf) i -= N_CONF log("error %s, retry %d time(s)" % (e, int(10 - j))) sleep(int(j)) DBMgr.getInstance().abort()
def run4eachConfFast(): DBMgr.getInstance().startRequest() ch = ConferenceHolder() for conf in ch.getList(): moveLogoToDisplayMgr(conf) DBMgr.getInstance().endRequest()
if isinstance(prin, Avatar): prin.linkTo(cat, "access") for c in cat.getSubCategoryList(): indexCategory(c) DBMgr.getInstance().startRequest() root = CategoryManager().getRoot() print "indexing categories..." indexCategory(root) DBMgr.getInstance().endRequest() DBMgr.getInstance().startRequest() confids = [] for conf in ch.getList(): confids.append(conf.getId()) DBMgr.getInstance().endRequest() print "indexing conferences..." i = 0 total = len(confids) for confId in confids: print "processed %d(current:%s) conferences on %d"%(i, confId, total) i += 1 DBMgr.getInstance().startRequest() conf = ch.getById(confId) conf.getCreator().linkTo(conf, "creator")