Weave should deal with a locked server during an initial sync

RESOLVED INVALID

Status

Cloud Services
General
--
critical
RESOLVED INVALID
10 years ago
9 years ago

People

(Reporter: Steve Wardell, Unassigned)

Tracking

unspecified
Future
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

10 years ago
I installed 0.1.32 on a 2nd machine running OSX 10.5.3. When I attempt to sync, I receive a failure. I would expect sync to work. The verbose log entry is below:

2008-06-29 13:06:13	Service.DAV	DEBUG	LOCK request for lock
2008-06-29 13:06:13	Service.DAV	WARN	_makeRequest: got status 423
2008-06-29 13:06:14	Async.Generator	ERROR	Exception: [object Object]
2008-06-29 13:06:14	Async.Generator	DEBUG	Stack trace:
No traceback available.
This exception was raised by an asynchronous coroutine.
Initial async stack trace:
unknown (async) :: WeaveLockWrapper-67
module:wrap.js:91 :: WeaveNotifyWrapper
module:service.js:601 :: WeaveSync_sync
chrome://weave/content/sync.js:366 :: Sync_doSync
chrome://browser/content/browser.xul:1 :: oncommand
2008-06-29 13:06:21	Service.DAV	DEBUG	LOCK request for lock
2008-06-29 13:06:22	Service.DAV	WARN	_makeRequest: got status 423
2008-06-29 13:06:22	Async.Generator	ERROR	Exception: [object Object]
2008-06-29 13:06:22	Async.Generator	DEBUG	Stack trace:
No traceback available.
This exception was raised by an asynchronous coroutine.
Initial async stack trace:
unknown (async) :: WeaveLockWrapper-71
module:wrap.js:91 :: WeaveNotifyWrapper
module:service.js:601 :: WeaveSync_sync
chrome://weave/content/sync.js:366 :: Sync_doSync
chrome://browser/content/browser.xul:1 :: oncommand

Comment 1

10 years ago
The failure is that there is a server lock.  This means that one of the following has happened:

* There is another firefox instance which is currently syncing.
* There is a 'stale lock' on the server, because:
** Firefox crashed while syncing.
** Firefox was quit while syncing.
Status: NEW → RESOLVED
Last Resolved: 10 years ago
Resolution: --- → WORKSFORME
(Reporter)

Comment 2

10 years ago
All of these situations would warrant further investigation:

* Issue: There is another firefox instance which is currently syncing.
* Response: Can we have the client sync wait some period of time? Even if Weave can not handle multiple syncs concurrently (thou that should be considered through delta syncs that get reconciled), the behavior should be improved.

* There is a 'stale lock' on the server, because:
** Issue: Firefox crashed while syncing.
** Firefox was quit while syncing.
** Response for both: How does a Firefox crash/quit get cleaned up?

The user experience on these items should be improved. If this is a temporary failure, that is alright. However, I just tried to sync my browser and again received an error. I have no other Firefox instances running on other computers for this account, so I am not sure how to address the problem.

Comment 3

10 years ago
You are correct, we should improve our behavior for the first-sync case.

For ongoing sync (after initial setup), this error is transient and we shouldn't do much imo.  We will retry in 30 seconds.

For initial sync, we should a) retry, b) ask the user to make sure they have no other Firefox instances syncing at the moment, and c) (maybe) forcibly clear the lock on the assumption that there is a stale lock on the server.

Note, however, that server locks expire in 10 minutes (so stale locks in case of a crash automatically expire)

reopening bug.  targeting for 0.3.
Status: RESOLVED → REOPENED
OS: Mac OS X → All
Hardware: PC → All
Resolution: WORKSFORME → ---
Summary: Initial Sync failed → Weave should deal with a locked server during an initial sync
Target Milestone: -- → 0.3

Comment 4

9 years ago
These bugs need to be triaged, removing 0.3 milestone setting.
Target Milestone: 0.3 → Future
Locks no longer relevant with new server in 0.3, closing
Status: REOPENED → RESOLVED
Last Resolved: 10 years ago9 years ago
Resolution: --- → INVALID

Updated

9 years ago
Component: Weave → General
Product: Mozilla Labs → Weave
QA Contact: weave → general
You need to log in before you can comment on or make changes to this bug.