|
@@ -374,6 +374,12 @@ class PersistentScheduler(Scheduler):
|
|
|
def setup_schedule(self):
|
|
|
try:
|
|
|
self._store = self._open_schedule()
|
|
|
+ # In some cases there may be different errors from a storage
|
|
|
+ # backend for corrupted files. Example - DBPageNotFoundError
|
|
|
+ # exception from bsddb. In such case the file will be
|
|
|
+ # successfully opened but the error will be raised on first key
|
|
|
+ # retrieving.
|
|
|
+ self._store.keys()
|
|
|
except Exception as exc:
|
|
|
self._store = self._destroy_open_corrupted_schedule(exc)
|
|
|
|