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

Issue 177773002: Support Promises instrumentation on backend. (Closed)

Created:
6 years, 9 months ago by Alexandra Mikhaylova
Modified:
6 years, 9 months ago
Reviewers:
aandrey, yurys, yhirano
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Visibility:
Public.

Description

Support Promises instrumentation on backend. BUG=348919 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=169247

Patch Set 1 #

Patch Set 2 : Implement updatePromiseParent + update instrumentation #

Patch Set 3 : Fix in printing NULL parent promises #

Total comments: 26

Patch Set 4 : Address review comments + track Promise result #

Total comments: 64

Patch Set 5 : Address review comments + track call stacks and time #

Patch Set 6 : Fix style #

Total comments: 37

Patch Set 7 : Small refactoring to avoid unused variables #

Patch Set 8 : Address review comments #

Patch Set 9 : Revert blank line #

Total comments: 12

Patch Set 10 : Address comments #

Total comments: 9

Patch Set 11 : PromiseDataMap refactoring #

Total comments: 11

Patch Set 12 : Address review comments #

Patch Set 13 : Rename PromiseOfficer -> PromiseTracker #

Total comments: 3

Patch Set 14 : V8PromiseCustom::setState -> (anonymous namespace)::setStateForPromise + REBASE #

Unified diffs Side-by-side diffs Delta from patch set Stats (+258 lines, -68 lines) Patch
M Source/bindings/bindings.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
A + Source/bindings/v8/ScriptObjectTraits.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +16 lines, -17 lines 0 comments Download
M Source/bindings/v8/custom/V8PromiseCustom.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -4 lines 0 comments Download
M Source/bindings/v8/custom/V8PromiseCustom.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 8 chunks +32 lines, -19 lines 0 comments Download
M Source/core/core.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +2 lines, -0 lines 0 comments Download
M Source/core/core.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +3 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorDebuggerAgent.h View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +6 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorDebuggerAgent.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +25 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorInstrumentation.idl View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +28 lines, -9 lines 0 comments Download
A Source/core/inspector/InspectorPromiseInstrumentation.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
A + Source/core/inspector/PromiseTracker.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +42 lines, -19 lines 0 comments Download
A Source/core/inspector/PromiseTracker.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +102 lines, -0 lines 0 comments Download

Messages

