跳到主要内容

v0.16.0

· 阅读需 6 分钟

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).
  • 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 to FileId 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 with Memtable::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

⚡ 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 and Cache 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