New issue
Advanced search Search tips

Issue 919069 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 3
Type: Bug



Sign in to add a comment

RewriteDB might crash with a DCHECK

Project Member Reported by dullweber@chromium.org, Jan 4

Issue description

I had this crash when I tried to reproduce https://crbug.com/916797 by creating 5MB of SessionStorage on example.com and deleting it with ClearBrowsingData:

[160694:160717:0104/131130.525110:FATAL:thread_restrictions.cc(116)] Check failed: !g_base_sync_primitives_disallowed.Get().Get(). Waiting on a //base sync primitive is not allowed on this thread to prevent jank and deadlock. If waiting on a //base sync primitive is unavoidable, do it within the scope of a ScopedAllowBaseSyncPrimitives. If in a test, use ScopedAllowBaseSyncPrimitivesForTesting.
#0 0x7fb562eb605f base::debug::StackTrace::StackTrace()
#1 0x7fb562dd9b7a logging::LogMessage::~LogMessage()
#2 0x7fb562e80716 base::internal::AssertBaseSyncPrimitivesAllowed()
#3 0x7fb562e79f4a base::internal::ScopedBlockingCallWithBaseSyncPrimitives::ScopedBlockingCallWithBaseSyncPrimitives()
#4 0x7fb562ec6a27 base::ConditionVariable::Wait()
#5 0x7fb55e7d68f8 leveldb::DBImpl::~DBImpl()
#6 0x7fb55e7d6c2e leveldb::DBImpl::~DBImpl()
#7 0x7fb55e7d2eea leveldb_env::DBTracker::TrackedDBImpl::~TrackedDBImpl()
#8 0x7fb55e7cff20 leveldb_env::RewriteDB()
#9 0x7fb5610b15c6 leveldb::LevelDBDatabaseImpl::RewriteDB()
#10 0x7fb55fd2ec39 leveldb::mojom::LevelDBDatabaseStubDispatch::AcceptWithResponder()
 
Cc: dmu...@chromium.org
Summary: RewriteDB might crash with a DCHECK (was: RewriteDB might crash )
oh interesting - I wonder why sync primatives aren't allowed for that service? They should be, they need to be.
That's confusing me as well. db_impl.cc is using a mutex everywhere, so the leveldb service should have sync primitives allowed. Otherwise it would crash much more often. I can't reproduce the issue reliably. I just tried again and couldn't trigger any crash.

Sign in to add a comment