Skip to content

Fix worker-thread and linkage crashes#190

Open
estebanzimanyi wants to merge 1 commit into
fix/bump-meos-pinfrom
fix/worker-thread-linkage-crashes
Open

Fix worker-thread and linkage crashes#190
estebanzimanyi wants to merge 1 commit into
fix/bump-meos-pinfrom
fix/worker-thread-linkage-crashes

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

Scalar and cast bodies run MEOS on DuckDB TaskScheduler worker threads, which need a per-thread meos_initialize(); a thread-local guard in the scalar exec wrapper and a cast trampoline (RegisterMeosCastFunction) cover every entry point, so timestamp formatting no longer dereferences a NULL session_timezone. Per-type DuckDB callbacks and blob helpers have internal linkage and a single canonical blob round-trip (TemporalToBlob / BlobToTemporal) declared once in temporal/temporal_blob.hpp, so each function-pointer registration binds to its own body.

@estebanzimanyi estebanzimanyi changed the base branch from fix/bump-meos-pin to fix/bump-meos-pin-wasm-pgconfig May 30, 2026 06:29
@estebanzimanyi estebanzimanyi changed the base branch from fix/bump-meos-pin-wasm-pgconfig to fix/bump-meos-pin May 30, 2026 07:00
@estebanzimanyi estebanzimanyi force-pushed the fix/bump-meos-pin branch 4 times, most recently from fa2de57 to 17588c0 Compare June 2, 2026 09:47
@estebanzimanyi estebanzimanyi force-pushed the fix/worker-thread-linkage-crashes branch 2 times, most recently from a33f008 to ec582fe Compare June 5, 2026 16:02
@estebanzimanyi estebanzimanyi force-pushed the fix/worker-thread-linkage-crashes branch from ec582fe to f9e99dc Compare June 5, 2026 17:15
@estebanzimanyi estebanzimanyi force-pushed the fix/worker-thread-linkage-crashes branch from f9e99dc to 20328a7 Compare June 5, 2026 18:42
@estebanzimanyi estebanzimanyi force-pushed the fix/worker-thread-linkage-crashes branch 2 times, most recently from 6a4edaf to dab415b Compare June 6, 2026 06:10
@estebanzimanyi estebanzimanyi force-pushed the fix/bump-meos-pin branch 2 times, most recently from e12394e to 8d61366 Compare June 6, 2026 06:35
@estebanzimanyi estebanzimanyi force-pushed the fix/worker-thread-linkage-crashes branch 2 times, most recently from 22d2966 to db34f35 Compare June 6, 2026 07:15
Scalar and cast bodies run MEOS on DuckDB TaskScheduler worker threads, which
need a per-thread meos_initialize(); a thread-local guard in the scalar exec
wrapper and a cast trampoline (RegisterMeosCastFunction) cover every entry
point, so timestamp formatting no longer dereferences a NULL session_timezone.
Per-type DuckDB callbacks and blob helpers have internal linkage and a single
canonical blob round-trip (TemporalToBlob / BlobToTemporal) declared once in
temporal/temporal_blob.hpp, so each function-pointer registration binds to its
own body.

(cherry picked from commit 7b99a0c)
@estebanzimanyi estebanzimanyi force-pushed the fix/worker-thread-linkage-crashes branch from db34f35 to a8d5194 Compare June 6, 2026 23:52
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.

1 participant