New issue
Advanced search Search tips

Issue 767649 link

Starred by 1 user

Issue metadata

Status: Archived
Owner: ----
Closed: Jan 10
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Ensure leveldb clients have appropriate thread traits

Project Member Reported by jsb...@chromium.org, Sep 21 2017

Issue description

Inspired by  issue 767472  - all leveldb clients need various thread traits

* MayBlock - for I/O
* WithBaseSyncPrimitives - for base::ConditionVariable

The latter appears subtle - it isn't always used, so a client may not be aware this trait is required until suddenly base::ThreadRestrictions::AssertWaitAllowed() runs and *boom*!

I tried dropping base::ThreadRestrictions::AssertIOAllowed() and base::ThreadRestrictions::AssertWaitAllowed() into the ChromiumEnv constructor and BGThread() method. On startup, chrome immediately hits the check in data_reduction_proxy::DataStoreImpl::OpenDB() on the I/O thread. Is this a problem waiting to happen?

Or am I misunderstanding things?
 
Status: Archived (was: Untriaged)
Archiving P3s older than 1 year with no owner or component.

Sign in to add a comment