v0.16.0
Β· 6 min read
Release date: August 06, 2025
π Highlightsβ
-
PromQL:
- Adds
absent()
function for missing series detection (#6618). - Enhances PromQL compatibility with OLTP metrics (#6543).
- Supports querying label values from internal labels
__schema__
and__database__
(#6631).
- Adds
-
Observability Improvements: Provides a panic logger, HTTP API to toggle heap profiling (enabled by default), and more verbose logs/metrics in
EXPLAIN ANALYZE VERBOSE
(#6633, #6593, #6575).
π Dashboard v0.10.6β
- Sidebar Personalization - Toggle sidebar visibility and adjust width with persistent user preference settings
- Data View Fullscreen Mode - Query results can be displayed in fullscreen for enhanced data analysis experience
- Refactored Log/Trace View - Improved log and trace viewing functionality with better user interface and performance
π Featuresβ
- feat: add
RegionId
toFileId
by @waynexia in #6410 - feat: move metasrv admin to http server while keep tonic for backward compatibility by @lyang24 in #6466
- feat(mito): replace
Memtable::iter
withMemtable::ranges
by @v0y4g3r in #6549 - feat: supports more db options by @killme2008 in #6529
- feat: allow ignoring nonexistent regions in recovery mode by @WenyXu in #6592
- feat: impl some promql scalar functions by @killme2008 in #6567
- feat: poll result stream more often by @discord9 in #6599
- feat: fallback when failed to push down using
DistPlanner
by @discord9 in #6574 - feat: add
SET DEFAULT
syntax by @linyihai in #6421 - feat: struct vector by @discord9 in #6595
- feat: trigger alter parse by @fengys1996 in #6553
- feat: update dashboard to v0.10.5 by @ZonaHex in #6604
- feat: allow setting next table id via http api by @WenyXu in #6597
- feat: ignore internal keys in metadata snapshots by @WenyXu in #6606
- feat: introduce reconcile table procedure by @WenyXu in #6584
- feat: more logs and metrics under explain verbose mode by @evenyag in #6575
- feat: introduce reconcile database procedure by @WenyXu in #6612
- feat: introduce reconcile logical tables procedure by @WenyXu in #6588
- feat: HTTP API to activate/deactive heap prof (activate by default) by @evenyag in #6593
- feat: Implement a converter to converts KeyValues into BulkPart by @evenyag in #6620
- feat: introduce reconcile catalog procedure by @WenyXu in #6613
- feat: panic logger by @discord9 in #6633
- feat: update dashboard to v0.10.6 by @ZonaHex in #6632
- feat: support
__schema__
and__database__
in Prom Remote Read by @waynexia in #6610 - feat: support tls for pg backend by @waynexia in #6611
- feat:
absent
function in PromQL by @waynexia in #6618 - feat: Add option to limit the files reading simultaneously by @evenyag in #6635
- feat: introduce reconciliation interface by @WenyXu in #6614
- feat: add partial truncate by @discord9 in #6602
- feat: schema/database support for label_values by @sunng87 in #6631
- feat: implements FlatReadFormat to project parquets with flat schema by @evenyag in #6638
- feat: use real data to truncate manipulate range by @waynexia in #6649
- feat: Implements an iterator to read the RecordBatch in BulkPart by @evenyag in #6647
- feat: register all aggregate function to auto step aggr fn by @discord9 in #6596
- feat: use column expr with filters in LogQuery by @waynexia in #6646
- feat: record the migration events in metasrv by @zyy17 in #6579
- feat: support TQL CTE in planner by @waynexia in #6645
- feat(log-query): support binary op, scalar fn & is_true/is_false by @waynexia in #6659
- feat: EncodedBulkPartIter iters flat format and returns RecordBatch by @evenyag in #6655
- feat: count underscore in English tokenizer and improve performance by @waynexia in #6660
π Bug Fixesβ
- fix: aggr group by all partition cols use partial commutative by @discord9 in #6534
- fix: closee issue #6555 return empty result by @yihong0618 in #6569
- fix: ignore target files in make fmt-check by @yihong0618 in #6560
- fix: close issue #6586 make pg also show error as mysql by @yihong0618 in #6587
- fix: add map datatype conversion in copy_table_from (#6185) by @Arshdeep54 in #6422
- fix(test): concurrency issue in compaction tests by @v0y4g3r in #6615
- fix: only return the name label when there is one by @waynexia in #6629
- fix: bump greptime-sqlparser to avoid convert statement overflow by @kemingy in #6634
- fix: show create flow's expire after by @discord9 in #6641
- fix: fix sequence peek method to return correct values when sequence is not initialized by @WenyXu in #6643
- fix: sequence peek with remote value by @fengjiachun in #6648
- fix: not mark all deleted when partial trunc by @discord9 in #6654
- fix: box Explain node in Statement to reduce stack size by @waynexia in #6661
- fix: unable to record slow query by @zyy17 in #6590
π Refactorβ
- refactor: refactor partition mod to use PartitionExpr instead of PartitionDef by @zhongzc in #6554
- refactor: remove unused PartitionDef by @zhongzc in #6573
- refactor: explicitly accept path type as param by @zhongzc in #6583
- refactor(otlp_metric): make otlp metric compatible with promql by @shuiyisong in #6543
- refactor: remove procedure executor from DDL manager by @WenyXu in #6625
π Documentationβ
- docs(rfc): repartition by @waynexia in #6557
- docs(rfc): compatibility test framework by @waynexia in #6460
β‘ Performanceβ
βοΈ Miscellaneous Tasksβ
- chore(otlp_metric): support attr list in header opts by @shuiyisong in #6617
- chore(otlp_metric): update metric and label naming by @shuiyisong in #6624
- chore: refine metrics tracking the flush/compaction cost time by @v0y4g3r in #6630
- chore: update jieba tantivy-jieba and tantivy version by @yihong0618 in #6637
- chore: add
limit
in resources panel andCache Miss
panel by @zyy17 in #6636 - chore: add methods to catalog manager by @v0y4g3r in #6656
New Contributorsβ
All Contributorsβ
We would like to thank the following contributors from the GreptimeDB community:
@Arshdeep54, @WenyXu, @ZonaHex, @discord9, @evenyag, @fengjiachun, @fengys1996, @kemingy, @killme2008, @linyihai, @lyang24, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @yihong0618, @zhongzc, @zyy17