Closed
Bug 724288
Opened 13 years ago
Closed 13 years ago
Long hang: main-thread nsNavBookmarks::RunInBatchMode apparently waiting on frecency update
Categories
(Toolkit :: Places, defect)
Tracking
()
RESOLVED
DUPLICATE
of bug 722188
People
(Reporter: justin.lebar+bug, Unassigned)
Details
(Whiteboard: [snappy:p1])
Attachments
(1 file)
(deleted),
text/plain
|
Details |
Firefox has been intermittently hanging for long periods of time (1 min+) lately.
I caught today's hang in GDB. The browser was idle -- I was listening to music using the Flash player at http://swingadelic.com/video.html, but I was not interacting with my computer at all.
All-threads stack trace is attached. It appears that thread 1 (the main thread) is blocked waiting for thread 12 to complete a SQLite operation:
Thread 12
(etc.)
sqlite3_step
mozilla::storage::Connection::stepStatement(sqlite3_stmt*)
mozilla::storage::AsyncExecuteStatements::executeStatement
Thread 1
(etc.)
SQLiteMutexAutoLock
mozilla::storage::Connection::BeginTransactionAs
mozStorageTransaction::mozStorageTransaction
nsNavHistory::BeginUpdateBatch
UpdateBatchScoper
nsNavHistory::RunInBatchMode
nsNavBookmarks::RunInBatchMode
Reporter | ||
Comment 1•13 years ago
|
||
Joe, I don't know if this is the same hang you've been seeing.
Whiteboard: [snappy]
Reporter | ||
Comment 2•13 years ago
|
||
The statement which is executing in comment 12 is:
(gdb) info frame
Stack level 12, frame at 0x7f257f6fab70:
rip = 0x7f259cd95f1e in sqlite3VdbeExec (/builds/slave/m-cen-lnx64-ntly/build/db/sqlite3/src/sqlite3.c:1399); saved rip 0x7f259cd8578d
(gdb) p ((Vdbe*)(p))->zSql
$23 = 0x7f25641995b0 "UPDATE moz_places SET frecency = ROUND(frecency * .975) WHERE frecency > 0"
Reporter | ||
Updated•13 years ago
|
Summary: Long hang: main-thread nsNavBookmarks::RunInBatchMode apparently waiting on async SQL operation → Long hang: main-thread nsNavBookmarks::RunInBatchMode apparently waiting on frecency update
Reporter | ||
Comment 3•13 years ago
|
||
(In reply to Justin Lebar [:jlebar] from comment #2)
> The statement which is executing in comment 12 is:
er...*thread* 12, not comment 12.
Reporter | ||
Comment 4•13 years ago
|
||
Taras, do you know if the SQLite hang detector would catch this? The long-running SQLite transaction is off the main thread, but it's blocking some main-thread action. I can't tell if the main-thread code has progressed far enough to trigger the long-sqlite hang detector or not.
Reporter | ||
Comment 5•13 years ago
|
||
I'm having some trouble unrolling this js stack. (gdb) call DumpJSSttack() outputs nothing.
Reporter | ||
Comment 6•13 years ago
|
||
I thought the write-ahead log was supposed to make large updates like this not block the whole database?
Isn't there already a bug on this?
Reporter | ||
Comment 8•13 years ago
|
||
Maybe bug 722188?
That's the one I was thinking of, yes.
Reporter | ||
Updated•13 years ago
|
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → DUPLICATE
Reporter | ||
Comment 11•13 years ago
|
||
Un-duping per bug 723611 comment 9.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
Updated•13 years ago
|
Whiteboard: [snappy] → [snappy:p1]
Comment 12•13 years ago
|
||
I'm not sure if it's worth to keep this open, all the bugs are set as dependencies of bug 722188 that tracks practically all the stacks afaict. I'd probably re-dupe to it.
Comment 13•13 years ago
|
||
(In reply to Marco Bonardo [:mak] from comment #12)
> I'm not sure if it's worth to keep this open, all the bugs are set as
> dependencies of bug 722188 that tracks practically all the stacks afaict.
> I'd probably re-dupe to it.
Is that still the plan?
Comment 14•13 years ago
|
||
if you're fine with that, yes. I didn't see recent reports.
Comment 15•13 years ago
|
||
reduping, in future we should file a new bug if we hit a similar issue, since could have completely different origin.
Status: REOPENED → RESOLVED
Closed: 13 years ago → 13 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•