Expensive getColumnBreakpoints shows down scrolling in large files
Categories
(DevTools :: Debugger, defect, P2)
Tracking
(firefox69 fixed)
Tracking | Status | |
---|---|---|
firefox69 | --- | fixed |
People
(Reporter: Harald, Assigned: jlast)
References
(Blocks 2 open bugs)
Details
(Whiteboard: [debugger-mvp])
Attachments
(1 file, 1 obsolete file)
What were you doing?
- Open Debugger on https://discourse.mozilla.org/c/add-ons
- Open source
https://cdn-production.discourse.mozilla-community.org/assets/_application-*.js
- Scroll down
What happened?
Sluggish scrolling.
What should have happened?
Smooth scrolling.
Anything else we should know?
getColumnBreakpoints
blows the frame budget with 100ms+.
Thoughts
- Without any breakpoints active, this shouldn't be even called
- If this function can't be faster, maybe it can be debounced with
requestIdleCallback
getColumnBreakpoints
444/createSelectorCreator/</memoizedResultFunc<
444/defaultMemoize/<
444/createSelectorCreator/</selector<
444/defaultMemoize/<
mapStateToProps
mapToPropsProxy
handleNewState
handleSubsequentCalls
pureFinalPropsSelector
runComponentSelector
onStateChange
bound
notify
notifyNestedSubs
bound
onStateChange
bound
notify
notifyNestedSubs
bound
onStateChange
bound
dispatch
waitUntilService/</<
promiseMiddleware/</<
context/</<
thunk/</</<
bindActionCreator/<
invokeFunc
leadingEdge
debounced
it
CodeMirror</Sa/<
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
Updated•5 years ago
|
Pushed by jlaster@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6b3192ef9401 improve column breakpoint rendering performance. r=davidwalsh
Comment 3•5 years ago
|
||
Backed out changeset 6b3192ef9401 (Bug 1552015) for es lint failure on visibleColumnBreakpoints.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/162bfe0357154f3f0a178e68068371132c0071c4
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=251291007&repo=autoland&lineNumber=290
[vcs 2019-06-12T00:57:42.880Z] 277993 files updated, 0 files merged, 0 files removed, 0 files unresolved
[vcs 2019-06-12T00:57:43.176Z] updated to 6b3192ef9401d1f04be540641aeda20e9056b9ef
[vcs 2019-06-12T00:57:43.181Z] PERFHERDER_DATA: {"framework": {"name": "vcs"}, "suites": [{"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "clone", "serverUrl": "us-west-2.hgmointernal.net", "shouldAlert": false, "subtests": [], "value": 154.96659994125366}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "update", "serverUrl": "us-west-2.hgmointernal.net", "shouldAlert": false, "subtests": [], "value": 107.52980184555054}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "overall", "serverUrl": "us-west-2.hgmointernal.net", "shouldAlert": false, "subtests": [], "value": 262.696524143219}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "overall_clone", "serverUrl": "us-west-2.hgmointernal.net", "shouldAlert": false, "subtests": [], "value": 262.696524143219}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "overall_clone_fullcheckout", "serverUrl": "us-west-2.hgmointernal.net", "shouldAlert": false, "subtests": [], "value": 262.696524143219}]}
[vcs 2019-06-12T00:57:43.508Z] TinderboxPrint:<a href=https://us-west-2.hgmointernal.net/integration/autoland/rev/6b3192ef9401d1f04be540641aeda20e9056b9ef title='Built from autoland revision 6b3192ef9401d1f04be540641aeda20e9056b9ef'>6b3192ef9401d1f04be540641aeda20e9056b9ef</a>
[task 2019-06-12T00:57:43.508Z] executing ['bash', '-cx', 'cd /builds/worker/checkouts/gecko/ && cp -r /build/node_modules_eslint node_modules && ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules && ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules && ./mach lint -l eslint -f treeherder --quiet -f json:/builds/worker/mozlint.json\n']
[task 2019-06-12T00:57:43.512Z] + cd /builds/worker/checkouts/gecko/
[task 2019-06-12T00:57:43.512Z] + cp -r /build/node_modules_eslint node_modules
[task 2019-06-12T00:57:45.343Z] + ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules
[task 2019-06-12T00:57:45.344Z] + ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules
[task 2019-06-12T00:57:45.345Z] + ./mach lint -l eslint -f treeherder --quiet -f json:/builds/worker/mozlint.json
[task 2019-06-12T00:57:46.312Z] New python executable in /builds/worker/checkouts/gecko/obj-x86_64-pc-linux-gnu/_virtualenvs/init/bin/python2.7
[task 2019-06-12T00:57:46.312Z] Also creating executable in /builds/worker/checkouts/gecko/obj-x86_64-pc-linux-gnu/_virtualenvs/init/bin/python
[task 2019-06-12T00:57:48.021Z] Installing setuptools, pip, wheel...done.
[task 2019-06-12T00:57:49.084Z] running build_ext
[task 2019-06-12T00:57:49.085Z] building 'psutil._psutil_linux' extension
[task 2019-06-12T00:57:49.085Z] creating build
[task 2019-06-12T00:57:49.085Z] creating build/temp.linux-x86_64-2.7
[task 2019-06-12T00:57:49.085Z] creating build/temp.linux-x86_64-2.7/psutil
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_common.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_common.o
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_linux.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o
[task 2019-06-12T00:57:49.085Z] creating build/lib.linux-x86_64-2.7
[task 2019-06-12T00:57:49.085Z] creating build/lib.linux-x86_64-2.7/psutil
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/psutil/_psutil_common.o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so
[task 2019-06-12T00:57:49.085Z] building 'psutil._psutil_posix' extension
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_common.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_common.o
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o
[task 2019-06-12T00:57:49.085Z] x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/psutil/_psutil_common.o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so
[task 2019-06-12T00:57:49.085Z] copying build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so -> psutil
[task 2019-06-12T00:57:49.085Z] copying build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so -> psutil
[task 2019-06-12T00:57:49.085Z]
[task 2019-06-12T00:57:49.085Z] Error processing command. Ignoring because optional. (optional:packages.txt:comm/build/virtualenv_packages.txt)
[task 2019-06-12T01:07:50.521Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/devtools/client/debugger/src/selectors/visibleColumnBreakpoints.js:193:49 | Replace ???ColumnBreakpoints?
with ColumnBreakpoints
(prettier/prettier)
[taskcluster 2019-06-12 01:07:50.845Z] === Task Finished ===
[taskcluster 2019-06-12 01:07:51.786Z] Unsuccessful task run with exit code: 1 completed in 874.324 seconds
Assignee | ||
Comment 4•5 years ago
|
||
Pushed by jlaster@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/69d2b6708f9b improve column breakpoint rendering performance.
Updated•5 years ago
|
Comment 6•5 years ago
|
||
bugherder |
Assignee | ||
Updated•5 years ago
|
Description
•