8000 Return invalid `BufferHandle` upon loading a destroyed `BlockHandle` by lnkuiper · Pull Request #17249 · duckdb/duckdb · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Return invalid BufferHandle upon loading a destroyed BlockHandle #17249

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

Merged
merged 2 commits into from
Apr 30, 2025

Conversation

lnkuiper
Copy link
Contributor

Blocks can be destroyed at any time if they are flagged with DestroyBufferUpon::EVICTION when they are not pinned. If we try to pin them later, they should return an invalid BufferHandle instead of running into an InternalException.

I found this myself while playing around when doing some Parquet joins with low memory settings.

@carlopi
Copy link
Contributor
carlopi commented Apr 25, 2025

Curiosity: what was the exact failure message(s) that might have been returned?
I think it can be handy to have those written down, so that one searching for the problem finds this PR.

@lnkuiper
Copy link
Contributor Author

@carlopi InternalException with a stacktrace because we deref'd a unique_ptr that was a nullptr.

@duckdb-draftbot duckdb-draftbot marked this pull request as draft April 25, 2025 10:31
@lnkuiper lnkuiper marked this pull request as ready for review April 25, 2025 12:18
@Mytherin Mytherin merged commit 745b850 into duckdb:main Apr 30, 2025
49 checks passed
@Mytherin
Copy link
Collaborator

Thanks!

krlmlr added a commit to duckdb/duckdb-r that referenced this pull request May 18, 2025
Return invalid `BufferHandle` upon loading a destroyed `BlockHandle` (duckdb/duckdb#17249)
krlmlr added a commit to duckdb/duckdb-r that referenced this pull request May 18, 2025
Return invalid `BufferHandle` upon loading a destroyed `BlockHandle` (duckdb/duckdb#17249)
krlmlr added a commit to duckdb/duckdb-r that referenced this pull request May 19, 2025
Return invalid `BufferHandle` upon loading a destroyed `BlockHandle` (duckdb/duckdb#17249)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0