Closed Bug 1300221 Opened 8 years ago Closed 8 years ago

Receiving 400 error from Sync server (Invalid Weave Basic Object) during payload upload

Categories

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

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: Grisha, Unassigned)

References

Details

Seeing this during a sync password stage on the current nightly; other stages are uploading records successfully. Probably related to the Atomic Uploads work (Bug 1253111). GlobalSession :: Running next stage syncPasswords [...] <HTTPFailureException 400 :: (Invalid Weave Basic Object)> at org.mozilla.gecko.sync.repositories.uploaders.PayloadUploadDelegate.handleRequestFailure(PayloadUploadDelegate.java:170) at org.mozilla.gecko.sync.net.SyncStorageRequest$SyncStorageResourceDelegate.handleHttpResponse(SyncStorageRequest.java:134) at org.mozilla.gecko.sync.net.BaseResource.execute(BaseResource.java:342) at org.mozilla.gecko.sync.net.BaseResource.go(BaseResource.java:373) at org.mozilla.gecko.sync.net.BaseResource.post(BaseResource.java:404) at org.mozilla.gecko.sync.net.SyncStorageRequest.post(SyncStorageRequest.java:192) at org.mozilla.gecko.sync.repositories.uploaders.RecordUploadRunnable.run(RecordUploadRunnable.java:153) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818)
Given the logs above, I don't think there is enough information here for an actionable bug. Perhaps the payload was too large? Either way, Bug 1308337 should help determine if there's a chronic issue here.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → INCOMPLETE
Product: Android Background Services → Firefox for Android
Got a similar stacktrace from an IRC user in #mobile. They have 53 passwords that sync is trying to upload, and my guess is that at least one of them is tripping up the system. 12-29 15:58:02.962 W/FxAccounts( 7380): firefox :: SSResourceDelegate :: HTTP request failed. 12-29 15:58:02.967 W/FxAccounts( 7380): firefox :: SSResourceDelegate :: HTTP response body: Invalid Weave Basic Object 12-29 15:58:02.969 W/FxAccounts( 7380): firefox :: SynchronizerSession :: Second RecordsChannel onFlowStoreFailed. Logging remote store error. 12-29 15:58:02.969 W/FxAccounts( 7380): <HTTPFailureException 400 :: (Invalid Weave Basic Object)> 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.repositories.uploaders.PayloadUploadDelegate.handleRequestFailure(PayloadUploadDelegate.java:185) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.SyncStorageRequest$SyncStorageResourceDelegate.handleHttpResponse(SyncStorageRequest.java:134) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.BaseResource.execute(BaseResource.java:342) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.BaseResource.go(BaseResource.java:373) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.BaseResource.post(BaseResource.java:404) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.SyncStorageRequest.post(SyncStorageRequest.java:185) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.repositories.uploaders.RecordUploadRunnable.run(RecordUploadRunnable.java:154) 12-29 15:58:02.969 W/FxAccounts( 7380): at org.mozilla.gecko.sync.repositories.uploaders.PayloadDispatcher$1.run(PayloadDispatcher.java:59) 12-29 15:58:02.969 W/FxAccounts( 7380): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) 12-29 15:58:02.969 W/FxAccounts( 7380): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) 12-29 15:58:02.969 W/FxAccounts( 7380): at java.lang.Thread.run(Thread.java:764) 12-29 15:58:02.993 I/chatty ( 7380): uid=10084(org.mozilla.firefox) identical 51 lines 12-29 15:58:02.993 W/FxAccounts( 7380): firefox :: SynchronizerSession :: Second RecordsChannel onFlowStoreFailed. Logging remote store error. 12-29 15:58:02.993 W/FxAccounts( 7380): <HTTPFailureException 400 :: (Invalid Weave Basic Object)> 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.repositories.uploaders.PayloadUploadDelegate.handleRequestFailure(PayloadUploadDelegate.java:185) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.SyncStorageRequest$SyncStorageResourceDelegate.handleHttpResponse(SyncStorageRequest.java:134) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.BaseResource.execute(BaseResource.java:342) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.BaseResource.go(BaseResource.java:373) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.BaseResource.post(BaseResource.java:404) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.net.SyncStorageRequest.post(SyncStorageRequest.java:185) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.repositories.uploaders.RecordUploadRunnable.run(RecordUploadRunnable.java:154) 12-29 15:58:02.993 W/FxAccounts( 7380): at org.mozilla.gecko.sync.repositories.uploaders.PayloadDispatcher$1.run(PayloadDispatcher.java:59) 12-29 15:58:02.993 W/FxAccounts( 7380): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) 12-29 15:58:02.993 W/FxAccounts( 7380): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) 12-29 15:58:02.993 W/FxAccounts( 7380): at java.lang.Thread.run(Thread.java:764) 12-29 15:58:02.994 I/FxAccounts( 7380): firefox :: RecordsChannel :: onStoreFailed. Calling for immediate stop.
It's hard to say more without knowing the outgoing payload, is there any way to get that from the logs? My first guess would be that one of the items exceeds the 2MB payload size limit on a BSO, although that seems pretty unlikely for passwords.
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.