Overview
This release includes new SQL features from our amazing Hacktoberfest contributors as well as performance and stability improvements.
What is new
SQL
string functions:
- add
lower()
andupper()
string functions by @blackstar-baba in https://github.com/questdb/questdb/pull/2582 - add
position()
alias for string functionstrpos()
by @DarthBenro008 in https://github.com/questdb/questdb/pull/2599 - implement
starts_with
string function by @akki1306 in https://github.com/questdb/questdb/pull/2608 - add
lpad
andrpad
string functions by @eigengravy in https://github.com/questdb/questdb/pull/2631 - implement string function
split_part()
by @daniel-shuy in https://github.com/questdb/questdb/pull/2644
numeric functions:
- add math function
ceiling
with double and float arguments by @bsnxsourav in https://github.com/questdb/questdb/pull/2600 - add
log10
math function to calculate base 10 logarithm of double argument by @blackstar-baba in https://github.com/questdb/questdb/pull/2579 - rename
log()
toln()
for natural logarithm function by @Ln11211 in https://github.com/questdb/questdb/pull/2605
others:
- support
CREATE TABLE LIKE
syntax by @akki1306 in https://github.com/questdb/questdb/pull/2580 - allow
ALTER DROP
of the last partition by @marregui in https://github.com/questdb/questdb/pull/2606 - support using
row_number() over()
androw_number() over(ORDER BY)
by @blackstar-baba in https://github.com/questdb/questdb/pull/2656
Web Console
- active SQL highlights in the editor by @argshook in https://github.com/questdb/questdb/pull/2661
What we fixed
SQL
- fix OOM handling in vectorized group by implementation by @bziobrowski in https://github.com/questdb/questdb/pull/2562
- fix unexpected NPE thrown in query with analytical function and filter by @puzpuzpuz in https://github.com/questdb/questdb/pull/2598
- fix spurious errors with SQL queries when table columns are added extremely frequently in the background by @ideoma in https://github.com/questdb/questdb/pull/2602
- fix COPY of file with duplicate column names by @bziobrowski in https://github.com/questdb/questdb/pull/2591
- fix case-insensitivity for ILIKE by @Ln11211 in https://github.com/questdb/questdb/pull/2593
- change default location of import work directory to avoid extra file copying by @puzpuzpuz in https://github.com/questdb/questdb/pull/2592
- fix sampling aligned to calendar timezone and ending with semicolon or followed by ORDER BY/LIMIT by @jerrinot in https://github.com/questdb/questdb/pull/2572
- fix group by hour(ts) query optimization by @bziobrowski in https://github.com/questdb/questdb/pull/2622
- fix window function row_number() result start with zero if using PARTITION BY by @blackstar-baba in https://github.com/questdb/questdb/pull/2612
- fix #1916 bug of empty string and null string selection by @Twilight-Shuxin in https://github.com/questdb/questdb/pull/2056
- apply query timeout to insert statements and improve timeout reliability by @bziobrowski in https://github.com/questdb/questdb/pull/2587
- spurious duplicate column name errors in joins by @marregui in https://github.com/questdb/questdb/pull/2652
- force inlining for GROUP BY queries with few aggregates by @puzpuzpuz in https://github.com/questdb/questdb/pull/2621
- avoid unexpected errors when over() clause for analytic functions is missing @puzpuzpuz in https://github.com/questdb/questdb/pull/2657
CORE
- fix SIGSEGV on writing to table with intensive row cancel and rollback operations by @ideoma in https://github.com/questdb/questdb/pull/2596
- fix commit error when many partitions are added and merged in one transaction by @ideoma in https://github.com/questdb/questdb/pull/2627
- speeding up CSV lexer by 18-20% on amd64 and JDK17 by @bluestreak01 in https://github.com/questdb/questdb/pull/2576
PGWire
- fix incorrect protocol for asyncpg error handling by @bluestreak01 in https://github.com/questdb/questdb/pull/2559
ILP
- optimize ILP parser by @puzpuzpuz in https://github.com/questdb/questdb/pull/2635
- fix degradation of row-by-row commit when commit operation takes longer than commit lag by @ideoma in https://github.com/questdb/questdb/pull/2609
- fix variability in ILP performance by @bluestreak01 in https://github.com/questdb/questdb/pull/2654
Web Console
- fix grid active row disappearing at bottom of table @argshook in https://github.com/questdb/questdb/pull/2661
Docs
- bogus TTL values in server.conf by @ShubhamPalriwala in https://github.com/questdb/questdb/pull/2597
Contributor's Hall of Fame
We want to thank our new contributors:
- @ArjunSharda made their first contribution in https://github.com/questdb/questdb/pull/2569
- @TheZal made their first contribution in https://github.com/questdb/questdb/pull/2589
- @Ln11211 made their first contribution in https://github.com/questdb/questdb/pull/2593
- @ShubhamPalriwala made their first contribution in https://github.com/questdb/questdb/pull/2597
- @blackstar-baba made their first contribution in https://github.com/questdb/questdb/pull/2582
- @akki1306 made their first contribution in https://github.com/questdb/questdb/pull/2580
- @DarthBenro008 made their first contribution in https://github.com/questdb/questdb/pull/2599
- @bsnxsourav made their first contribution in https://github.com/questdb/questdb/pull/2600
- @sklarsa made their first contribution in https://github.com/questdb/questdb/pull/2628
- @Twilight-Shuxin made their first contribution in https://github.com/questdb/questdb/pull/2056
- @eigengravy made their first contribution in https://github.com/questdb/questdb/pull/2631
Full Changelog: https://github.com/questdb/questdb/compare/6.5.3...6.5.4