You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(Note: narrowing to fewer tests doesn't remove the crash, it simply makes it more flaky. for example, lighthouse-core/test/audits crashes...some of the time. running all is more consistent)
(Note: initially I thought removing --runInBand prevented the crash, however that was an artifact of running just a subset of the tests and not realizing crashing was flaky behavior)
Quick probes for which versions of Lighthouse crash:
v6.1.0: crash
v6.0.0: crash
v5.0.0: crash
At this point I'm scratching my head. If this crashes going back to v5, how did this ever work in travis?
Here's a bisect script I wrote when I thought that was a good idea. (tries to) handle flakiness, and only fails if node crashes with OOM exit code
#!/usr/bin/env bash
set -ux
yarn
for ((n=0;n<5;n++))
do
status=0
./node_modules/.bin/nyc --all --hook-run-in-context ./node_modules/.bin/jest lighthouse-core/test --runInBand --ci --coverage
status=$?
git rev-parse HEAD >> bisect-log.txt
echo "$status" >> bisect-log.txt
# Fail if OOM.
if [ "$status" -eq 125 ] || [ "$status" -gt 127 ]; then
exit 1
fi
done
The text was updated successfully, but these errors were encountered:
@connorjclark, have you tried tweaking --max-old-space-size? We've found this to be a requirement for LH in certain scenarios. Holler if you've questions.
@connorjclark, have you tried tweaking --max-old-space-size? We've found this to be a requirement for LH in certain scenarios. Holler if you've questions.
I tried setting to 4GB but it still crashed.
Removing --coverage from unit:ci resolves it. Turns out using babel to modify your code with line counters finally caught up to us. It crashes node nearly every time now. But, it forces us to use babel plugins to use new language features. We don't like that. So we are gonna switch to https://github.com/bcoe/c8 , which instruments the code using the v8 developer protocols. I verified it doesn't crash.
While moving code coverage to GitHub Actions so we can sunset Travis #11770 #11194, an OOM crash was found when running our unit tests.
node: v12.13.0 (happens on 10 too)
crash:
(Note: narrowing to fewer tests doesn't remove the crash, it simply makes it more flaky. for example,
lighthouse-core/test/audits
crashes...some of the time. running all is more consistent)(Note: initially I thought removing
--runInBand
prevented the crash, however that was an artifact of running just a subset of the tests and not realizing crashing was flaky behavior)Quick probes for which versions of Lighthouse crash:
v6.1.0: crash
v6.0.0: crash
v5.0.0: crash
At this point I'm scratching my head. If this crashes going back to v5, how did this ever work in travis?
Here's a bisect script I wrote when I thought that was a good idea. (tries to) handle flakiness, and only fails if node crashes with OOM exit code
The text was updated successfully, but these errors were encountered: