Release 0.103
Queries involving a large number of aggregations or a large hash table for a join can be slow due to single threaded execution in the intermediate stages. This release adds experimental configuration and session properties to execute this single threaded work in parallel. Depending on the exact query this may reduce wall time, but will likely increase CPU usage.
Use the configuration parameter or the session property task_default_concurrency
to set the default number of parallel workers to use for join probes, hash builds and final aggregations. Additionally, the session properties task_join_concurrency
, task_hash_build_concurrency
and can be used to control the parallelism for each type of work.
This is an experimental feature and will likely change in a future release. It is also expected that this will eventually be handled automatically by the query planner and these options will be removed entirely.
Fix excessive object creation when querying tables with a large number of partitions.
Do not retry requests when an S3 path is not found.
Reduce memory usage of map_agg().
Change HTTP client defaults: 2 second idle timeout, 10 second request timeout and 250 connections per host.