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

Issue 210833005: Oilpan: Prepare to move SQLError to oilpan heap. (Closed)

Created:
6 years, 9 months ago by tkent
Modified:
6 years, 9 months ago
CC:
blink-reviews
Visibility:
Public.

Description

Oilpan: Prepare to move SQLError to oilpan heap. Without this CL, a SQLError object can be constructed in a database thread, moved to main/worker thread, and referred by JavaScript object in the main/worker thread. We can't move object ownership over threads in Oilpan. So, we should not construct SQLError objects in a database thread. Unlike the SQLResultSet case [1], SQLError is created by multiple classes and it's hard to make sure they create SQLError in a context thread. So, this CL introduce SQLErrorData, which is an immutable data container. We can construct a SQLErrorData object in a database thread, and move it to a context thread, then construct a SQLError with the SQLErrorData object. Note: * Change the return type of AbstractSQLStatementBackend::sqlError from PassRefPtr<SQLError> to SQLErrorData* because the function doesn't release the ownership of the SQLErrorData object. [1] https://src.chromium.org/viewvc/blink?revision=169929&view=revision BUG=347902 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=169989

Patch Set 1 #

Total comments: 6

Patch Set 2 : apply comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+94 lines, -61 lines) Patch
M Source/modules/webdatabase/AbstractSQLStatementBackend.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/modules/webdatabase/AbstractSQLTransactionBackend.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/modules/webdatabase/ChangeVersionWrapper.h View 3 chunks +4 lines, -3 lines 0 comments Download
M Source/modules/webdatabase/ChangeVersionWrapper.cpp View 2 chunks +5 lines, -5 lines 0 comments Download
M Source/modules/webdatabase/Database.cpp View 2 chunks +3 lines, -2 lines 0 comments Download
M Source/modules/webdatabase/SQLError.h View 1 2 chunks +29 lines, -6 lines 0 comments Download
M Source/modules/webdatabase/SQLError.idl View 1 chunk +1 line, -0 lines 0 comments Download
M Source/modules/webdatabase/SQLStatement.cpp View 1 chunk +5 lines, -3 lines 0 comments Download
M Source/modules/webdatabase/SQLStatementBackend.h View 3 chunks +3 lines, -3 lines 0 comments Download
M Source/modules/webdatabase/SQLStatementBackend.cpp View 7 chunks +11 lines, -11 lines 0 comments Download
M Source/modules/webdatabase/SQLTransaction.h View 2 chunks +2 lines, -2 lines 0 comments Download
M Source/modules/webdatabase/SQLTransaction.cpp View 1 3 chunks +8 lines, -6 lines 0 comments Download
M Source/modules/webdatabase/SQLTransactionBackend.h View 4 chunks +4 lines, -4 lines 0 comments Download
M Source/modules/webdatabase/SQLTransactionBackend.cpp View 7 chunks +17 lines, -14 lines 0 comments Download

Messages

Total messages: 11 (0 generated)
tkent
Please review.
6 years, 9 months ago (2014-03-25 09:57:02 UTC) #1
haraken
LGTM https://codereview.chromium.org/210833005/diff/1/Source/modules/webdatabase/SQLError.h File Source/modules/webdatabase/SQLError.h (right): https://codereview.chromium.org/210833005/diff/1/Source/modules/webdatabase/SQLError.h#newcode89 Source/modules/webdatabase/SQLError.h:89: SQLError(const SQLErrorData& data) : m_code(data.code()), m_message(data.message()) Add 'explicit'. ...
6 years, 9 months ago (2014-03-25 11:50:05 UTC) #2
wibling-chromium
lgtm
6 years, 9 months ago (2014-03-25 12:16:00 UTC) #3
tkent
https://codereview.chromium.org/210833005/diff/1/Source/modules/webdatabase/SQLError.h File Source/modules/webdatabase/SQLError.h (right): https://codereview.chromium.org/210833005/diff/1/Source/modules/webdatabase/SQLError.h#newcode89 Source/modules/webdatabase/SQLError.h:89: SQLError(const SQLErrorData& data) : m_code(data.code()), m_message(data.message()) On 2014/03/25 11:50:05, ...
6 years, 9 months ago (2014-03-25 22:07:13 UTC) #4
tkent
The CQ bit was checked by tkent@chromium.org
6 years, 9 months ago (2014-03-25 22:17:05 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/tkent@chromium.org/210833005/30001
6 years, 9 months ago (2014-03-25 22:17:09 UTC) #6
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-25 23:26:36 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.blink on linux_blink_dbg
6 years, 9 months ago (2014-03-25 23:26:36 UTC) #8
tkent
The CQ bit was checked by tkent@chromium.org
6 years, 9 months ago (2014-03-25 23:29:18 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/tkent@chromium.org/210833005/30001
6 years, 9 months ago (2014-03-25 23:29:20 UTC) #10
commit-bot: I haz the power
6 years, 9 months ago (2014-03-26 00:34:57 UTC) #11
Message was sent while issue was closed.
Change committed as 169989

Powered by Google App Engine
This is Rietveld 408576698