The way background sync works at the moment is
- Receives sync event
- Removes request from queue and retry
- If retry fails, add request back to queue.
This works really well if the network strength is very good.
If the network strength is not (e.g 2g/edge network) .What might happen is.
- Receives sync event.
- Removes request from queue and retry.
While retrying...a user might close the tab or reload the page.
- Request being retried never gets to server and never gets added back to the queue