Skip to content

[Feature] Preserve core dumps and matching test binaries in CI #311

Description

@zjw1111

Search before asking

  • I searched in the issues and found nothing similar.

Motivation

When a test crashes in the Build and Test workflow, build_support/run-test.sh prints a backtrace if it can find a core dump, but then deletes the core file together with the test work directory. The workflow also does not enable core dump generation or upload debugging artifacts.

As a result, crashes reported as (core dumped) cannot be investigated offline after the CI job finishes. Preserving the dump and its matching executable would make intermittent native crashes diagnosable.

Solution

  • Enable unlimited core dumps and set kernel.core_pattern=core.%e.%p in the same shell that runs ci/scripts/build_paimon.sh.
  • Keep printing all-thread backtraces in CI.
  • Move discovered core files to the persistent test debug directory instead of deleting them.
  • Preserve the exact matching test executable alongside each core dump.
  • Upload the debug directory as a matrix-specific artifact when a build-and-test job fails, with a short retention period.

Anything else?

The implementation is available in #312.

Are you willing to submit a PR?

  • I am willing to submit a PR!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions