Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(390)

Issue 2631403002: Fix SQLStatementBackend::m_resultSet to use CrossThreadPersistent

Created:
3 years, 11 months ago by keishi
Modified:
3 years, 11 months ago
Reviewers:
oilpan-reviews, haraken, sof
CC:
chromium-reviews, blink-reviews, haraken
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix SQLStatementBackend::m_resultSet to use CrossThreadPersistent The SQLResultSet in SQLStatementBackend::m_resultSet is created on the main thread (in SQLStatementBackend::SQLStatementBackend) but was accessed from the db thread in SQLStatementBackend::execute. BUG=681488

Patch Set 1 #

Patch Set 2 : fix #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -4 lines) Patch
M third_party/WebKit/Source/modules/webdatabase/SQLResultSet.h View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/modules/webdatabase/SQLStatementBackend.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/modules/webdatabase/SQLStatementBackend.cpp View 2 chunks +1 line, -2 lines 1 comment Download

Messages

Total messages: 6 (2 generated)
keishi
PTAL m_resultSet is created on the main thread and SQLStatementBackend::execute runs on the db thread ...
3 years, 11 months ago (2017-01-17 12:41:40 UTC) #2
sof
On 2017/01/17 12:41:40, keishi wrote: > PTAL > > m_resultSet is created on the main ...
3 years, 11 months ago (2017-01-17 14:02:22 UTC) #3
sof
https://codereview.chromium.org/2631403002/diff/20001/third_party/WebKit/Source/modules/webdatabase/SQLStatementBackend.cpp File third_party/WebKit/Source/modules/webdatabase/SQLStatementBackend.cpp (right): https://codereview.chromium.org/2631403002/diff/20001/third_party/WebKit/Source/modules/webdatabase/SQLStatementBackend.cpp#newcode195 third_party/WebKit/Source/modules/webdatabase/SQLStatementBackend.cpp:195: CrossThreadPersistent<SQLResultSetRowList> rows = m_resultSet->rows(); This too I'm also not ...
3 years, 11 months ago (2017-01-17 14:13:03 UTC) #5
sof
3 years, 11 months ago (2017-01-18 11:38:16 UTC) #6
Something noticed while going over https://crrev.com/1909813002 details -- is
the clearing of m_wrapper in SQLTransactionBackend::doCleanup() a "cross-heap"
write that's safe, strictly speaking?

( Would it be worth considering having a barriered cross-heap Member<>::assign()
operation? )

Powered by Google App Engine
This is Rietveld 408576698