def dbcall(): with dispatcher.node.db.open_session() as sess: q = sess.query(NodeState).filter(NodeState.key == consts.NSK_DEFAULT_ADDRESS) ns = q.first() if ns: addr = sess.query(DmailAddress).filter(DmailAddress.id == int(ns.value)).first() if addr: sess.expunge(addr) return addr addr = sess.query(DmailAddress).order_by(DmailAddress.id).limit(1).first() if addr: sess.expire_on_commit = False ns = NodeState() ns.key = consts.NSK_DEFAULT_ADDRESS ns.value = str(addr.id) sess.add(ns) sess.commit() sess.expunge(addr) return addr
def dbcall(): with dispatcher.node.db.open_session() as sess: q = sess.query(NodeState).filter(NodeState.key == consts.NSK_DEFAULT_ADDRESS) ns = q.first() if not ns: ns = NodeState() ns.key = consts.NSK_DEFAULT_ADDRESS sess.add(ns) if type(dbid) is int: sbid = str(dbid) ns.value = dbid sess.commit()