def get_running_requests(self): """ Get running requests """ try: if self.running_task_queue.qsize() > 0 or self.running_output_queue.qsize() > 0: return [] self.show_queue_size() req_status = [RequestStatus.Transforming, RequestStatus.ToCancel, RequestStatus.Cancelling, RequestStatus.ToSuspend, RequestStatus.Suspending, RequestStatus.ToExpire, RequestStatus.Expiring, RequestStatus.ToFinish, RequestStatus.ToForceFinish, RequestStatus.ToResume, RequestStatus.Resuming] reqs = core_requests.get_requests_by_status_type(status=req_status, time_period=None, locking=True, bulk_size=self.retrieve_bulk_size, with_messaging=True) self.logger.debug("Main thread get %s Transforming requests to running" % len(reqs)) if reqs: self.logger.info("Main thread get %s Transforming requests to running" % len(reqs)) return reqs except exceptions.DatabaseException as ex: if 'ORA-00060' in str(ex): self.logger.warn("(cx_Oracle.DatabaseError) ORA-00060: deadlock detected while waiting for resource") else: # raise ex self.logger.error(ex) self.logger.error(traceback.format_exc()) return []
def get_new_requests(self): """ Get new requests to process """ try: # req_status = [RequestStatus.TransformingOpen] # reqs_open = core_requests.get_requests_by_status_type(status=req_status, time_period=3600) # self.logger.info("Main thread get %s TransformingOpen requests to process" % len(reqs_open)) if self.new_task_queue.qsize() > 0 or self.new_output_queue.qsize() > 0: return [] self.show_queue_size() req_status = [RequestStatus.New, RequestStatus.Extend] reqs_new = core_requests.get_requests_by_status_type(status=req_status, locking=True, bulk_size=self.retrieve_bulk_size) self.logger.debug("Main thread get %s [New+Extend] requests to process" % len(reqs_new)) if reqs_new: self.logger.info("Main thread get %s [New+Extend] requests to process" % len(reqs_new)) return reqs_new except exceptions.DatabaseException as ex: if 'ORA-00060' in str(ex): self.logger.warn("(cx_Oracle.DatabaseError) ORA-00060: deadlock detected while waiting for resource") else: # raise ex self.logger.error(ex) self.logger.error(traceback.format_exc()) return []
def get_monitor_requests(self): """ Get requests to monitor """ req_status = [RequestStatus.Transforming] reqs = core_requests.get_requests_by_status_type( status=req_status, time_period=self.poll_time_period, locking=True, bulk_size=self.retrieve_bulk_size) self.logger.info( "Main thread get %s Transforming requests to monitor" % len(reqs)) return reqs
def get_new_requests(self): """ Get new requests to process """ # req_status = [RequestStatus.TransformingOpen] # reqs_open = core_requests.get_requests_by_status_type(status=req_status, time_period=3600) # self.logger.info("Main thread get %s TransformingOpen requests to process" % len(reqs_open)) req_status = [RequestStatus.New, RequestStatus.Extend] reqs_new = core_requests.get_requests_by_status_type( status=req_status, locking=True, bulk_size=self.retrieve_bulk_size) self.logger.info( "Main thread get %s [New+Extend] requests to process" % len(reqs_new)) return reqs_new