Performance
- 40% faster handling of
SELECTin sharded queries by removing redundant AST walks @jkaczman
Bugs
- 0.0 and -0.0 hashed to the same value, which broke
DISTINCT,count()and other cross-shard functions @MaxFreedomPollard session_replication_roleshould be set viaSETcommand @levkkintervaltype wasn't correctly parsed for some edge cases in cross-shard aggregates @dipeshbabustddev/variancefailed on someNULLvalues in cross-shard aggregates @dipeshbabucount()wouldn't preserve original input type / would cast everything tobigint@dipeshbabuNULLwas incorrectly handled in array elements in cross-shard queries @dipeshbabutimestamp(tz) infinite values were not correctly parsed in cross-shard queries @dipeshbabutimestamp(tz) fractional time wasn't correctly preserved in cross-shard queries @dipeshbabujemallocwould crash on ARM targets with page size >= 16k @dipeshbabu- client/server TLS wouldn't load the whole chain, so client keys signed by intermediates were rejected @dipeshbabu
- don't run 2pc on direct-to-shard write transactions @rlittlefield
- connection pool statistics are preserved on
RELOAD@murex971 - handle
numericinfinite values correctly in cross-shard queries @dipeshbabu - fully-qualified columns were skipped in
DISTINCT ON@jkaczman - sequence names are quoted to make sure they work with all table names @dipeshbabu
- don't drop
SET check_function_bodiesin schema sync @meskill - pg deparser wasn't handling timezone operations correctly @meskill
- correctly route advisory lock calls in sharded deployments & handle the two parameter variant @jkaczman
- correctly track
pg_catalog.pg_advisory_*fully qualified advisory lock calls @dipeshbabu
Code quality
- migrate replication/resharding to new tasks API @meskill
unique_idandinsert_splitscleanup @sgrif- auto retries to some flaky spots in CI @jkaczman
New Contributors
- @MaxFreedomPollard made their first contribution in #1507
Full Changelog: v0.1.59...v0.1.60