Closed Bug 1262518 Opened 8 years ago Closed 8 years ago

Corrupt places DB causing failure to open bookmarks sidebar etc

Categories

(Toolkit :: Places, defect)

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: markh, Unassigned)

References

Details

(Whiteboard: [sync-data-integrity])

Attachments

(1 file)

Attached file places.sqlite.zip
It's probable that Sync logically corrupted this places DB, with the end result being that the bookmarks sidebar fails to show any content, with the console reporting:

> 09:15:35.852 NS_ERROR_UNEXPECTED: Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.createFolder]1PlacesUIUtils.jsm:1109

similarly, "Show all bookmarks" is completely blank - but the sidebar popup *does* show content.

Once we got into this state, Sync is now complaining:

> 1459907028655	Sync.Store.Bookmarks	DEBUG	Applying record -CwMW6NSNyMC
> 1459907028655	Sync.Store.Bookmarks	DEBUG	Local parent is MvMhoxdfmuXa
> 1459907028655	Sync.Store.Bookmarks	DEBUG	Record -CwMW6NSNyMC is not an orphan.
> 1459907028656	Sync.Store.Bookmarks	DEBUG	Failed to reparent item: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.moveItem]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: _reparentItem :: line 692"  data: no] Stack trace: _reparentItem()@resource://services-sync/engines/bookmarks.js:692 < BStore_update()@resource://services-sync/engines/bookmarks.js:932 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028657	Sync.Store.Bookmarks	WARN	Failed to apply incoming record -CwMW6NSNyMC: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.setItemTitle]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: BStore_update :: line 938"  data: no] Stack trace: BStore_update()@resource://services-sync/engines/bookmarks.js:938 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028660	Sync.Store.Bookmarks	DEBUG	Applying record MvMhoxdfmuXa
> 1459907028660	Sync.Store.Bookmarks	DEBUG	Local parent is places
> 1459907028660	Sync.Store.Bookmarks	DEBUG	Record MvMhoxdfmuXa is not an orphan.
> 1459907028661	Sync.Store.Bookmarks	WARN	Failed to apply incoming record MvMhoxdfmuXa: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.setItemTitle]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: BStore_update :: line 938"  data: no] Stack trace: BStore_update()@resource://services-sync/engines/bookmarks.js:938 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028665	Sync.Store.Bookmarks	DEBUG	Applying record 1IAhJgaWxaN-
> 1459907028665	Sync.Store.Bookmarks	DEBUG	Local parent is MvMhoxdfmuXa
> 1459907028666	Sync.Store.Bookmarks	DEBUG	Record 1IAhJgaWxaN- is not an orphan.
> 1459907028667	Sync.Store.Bookmarks	DEBUG	Failed to reparent item: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.moveItem]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: _reparentItem :: line 692"  data: no] Stack trace: _reparentItem()@resource://services-sync/engines/bookmarks.js:692 < BStore_update()@resource://services-sync/engines/bookmarks.js:932 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028668	Sync.Store.Bookmarks	WARN	Failed to apply incoming record 1IAhJgaWxaN-: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.setItemTitle]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: BStore_update :: line 938"  data: no] Stack trace: BStore_update()@resource://services-sync/engines/bookmarks.js:938 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028671	Sync.Store.Bookmarks	DEBUG	Applying record oVAS5GOu9hUA
> 1459907028671	Sync.Store.Bookmarks	DEBUG	Local parent is MvMhoxdfmuXa
> 1459907028672	Sync.Store.Bookmarks	DEBUG	Record oVAS5GOu9hUA is not an orphan.
> 1459907028673	Sync.Store.Bookmarks	DEBUG	Failed to reparent item: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.moveItem]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: _reparentItem :: line 692"  data: no] Stack trace: _reparentItem()@resource://services-sync/engines/bookmarks.js:692 < BStore_update()@resource://services-sync/engines/bookmarks.js:932 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028674	Sync.Store.Bookmarks	WARN	Failed to apply incoming record oVAS5GOu9hUA: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.setItemTitle]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: BStore_update :: line 938"  data: no] Stack trace: BStore_update()@resource://services-sync/engines/bookmarks.js:938 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028679	Sync.Store.Bookmarks	DEBUG	Applying record wNADgpeSUBzU
> 1459907028679	Sync.Store.Bookmarks	DEBUG	Local parent is MvMhoxdfmuXa
> 1459907028679	Sync.Store.Bookmarks	DEBUG	Record wNADgpeSUBzU is not an orphan.
> 1459907028680	Sync.Store.Bookmarks	DEBUG	Failed to reparent item: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.moveItem]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: _reparentItem :: line 692"  data: no] Stack trace: _reparentItem()@resource://services-sync/engines/bookmarks.js:692 < BStore_update()@resource://services-sync/engines/bookmarks.js:932 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232
> 1459907028681	Sync.Store.Bookmarks	WARN	Failed to apply incoming record wNADgpeSUBzU: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsINavBookmarksService.setItemTitle]"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://services-sync/engines/bookmarks.js :: BStore_update :: line 938"  data: no] Stack trace: BStore_update()@resource://services-sync/engines/bookmarks.js:938 < Store.prototype.applyIncoming()@resource://services-sync/engines.js:341 < BStore_applyIncoming()@resource://services-sync/engines/bookmarks.js:638 < Store.prototype.applyIncomingBatch()@resource://services-sync/engines.js:303 < doApplyBatch()@resource://services-sync/engines.js:996 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1122 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:623 < Channel_onDataAvail()@resource://services-sync/resource.js:554 < waitForSyncCallback()@resource://services-common/async.js:98 < Res__request()@resource://services-sync/resource.js:398 < Res_get()@resource://services-sync/resource.js:425 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1185 < BookmarksEngine.prototype._processIncoming()@resource://services-sync/engines/bookmarks.js:463 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1549 < wrappedSync()@resource://services-sync/engines/bookmarks.js:229 < _sync()@resource://services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:146 < Engine.prototype.sync()@resource://services-sync/engines.js:670 < _syncEngine()@resource://services-sync/stages/enginesync.js:213 < sync()@resource://services-sync/stages/enginesync.js:163 < onNotify()@resource://services-sync/service.js:1262 < WrappedNotify()@resource://services-sync/util.js:146 < WrappedLock()@resource://services-sync/util.js:101 < _lockedSync()@resource://services-sync/service.js:1252 < sync/<()@resource://services-sync/service.js:1244 < WrappedCatch()@resource://services-sync/util.js:75 < sync()@resource://services-sync/service.js:1232


Whoever is to blame, the end result is a profile that is effectively broken for the user with no obvious way to recover. So this bug is really a placeholder to (a) dig into why it happened, (b) see if there is anything places could have done to prevent it or anything to repair it after the fact and (c) see how Sync could have been prevented from doing it in the first place.

Attached is places.sqlite.
Flags: needinfo?(mak77)
Depends on: 1269902
Blocks: 1269902
No longer depends on: 1269902
No longer blocks: 1257961
Blocks: 1269904
No longer blocks: 1269902
Whiteboard: [sync-data-integrity]
Sorry if it took long time, I just tried in Nightly and I cannot reproduce a problem with this database, by looking into it, it was completely missing the left pane folder, but launching the browser generated a new one, so maybe the problem was related to bug 1274496?
Flags: needinfo?(mak77) → needinfo?(markh)
hrmph - yeah, I can't reproduce this now either.
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: needinfo?(markh)
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: