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

Get windows coredump archiving to work again #36469

Open
mkustermann opened this issue Apr 4, 2019 · 5 comments
Open

Get windows coredump archiving to work again #36469

mkustermann opened this issue Apr 4, 2019 · 5 comments
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening

Comments

@mkustermann
Copy link
Member

The coredump generation on windows seems to have trouble:

From this build:

Archiving coredumps for crash (if possible):
----> Crash(language_2/control_flow_collections/for_await_test: 8588 binary.release_x64_dart_precompiled_runtime.exe, binary.release_x64_kernel-service.dart.snapshot)
INFO: Moving collected dumps and binaries into output directory
INFO: They will be uploaded to isolate server. Look for "isolated out" under the failed step on the build page.
INFO: For more information see runtime/docs/infra/coredumps.md
+++ Moving binary.release_x64_kernel-service.dart.snapshot to output_directory (C:\b\s\w\iowjp69k)
+++ Moving binary.release_x64_dart_precompiled_runtime.exe to output_directory (C:\b\s\w\iowjp69k)
ERROR: Failed to archive crashes: Missing crash dumps for: Crash(language_2/control_flow_collections/for_await_test: 8588 binary.release_x64_dart_precompiled_runtime.exe, binary.release_x64_kernel-service.dart.snapshot)
Could not find crash dumps for 'Crash(language_2/control_flow_collections/for_await_test: 8588 binary.release_x64_dart_precompiled_runtime.exe, binary.release_x64_kernel-service.dart.snapshot)' in search directory 'C:\b\s\w\ir\crashes\reports'.
Existing files which *did not* match the pattern inside the search directory are are:
  
Traceback (most recent call last):
  File "tools/test.py", line 39, in <module>
    sys.exit(Main())
  File "tools/test.py", line 32, in Main
    exit_code = subprocess.call(command)
  File "C:\b\s\w\ir\.swarming_module\bin\Lib\contextlib.py", line 24, in __exit__
    self.gen.next()
  File "C:\b\s\w\ir\.swarming_module\bin\Lib\contextlib.py", line 121, in nested
    if exit(*exc):
  File "C:\b\s\w\ir\tools\utils.py", line 1097, in __exit__
    super(WindowsCoreDumpArchiver, self).__exit__(*args)
  File "C:\b\s\w\ir\tools\utils.py", line 855, in __exit__
    self._archive(archive_crashes)
  File "C:\b\s\w\ir\tools\utils.py", line 896, in _archive
    self._report_missing_crashes(missing, throw=True)
  File "C:\b\s\w\ir\tools\utils.py", line 1133, in _report_missing_crashes
    raise Exception('Missing crash dumps for: %s' % missing_as_string)
Exception: Missing crash dumps for: Crash(language_2/control_flow_collections/for_await_test: 8588 binary.release_x64_dart_precompiled_runtime.exe, binary.release_x64_kernel-service.dart.snapshot)

I will disable this exception for now.

/cc @mraleph @athomas

@mkustermann mkustermann added area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening labels Apr 4, 2019
dart-bot pushed a commit that referenced this issue Apr 4, 2019
Issue #36469

Change-Id: I57d53d1ef02841e1f5c9f9993f896a8d20ee6f18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98670
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
@sstrickl
Copy link
Contributor

sstrickl commented Sep 2, 2019

We've seen some red shards on Windows bots again recently due to coredump generation (see this example log). Was this workaround later removed, or is something more needed?

@athomas
Copy link
Member

athomas commented Sep 2, 2019

I'm not sure if that workaround ever worked because there is also this code in the WindowsCoreDumpArchiver (so even though mkustermann's commit disabled the throw in the BaseCoreDumpArchiver, the WindowsCoreDumpArchiver still throws):

    def _report_missing_crashes(self, missing, throw=True):
        # Let's only print the debugging information and not throw. We'll do more
        # validation for werfault.exe and throw afterwards.
        super(WindowsCoreDumpArchiver, self)._report_missing_crashes(
            missing, throw=False)

        if throw:
            missing_as_string = ', '.join([str(c) for c in missing])
            raise Exception('Missing crash dumps for: %s' % missing_as_string)

@mkustermann
Copy link
Member Author

@mraleph I'm pretty sure the windows dump archiving worked at some point, right?

@mraleph
Copy link
Member

mraleph commented Sep 3, 2019

It certainly used to work. I will boot my Windows machine and check if it still works.

@mraleph
Copy link
Member

mraleph commented Sep 3, 2019

I have verified that core dump archiving works locally - crash dumps are archived. Also I can see that it sometimes work on buildbot (e.g. https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket.appspot.com/8903847719986078400/+/steps/vm_tests_shard_10/0/stdout).

We need to investigate further what is going wrong - but I can't quickly figure it out.

dart-bot pushed a commit that referenced this issue May 20, 2021
This prevents missing core dumps from crashing bots a la:
https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket.appspot.com/8846992204042276416/+/u/vm_tests_shard_1/task_stdout_stderr:_vm_tests_shard_1

Bug: #36469
Change-Id: If66e40d8cb2df7ece7c1274fbbdcbffda445056d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/200865
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Clement Skau <cskau@google.com>
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
Projects
None yet
Development

No branches or pull requests

4 participants