Closed Bug 959032 Opened 10 years ago Closed 7 years ago

Support "409 Conflict" errors from sync1.5 storage servers


(Firefox for Android Graveyard :: Android Sync, defect, P2)



(Not tracked)



(Reporter: rfkelly, Unassigned)



(Whiteboard: [qa?][parallel])

Per the proposed sync1.5 protocol docs in Bug 951986, the sync storage servers may return a "409 Conflict" error when two clients attempt to update a collection simultaneously.  This is designed to prevent data loss that can occur when records from different clients get assigned the same timestamp.

Android sync needs to be prepared to handle this error.  It should be safe to initially treat it similarly to a "503 Service Unavailable" i.e. just abort the sync and start it again later.  More nuanced handling might abort syncing that datatype but allow other datatypes to proceed.
Whiteboard: [qa?]
tracking-fennec: --- → 30+
Priority: -- → P2
Whiteboard: [qa?] → [qa?][parallel]
tracking-fennec: 30+ → ---
Blocks: 1051739
Blocks: 1062120
All (I believe!) of our storage requests now include X-If-Unmodified-Since header, so I don't believe this is necessary anymore. See Bug 1253111 which covers uploads for most collections. Either way we will certainly abort if we see this on POSTs.
Closed: 7 years ago
Resolution: --- → FIXED
Product: Android Background Services → Firefox for Android
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.