Total messages: 37 (0 generated)
Alexandra Mikhaylova
Work is in progress, and this is not for review yet.
6 years, 9 months ago (2014-02-24 12:48:02 UTC) #1
Alexandra Mikhaylova
More instrumentation + implement updating promise parent
6 years, 9 months ago (2014-02-25 11:39:02 UTC) #2
aandrey
https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode393 Source/bindings/v8/custom/V8PromiseCustom.cpp:393: InspectorInstrumentation::updatePromiseState(currentExecutionContext(isolate), promise, V8PromiseCustom::Fulfilled); move inside V8PromiseCustom::setState https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode402 Source/bindings/v8/custom/V8PromiseCustom.cpp:402: InspectorInstrumentation::updatePromiseState(currentExecutionContext(isolate), ...
6 years, 9 months ago (2014-02-25 12:36:07 UTC) #3
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode393 Source/bindings/v8/custom/V8PromiseCustom.cpp:393: InspectorInstrumentation::updatePromiseState(currentExecutionContext(isolate), promise, V8PromiseCustom::Fulfilled); On 2014/02/25 12:36:07, aandrey wrote: > ...
6 years, 9 months ago (2014-02-26 14:08:41 UTC) #4
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/80001/Source/core/inspector/PromiseOfficer.h File Source/core/inspector/PromiseOfficer.h (right): https://codereview.chromium.org/177773002/diff/80001/Source/core/inspector/PromiseOfficer.h#newcode99 Source/core/inspector/PromiseOfficer.h:99: m_promiseDataMap.clear(); Maybe disable() and clear() should be two different ...
6 years, 9 months ago (2014-02-26 14:11:51 UTC) #5
aandrey
https://codereview.chromium.org/177773002/diff/80001/LayoutTests/inspector/resources/example-fileset-for-test.js File LayoutTests/inspector/resources/example-fileset-for-test.js (right): https://codereview.chromium.org/177773002/diff/80001/LayoutTests/inspector/resources/example-fileset-for-test.js#newcode105 LayoutTests/inspector/resources/example-fileset-for-test.js:105: "./Source/core/inspector/InspectorPromiseInstrumentation.z", remove https://codereview.chromium.org/177773002/diff/80001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/80001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode47 Source/bindings/v8/custom/V8PromiseCustom.cpp:47: #include ...
6 years, 9 months ago (2014-02-26 16:11:30 UTC) #6
aandrey
https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode393 Source/bindings/v8/custom/V8PromiseCustom.cpp:393: InspectorInstrumentation::updatePromiseState(currentExecutionContext(isolate), promise, V8PromiseCustom::Fulfilled); On 2014/02/26 14:08:41, Alexandra Mikhaylova wrote: ...
6 years, 9 months ago (2014-02-26 16:17:42 UTC) #7
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/60001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode393 Source/bindings/v8/custom/V8PromiseCustom.cpp:393: InspectorInstrumentation::updatePromiseState(currentExecutionContext(isolate), promise, V8PromiseCustom::Fulfilled); On 2014/02/26 16:17:42, aandrey wrote: > ...
6 years, 9 months ago (2014-02-28 13:52:04 UTC) #8
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/120001/Source/core/inspector/PromiseOfficer.cpp File Source/core/inspector/PromiseOfficer.cpp (right): https://codereview.chromium.org/177773002/diff/120001/Source/core/inspector/PromiseOfficer.cpp#newcode59 Source/core/inspector/PromiseOfficer.cpp:59: double timestamp = currentTimeMS(); Maybe we should move this ...
6 years, 9 months ago (2014-02-28 14:07:34 UTC) #9
aandrey
https://codereview.chromium.org/177773002/diff/120001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/120001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode388 Source/bindings/v8/custom/V8PromiseCustom.cpp:388: v8::Local<v8::Object> internal = V8PromiseCustom::getInternal(promise); move inside ASSERT: ASSERT(V8PromiseCustom::getState(V8PromiseCustom::getInternal(promise)) != ...
6 years, 9 months ago (2014-02-28 16:08:12 UTC) #10
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/120001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/120001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode388 Source/bindings/v8/custom/V8PromiseCustom.cpp:388: v8::Local<v8::Object> internal = V8PromiseCustom::getInternal(promise); On 2014/02/28 16:08:13, aandrey wrote: ...
6 years, 9 months ago (2014-03-03 14:04:24 UTC) #11
aandrey
lgtm, also need an owner's stamp https://codereview.chromium.org/177773002/diff/170001/Source/core/inspector/PromiseOfficer.cpp File Source/core/inspector/PromiseOfficer.cpp (right): https://codereview.chromium.org/177773002/diff/170001/Source/core/inspector/PromiseOfficer.cpp#newcode77 Source/core/inspector/PromiseOfficer.cpp:77: double timestamp = ...
6 years, 9 months ago (2014-03-04 09:26:28 UTC) #12
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/170001/Source/core/inspector/PromiseOfficer.cpp File Source/core/inspector/PromiseOfficer.cpp (right): https://codereview.chromium.org/177773002/diff/170001/Source/core/inspector/PromiseOfficer.cpp#newcode77 Source/core/inspector/PromiseOfficer.cpp:77: double timestamp = currentTimeMS(); On 2014/03/04 09:26:28, aandrey wrote: ...
6 years, 9 months ago (2014-03-05 13:10:39 UTC) #13
yurys
https://codereview.chromium.org/177773002/diff/190001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/190001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode388 Source/bindings/v8/custom/V8PromiseCustom.cpp:388: ASSERT(V8PromiseCustom::getState(V8PromiseCustom::getInternal(promise)) != V8PromiseCustom::Fulfilled && V8PromiseCustom::getState(V8PromiseCustom::getInternal(promise)) != V8PromiseCustom::Rejected); Internal is ...
6 years, 9 months ago (2014-03-05 15:23:35 UTC) #14
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/190001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/190001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode388 Source/bindings/v8/custom/V8PromiseCustom.cpp:388: ASSERT(V8PromiseCustom::getState(V8PromiseCustom::getInternal(promise)) != V8PromiseCustom::Fulfilled && V8PromiseCustom::getState(V8PromiseCustom::getInternal(promise)) != V8PromiseCustom::Rejected); On 2014/03/05 ...
6 years, 9 months ago (2014-03-07 11:11:44 UTC) #15
aandrey
looks good https://codereview.chromium.org/177773002/diff/210001/Source/core/inspector/PromiseOfficer.h File Source/core/inspector/PromiseOfficer.h (right): https://codereview.chromium.org/177773002/diff/210001/Source/core/inspector/PromiseOfficer.h#newcode81 Source/core/inspector/PromiseOfficer.h:81: struct ScriptObjectHash { plz move these to ...
6 years, 9 months ago (2014-03-11 10:43:37 UTC) #16
aandrey
yhirano, please take a look at V8PromiseCustom
6 years, 9 months ago (2014-03-12 09:35:07 UTC) #17
yurys
https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode478 Source/bindings/v8/custom/V8PromiseCustom.cpp:478: if (InspectorInstrumentation::isPromiseOfficerEnabled(context)) { isPromiseInstrumentationEnabled https://codereview.chromium.org/177773002/diff/210001/Source/core/inspector/PromiseOfficer.cpp File Source/core/inspector/PromiseOfficer.cpp (right): https://codereview.chromium.org/177773002/diff/210001/Source/core/inspector/PromiseOfficer.cpp#newcode53 ...
6 years, 9 months ago (2014-03-12 10:56:53 UTC) #18
aandrey
https://codereview.chromium.org/177773002/diff/210001/Source/core/inspector/PromiseOfficer.cpp File Source/core/inspector/PromiseOfficer.cpp (right): https://codereview.chromium.org/177773002/diff/210001/Source/core/inspector/PromiseOfficer.cpp#newcode53 Source/core/inspector/PromiseOfficer.cpp:53: m_callStackOnSettle = createScriptCallStack(ScriptCallStack::maxCallStackSizeToCapture, true); On 2014/03/12 10:56:53, yurys wrote: ...
6 years, 9 months ago (2014-03-12 11:23:13 UTC) #19
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode478 Source/bindings/v8/custom/V8PromiseCustom.cpp:478: if (InspectorInstrumentation::isPromiseOfficerEnabled(context)) { On 2014/03/12 10:56:53, yurys wrote: > ...
6 years, 9 months ago (2014-03-12 12:11:50 UTC) #20
yurys
lgtm
6 years, 9 months ago (2014-03-12 12:15:12 UTC) #21
aandrey
https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode478 Source/bindings/v8/custom/V8PromiseCustom.cpp:478: if (InspectorInstrumentation::isPromiseOfficerEnabled(context)) { On 2014/03/12 10:56:53, yurys wrote: > ...
6 years, 9 months ago (2014-03-12 12:16:32 UTC) #22
aandrey
On 2014/03/12 12:16:32, aandrey wrote: > https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp > File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): > > https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode478 > ...
6 years, 9 months ago (2014-03-12 12:16:47 UTC) #23
Alexandra Mikhaylova
On 2014/03/12 12:16:47, aandrey wrote: > On 2014/03/12 12:16:32, aandrey wrote: > > > https://codereview.chromium.org/177773002/diff/210001/Source/bindings/v8/custom/V8PromiseCustom.cpp ...
6 years, 9 months ago (2014-03-12 12:18:12 UTC) #24
aandrey
On 2014/03/12 12:18:12, Alexandra Mikhaylova wrote: > On 2014/03/12 12:16:47, aandrey wrote: > > On ...
6 years, 9 months ago (2014-03-12 12:21:40 UTC) #25
Alexandra Mikhaylova
On 2014/03/12 12:21:40, aandrey wrote: > On 2014/03/12 12:18:12, Alexandra Mikhaylova wrote: > > On ...
6 years, 9 months ago (2014-03-12 14:34:00 UTC) #26
aandrey
lgtm
6 years, 9 months ago (2014-03-12 14:38:59 UTC) #27
yhirano
https://codereview.chromium.org/177773002/diff/250001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/250001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode671 Source/bindings/v8/custom/V8PromiseCustom.cpp:671: void V8PromiseCustom::setState(v8::Handle<v8::Object> promise, PromiseState state, v8::Handle<v8::Value> value, v8::Isolate* isolate) ...
6 years, 9 months ago (2014-03-13 01:42:59 UTC) #28
Alexandra Mikhaylova
https://codereview.chromium.org/177773002/diff/250001/Source/bindings/v8/custom/V8PromiseCustom.cpp File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): https://codereview.chromium.org/177773002/diff/250001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode671 Source/bindings/v8/custom/V8PromiseCustom.cpp:671: void V8PromiseCustom::setState(v8::Handle<v8::Object> promise, PromiseState state, v8::Handle<v8::Value> value, v8::Isolate* isolate) ...
6 years, 9 months ago (2014-03-13 13:22:50 UTC) #29
Alexandra Mikhaylova
On 2014/03/13 01:42:59, yhirano wrote: > https://codereview.chromium.org/177773002/diff/250001/Source/bindings/v8/custom/V8PromiseCustom.cpp > File Source/bindings/v8/custom/V8PromiseCustom.cpp (right): > > https://codereview.chromium.org/177773002/diff/250001/Source/bindings/v8/custom/V8PromiseCustom.cpp#newcode671 > ...
6 years, 9 months ago (2014-03-14 11:47:31 UTC) #30
yhirano
lgtm
6 years, 9 months ago (2014-03-14 12:09:39 UTC) #31
yhirano
FYI: we are switching the Promise implementation from this to the v8 Promises.
6 years, 9 months ago (2014-03-14 12:10:41 UTC) #32
aandrey
On 2014/03/14 12:10:41, yhirano wrote: > FYI: we are switching the Promise implementation from this ...
6 years, 9 months ago (2014-03-14 12:17:04 UTC) #33
yhirano
On 2014/03/14 12:17:04, aandrey wrote: > On 2014/03/14 12:10:41, yhirano wrote: > > FYI: we ...
6 years, 9 months ago (2014-03-14 12:20:45 UTC) #34
Alexandra Mikhaylova
The CQ bit was checked by amikhaylova@google.com
6 years, 9 months ago (2014-03-14 12:27:25 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/amikhaylova@google.com/177773002/270001
6 years, 9 months ago (2014-03-14 12:27:29 UTC) #36
commit-bot: I haz the power
6 years, 9 months ago (2014-03-14 13:08:53 UTC) #37
Message was sent while issue was closed.
Change committed as 169247

Powered by Google App Engine
This is Rietveld 408576698