dart-lang / sdk

The Dart SDK, including the VM, JS and Wasm compilers, analysis, core libraries, and more.
https://dart.dev
BSD 3-Clause "New" or "Revised" License
10.27k stars 1.58k forks source link

Sticky error appears to be sticky across calls to isolate.loadUri in hot-reload-mode-test #36660

Open a-siva opened 5 years ago

a-siva commented 5 years ago

In hot reload mode test the test tests/lib_2/mirrors/dynamic_load_test.dart it appears that the sticky error is not reset across calls to isolate.loadUri.

The failure pattern is as follows:

--- Command "vm_compile_to_kernel []" (took 475ms):
DART_CONFIGURATION=ReleaseSIMDBC64 /b/s/w/ir/pkg/vm/tool/gen_kernel --no-aot --platform=xcodebuild/ReleaseSIMDBC64/vm_platform_strong.dill -o /b/s/w/ir/xcodebuild/ReleaseSIMDBC64/generated_compilations/dartk/tests_lib_2_mirrors_dynamic_load_test/out.dill /b/s/w/ir/tests/lib_2/mirrors/dynamic_load_test.dart --packages=/b/s/w/ir/.packages -Ddart.developer.causal_async_stacks=true

exit code:
0

--- Command "vm" (took 07.000368s):
DART_CONFIGURATION=ReleaseSIMDBC64 xcodebuild/ReleaseSIMDBC64/dart --suppress-core-dump --hot-reload-test-mode --ignore-unrecognized-flags --packages=/b/s/w/ir/.packages /b/s/w/ir/xcodebuild/ReleaseSIMDBC64/generated_compilations/dartk/tests_lib_2_mirrors_dynamic_load_test/out.dill

exit code:
254

stdout:
IsolateMirror on 'main'
LibraryMirror on 'dynamic_load_success'
InstanceMirror on 1
InstanceMirror on 2
LibraryMirror on 'dynamic_load_success'
InstanceMirror on 3
InstanceMirror on 4
Error: Error when reading 'tests/lib_2/mirrors/DOES_NOT_EXIST': No such file or directory
Exception: Cannot load dart:_builtin

stderr:
Unhandled exception:
Error: Error when reading 'tests/lib_2/mirrors/DOES_NOT_EXIST': No such file or directory
#0      _LocalIsolateMirror._loadUri (dart:mirrors-patch/mirrors_impl.dart:138:75)
#1      _LocalIsolateMirror.loadUri (dart:mirrors-patch/mirrors_impl.dart:130:18)
<asynchronous suspension>
#2      main (file:///b/s/w/ir/tests/lib_2/mirrors/dynamic_load_test.dart:64:21)
<asynchronous suspension>
#3      _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:300:19)
#4      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:171:12)

--- Re-run this test:
python tools/test.py -n dartk-reload-mac-release-simdbc64 lib_2/mirrors/dynamic_load_test

It does not reproduce on the command line although it was failing consistently on the bot.

a-siva commented 5 years ago

/cc @rmacnak-google