Skip to content

Fix check read failed entry memory leak issue.#4513

Merged
hangc0276 merged 2 commits into
apache:masterfrom
horizonzy:fix-auro-recovery-leak
May 28, 2025
Merged

Fix check read failed entry memory leak issue.#4513
hangc0276 merged 2 commits into
apache:masterfrom
horizonzy:fix-auro-recovery-leak

Conversation

@horizonzy

Copy link
Copy Markdown
Member

When checking the read failed entry, it doesn't release the data when read successfully.

@horizonzy horizonzy closed this Oct 23, 2024
@horizonzy horizonzy reopened this Oct 23, 2024
lh.asyncReadEntries(entryIdToRead, entryIdToRead, (rc, ledHan, seq, ctx) -> {
long thisEntryId = (Long) ctx;
if (rc == BKException.Code.OK) {
LedgerEntry entry = seq.nextElement();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible for seq to have multiple elements? It would be better to check with hasMoreElements here.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think

  1. hasMoreElements needs to be judged.
  2. at the same time, if (rc == BKException.Code.OK) is true or not, this release needs to be added.
  3. then I suggest adding a testcase to cover it.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible for seq to have multiple elements? It would be better to check with hasMoreElements here.

Make sense.

at the same time, if (rc == BKException.Code.OK) is true or not, this release needs to be added.

For this case, if the rc == BKException.Code.OK is false, the seq will be null, we don't need to release the seq.

@StevenLuMT StevenLuMT left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good jobs

@hangc0276 hangc0276 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job!

@hangc0276
hangc0276 merged commit 37b63c9 into apache:master May 28, 2025
merlimat pushed a commit that referenced this pull request May 30, 2025
* Fix check read failed entry memory leak issue.

* address the comments.
merlimat pushed a commit that referenced this pull request Jun 2, 2025
* Fix check read failed entry memory leak issue.

* address the comments.
priyanshu-ctds pushed a commit to datastax/bookkeeper that referenced this pull request Jul 11, 2025
* Fix check read failed entry memory leak issue.

* address the comments.

(cherry picked from commit 9b8e566)
sandeep-ctds pushed a commit to datastax/bookkeeper that referenced this pull request Jul 22, 2025
* Fix check read failed entry memory leak issue.

* address the comments.

(cherry picked from commit 9b8e566)
manas-ctds pushed a commit to datastax/bookkeeper that referenced this pull request Feb 27, 2026
* Fix check read failed entry memory leak issue.

* address the comments.

(cherry picked from commit f0c406b)
dlg99 pushed a commit to datastax/bookkeeper that referenced this pull request Feb 27, 2026
* Fix check read failed entry memory leak issue.

* address the comments.

(cherry picked from commit f0c406b)
@hangc0276 hangc0276 added this to the 4.18.0 milestone May 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants