def main(): try: app = SESSION.query(App).filter(App.name == "CloudControl").one() if app.status == "stop": app.start_time = datetime.datetime.now() app.end_time = None app.status = "running" except sqlalchemy.orm.exc.NoResultFound: app = App( name="CloudControl", start_time=datetime.datetime.now(), status="running", platform=1 ) SESSION.add(app) except sqlalchemy.orm.exc.MultipleResultsFound: pass SESSION.commit() ioloop.IOLoop.current().spawn_callback(get_code) yield generate_case() yield Q.join() app.end_time = datetime.datetime.now() app.status = "stop" global DONE_COUNT, CASE_COUNT DONE_COUNT = 0 CASE_COUNT = 0 SESSION.commit()