Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion failures related to line_starts_data #53010

Closed
rmacnak-google opened this issue Jul 21, 2023 · 4 comments
Closed

Assertion failures related to line_starts_data #53010

rmacnak-google opened this issue Jul 21, 2023 · 4 comments
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening vm-service The VM Service Protocol, both the specification and its implementation

Comments

@rmacnak-google
Copy link
Contributor

The tests

vm/dart/regress_48523_test RuntimeError (expected Pass)

are failing on configurations

vm-linux-debug-x64
vm-mac-debug-arm64
vm-mac-debug-x64
vm-win-debug-x64
--- Command "vm" (took 14.000320s):
DART_CONFIGURATION=DebugX64 out/DebugX64/dart --sound-null-safety -Dtest_runner.configuration=vm-linux-debug-x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/.dart_tool/package_config.json /b/s/w/ir/runtime/tests/vm/dart/regress_48523_test.dart

exit code:
255

stdout:
Launching out/DebugX64/dart --packages=.dart_tool/package_config.json --snapshot-kind=kernel --snapshot=/b/s/w/itv559pxxg/DMYVEO/test.dart.0.dill /b/s/w/itv559pxxg/DMYVEO/test.dart
Launching out/DebugX64/dart --packages=.dart_tool/package_config.json --snapshot-kind=kernel --snapshot=/b/s/w/itv559pxxg/DMYVEO/test.dart.1.dill /b/s/w/itv559pxxg/DMYVEO/test.dart
Launching out/DebugX64/dart --packages=.dart_tool/package_config.json --snapshot-kind=kernel --snapshot=/b/s/w/itv559pxxg/DMYVEO/test.dart.2.dill /b/s/w/itv559pxxg/DMYVEO/test.dart
Launching out/DebugX64/dart --enable-vm-service:0 --disable-dart-dev --disable-service-auth-codes file:///b/s/w/itv559pxxg/DMYVEO/test.dart.0.dill
stdout: [testee] helper isolate is ready
stdout: The Dart VM service is listening on http://127.0.0.1:45555/
stderr: ../../runtime/vm/object.cc: 13110: error: expected: last_token_index->Serialize() <= source_length
stderr: version=3.1.0-edge.46086e908cbea8ccf6a0d2280adeb1b3d48eaa06 (be) (Fri Jul 21 11:08:48 2023 +0000) on "linux_x64"
stderr: pid=67565, thread=67576, isolate_group=main(0x55d072c531b0), isolate=helper-isolate(0x7f0c64000cd0)
stderr: os=linux, arch=x64, comp=no, sim=no
stderr: isolate_instructions=55d0706dbca0, vm_instructions=55d0706dbca0
stderr: fp=7f0c772fc960, sp=7f0c772fc828, pc=55d070acadec
stderr:   pc 0x000055d070acadec fp 0x00007f0c772fc960 dart::Profiler::DumpStackTrace(void*)+0x7c
stderr:   pc 0x000055d0706dbe94 fp 0x00007f0c772fca40 dart::Assert::Fail(char const*, ...) const+0x84
stderr:   pc 0x000055d070a0fd1b fp 0x00007f0c772fcaa0 out/DebugX64/dart+0x2642d1b
stderr:   pc 0x000055d070931d48 fp 0x00007f0c772fcb50 dart::Debugger::BreakpointLocationAtLineCol(dart::String const&, long, long)+0x1f8
stderr:   pc 0x000055d070931fe3 fp 0x00007f0c772fcb80 dart::Debugger::SetBreakpointAtLineCol(dart::String const&, long, long)+0x23
stderr:   pc 0x000055d070b61bc6 fp 0x00007f0c772fcbe0 out/DebugX64/dart+0x2794bc6
stderr:   pc 0x000055d070b52248 fp 0x00007f0c772fd3f0 dart::Service::InvokeMethod(dart::Isolate*, dart::Array const&, bool)+0x4d8
stderr:   pc 0x000055d070b52cba fp 0x00007f0c772fd420 dart::Service::HandleIsolateMessage(dart::Isolate*, dart::Array const&)+0x1a
stderr:   pc 0x000055d070958083 fp 0x00007f0c772fdbb0 dart::IsolateMessageHandler::HandleMessage(std::__2::unique_ptr<dart::Message, std::__2::default_delete<dart::Message>>)+0x273
stderr:   pc 0x000055d070996345 fp 0x00007f0c772fdc40 dart::MessageHandler::HandleMessages(dart::MonitorLocker*, bool, bool)+0x1d5
stderr:   pc 0x000055d070996fe7 fp 0x00007f0c772fdcc0 dart::MessageHandler::TaskCallback()+0x307
stderr:   pc 0x000055d070b91760 fp 0x00007f0c772fdd50 dart::ThreadPool::WorkerLoop(dart::ThreadPool::Worker*)+0x180
stderr:   pc 0x000055d070b9208b fp 0x00007f0c772fdda0 dart::ThreadPool::Worker::Main(unsigned long)+0x12b
stderr:   pc 0x000055d070ac38e3 fp 0x00007f0c772fdef0 out/DebugX64/dart+0x26f68e3
stderr: -- End of DumpStackTrace

stderr:
Unhandled exception:
Bad state: The client closed with pending request "addBreakpoint".

--- Re-run this test:
python3 tools/test.py -n vm-linux-debug-x64 vm/dart/regress_48523_test

This test appears to have been flaky failing for a long time and recently switched to consistently failing.

@rmacnak-google rmacnak-google added area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening labels Jul 21, 2023
@a-siva
Copy link
Contributor

a-siva commented Jul 22, 2023

//cc @derekxu16

@a-siva a-siva added the vm-service The VM Service Protocol, both the specification and its implementation label Jul 22, 2023
@dcharkes
Copy link
Contributor

@derekxu16
Copy link
Member

What I'm observing is:

The test loads a program from a dill here

final reloader = await launchOn(dills[0]);

and then calling HasSource() on the Script corresponding to the program returns true, making it enter this branch

sdk/runtime/vm/object.cc

Lines 13108 to 13109 in 293d32f

const String& source = String::Handle(zone, Source());
source_length = source.Length();

but source is an empty string in that branch

Is this expected?

cc @mkustermann, @johnniwinther

@mkustermann
Copy link
Member

This was probably introduced by my change in 8d802dd. Made cl/316581 to fix it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening vm-service The VM Service Protocol, both the specification and its implementation
Projects
None yet
Development

No branches or pull requests

5 participants