Skip to content

[fix](test) Fix BDB JE resource leak in BDBEnvironmentTest causing FE UT timeout#61404

Merged
morningman merged 1 commit intoapache:masterfrom
morningman:fix/bdbje-env-test-resource-leak
Mar 17, 2026
Merged

[fix](test) Fix BDB JE resource leak in BDBEnvironmentTest causing FE UT timeout#61404
morningman merged 1 commit intoapache:masterfrom
morningman:fix/bdbje-env-test-resource-leak

Conversation

@morningman
Copy link
Contributor

@morningman morningman commented Mar 16, 2026

What problem does this PR solve?

The following resource leak issues in BDBEnvironmentTest cause BDB JE checkpoint threads to enter an infinite VLSN consistency retry loop during JVM shutdown, blocking the Maven Surefire process from exiting and triggering TeamCity execution timeout (~3 hours):

  1. testReadTxnIsNotMatched: reopens BDB JE master environment and database at the end but never closes them.

  2. testRollbackException: has an early 'return' when fe1 is elected as master, which exits the method without closing any of the 3 BDB JE environments.

Fix by wrapping the test logic of both multi-node cluster tests (testRollbackException, testReadTxnIsNotMatched) with try/finally blocks that guarantee all BDB JE environments are closed, regardless of whether the test passes, fails an assertion, or returns early.

Release note

None

Check List (For Author)

  • Test

    • Regression test
    • Unit Test
    • Manual test (add detailed scripts or steps below)
    • No need to test or manual test. Explain why:
      • This is a refactor/code format and no logic has been changed.
      • Previous test can cover this change.
      • No code files have been changed.
      • Other reason
  • Behavior changed:

    • No.
    • Yes.
  • Does this need documentation?

    • No.
    • Yes.

Check List (For Reviewer who merge this PR)

  • Confirm the release note
  • Confirm test cases
  • Confirm document
  • Add branch pick label

… UT timeout

The following resource leak issues in BDBEnvironmentTest cause BDB JE
checkpoint threads to enter an infinite VLSN consistency retry loop
during JVM shutdown, blocking the Maven Surefire process from exiting
and triggering TeamCity execution timeout (~3 hours):

1. testReadTxnIsNotMatched: reopens BDB JE master environment and
   database at the end but never closes them.

2. testRollbackException: has an early 'return' when fe1 is elected
   as master, which exits the method without closing any of the 3
   BDB JE environments.

Fix by wrapping the test logic of both multi-node cluster tests
(testRollbackException, testReadTxnIsNotMatched) with try/finally
blocks that guarantee all BDB JE environments are closed, regardless
of whether the test passes, fails an assertion, or returns early.
@hello-stephen
Copy link
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@morningman
Copy link
Contributor Author

run feut

@hello-stephen
Copy link
Contributor

FE UT Coverage Report

Increment line coverage `` 🎉
Increment coverage report
Complete coverage report

@hello-stephen
Copy link
Contributor

skip buildall

@github-actions
Copy link
Contributor

PR approved by at least one committer and no changes requested.

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Mar 17, 2026
@github-actions
Copy link
Contributor

PR approved by anyone and no changes requested.

@morningman morningman merged commit 6f2b641 into apache:master Mar 17, 2026
37 of 38 checks passed
github-actions bot pushed a commit that referenced this pull request Mar 17, 2026
… UT timeout (#61404)

### What problem does this PR solve?

The following resource leak issues in BDBEnvironmentTest cause BDB JE
checkpoint threads to enter an infinite VLSN consistency retry loop
during JVM shutdown, blocking the Maven Surefire process from exiting
and triggering TeamCity execution timeout (~3 hours):

1. testReadTxnIsNotMatched: reopens BDB JE master environment and
database at the end but never closes them.

2. testRollbackException: has an early 'return' when fe1 is elected as
master, which exits the method without closing any of the 3 BDB JE
environments.

Fix by wrapping the test logic of both multi-node cluster tests
(testRollbackException, testReadTxnIsNotMatched) with try/finally blocks
that guarantee all BDB JE environments are closed, regardless of whether
the test passes, fails an assertion, or returns early.
github-actions bot pushed a commit that referenced this pull request Mar 17, 2026
… UT timeout (#61404)

### What problem does this PR solve?

The following resource leak issues in BDBEnvironmentTest cause BDB JE
checkpoint threads to enter an infinite VLSN consistency retry loop
during JVM shutdown, blocking the Maven Surefire process from exiting
and triggering TeamCity execution timeout (~3 hours):

1. testReadTxnIsNotMatched: reopens BDB JE master environment and
database at the end but never closes them.

2. testRollbackException: has an early 'return' when fe1 is elected as
master, which exits the method without closing any of the 3 BDB JE
environments.

Fix by wrapping the test logic of both multi-node cluster tests
(testRollbackException, testReadTxnIsNotMatched) with try/finally blocks
that guarantee all BDB JE environments are closed, regardless of whether
the test passes, fails an assertion, or returns early.
yiguolei pushed a commit that referenced this pull request Mar 17, 2026
…t causing FE UT timeout #61404 (#61413)

Cherry-picked from #61404

Co-authored-by: Mingyu Chen (Rayner) <morningman@163.com>
yiguolei pushed a commit that referenced this pull request Mar 18, 2026
…t causing FE UT timeout #61404 (#61412)

Cherry-picked from #61404

Co-authored-by: Mingyu Chen (Rayner) <morningman@163.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by one committer. dev/3.1.x dev/4.0.5-merged dev/4.1.0-merged reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants