diff options
Diffstat (limited to 'files/couch-doc-update')
-rw-r--r-- | files/couch-doc-update | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/files/couch-doc-update b/files/couch-doc-update index 242ed14..5ceed5e 100644 --- a/files/couch-doc-update +++ b/files/couch-doc-update @@ -90,6 +90,7 @@ end # update document # def set_document(db, id, data) + attempt ||= 1 doc = get_document(db, id) if doc doc.id ||= id @@ -97,6 +98,11 @@ def set_document(db, id, data) else create_document(db, id, data) end +rescue RestClient::Conflict + # retry once, reraise if that does not work + raise if attempt > 1 + attempt += 1 + retry end def get_document(db, doc_id) |