Версия библиотек: APScheduler-3.5.3 SQLAlchemy-1.3.4 cx_ Oracle -7.1.3 python -2.7.14
BackgroundScheduler запущен (с job_store) и работает успешно (Вы можно добавлять задания, хранилище заданий работает нормально, и т. д. c) Однако, если неактивно более 24 часов (новые задания не добавляются и не изменяются), возникает следующая ошибка при добавлении нового задания «OperationalError ('(cx_ Oracle .OperationalError»). ) ORA-03114: не подключен к ORACLE ',) "
Код в норме:
job_store = SQLAlchemyJobStore(url=URL_JOBSTORE, tablename = TABLE_JOBSTORE)
_job_scheduler = BackgroundScheduler()
_job_scheduler.add_jobstore(job_store)
_job_scheduler.start()
_job_scheduler.add_job(...) #OK
Ошибка кода:
job_store = SQLAlchemyJobStore(url=URL_JOBSTORE, tablename = TABLE_JOBSTORE)
_job_scheduler = BackgroundScheduler()
_job_scheduler.add_jobstore(job_store)
_job_scheduler.start()
#LONG TIME OPERATIONS 24 hours past
_job_scheduler.add_job(...) # drops OperationErrror exception
Ошибка полная:
OperationalError: (cx_ Oracle .OperationalError) ORA-03114: не подключен к ORACLE \ n [SQL: ВСТАВИТЬ INTO "jobrestore_PRE_CENTRE2_0" (id, next_run_time, job_state) VALUES (id: id: next_run_time,: job_state)] (Справочная информация об этой ошибке: http://sqlalche.me/e/e3q8) \ n '
Я думаю, что Jobstore потерял соединение. Потому что, если вы снова создадите планировщик, он будет работать правильно. Есть ли способ повторно подключить Jobstore к базе данных?
Спасибо