diff options
Diffstat (limited to 'src/couch_jobs/src/couch_jobs_type_monitor.erl')
-rw-r--r-- | src/couch_jobs/src/couch_jobs_type_monitor.erl | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/couch_jobs/src/couch_jobs_type_monitor.erl b/src/couch_jobs/src/couch_jobs_type_monitor.erl index 04ad60acc..a62eb6217 100644 --- a/src/couch_jobs/src/couch_jobs_type_monitor.erl +++ b/src/couch_jobs/src/couch_jobs_type_monitor.erl @@ -55,7 +55,10 @@ loop(#st{vs = VS, timeout = Timeout} = St) -> try erlfdb:wait(Watch, [{timeout, Timeout}]) catch - error:{erlfdb_error, ?FUTURE_VERSION} -> + error:{erlfdb_error, ?ERLFDB_TRANSACTION_TIMED_OUT} -> + erlfdb:cancel(Watch, [flush]), + ok; + error:{erlfdb_error, Code} when ?ERLFDB_IS_RETRYABLE(Code) -> erlfdb:cancel(Watch, [flush]), ok; error:{timeout, _} -> |