Skip to content

Conversation

s0und0fs1lence
Copy link
Contributor

@s0und0fs1lence s0und0fs1lence commented Aug 25, 2025

This PR avoids the costly call of ColumnTypeDatabaseTypeName function in the hotpat of the Next method.
the schema of the parquet will never change during the Next() call untill the cursor is alive; so we just calculate them in the PrepareRows and PrepareStreamingRows to avoid a heap allocation for the slice of the fields on each iteration.

This overhead could lead to GC pressure in big datasets and thus decreasing the performance of the entire driver.

Also, i've bumped libchdb to the latest version, and start using the new API

@s0und0fs1lence s0und0fs1lence changed the title Cache parquet schema fields Cache parquet schema fields & update libcdhb Aug 31, 2025
@auxten auxten changed the title Cache parquet schema fields & update libcdhb Cache parquet schema fields & update libchdb Aug 31, 2025
@auxten auxten merged commit 173e057 into chdb-io:main Aug 31, 2025
3 checks passed
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.

2 participants