Skip to main content

v0.15.0

Β· 17 min read

Release date: July 04, 2025

πŸ‘ Highlights​

  • Process Management: Implements complete process management system with ProcessManager, information_schema.process_list table, process killing functionality, and MySQL client Ctrl+C support for query termination (#5865, #6309, #6320).

  • Bulk Insert Performance: Introducing SimpleBulkMemtable for tables without primary keys to accelerate bulk write operations (#6054).

  • Partition Rule Checker: Introduces a robust point matrix-based partition rule checker that ensures completeness and uniqueness, eliminating false negatives and providing better error messages with specific uncovered/overlapped value ranges (#6431).

  • Pipeline Integration: Adds pipeline support for Prometheus remote write and Loki API (#5981, #6390).

  • VRL Processing: Introduces Vector Remap Language (VRL) processor for advanced data transformation within pipelines, allowing users to write VRL scripts for flexible data processing (#6205).

Breaking changes​

  • fix!: disable append mode in trace services table by @zyy17 in #6066
  • feat!: revise compaction picker by @v0y4g3r in #6121
  • refactor(cli)!: reorganize cli subcommands by @paomian in #6265
  • feat!: point matrix based partition rule checker by @waynexia in #6431

πŸš€ Features​

πŸ› Bug Fixes​

  • fix: check if memtable is empty by stats by @v0y4g3r in #5989
  • fix: prune primary key with multiple columns may use default value as statistics by @evenyag in #5996
  • fix: only consider the datanode that reports the failure by @WenyXu in #6004
  • fix: sanitize_connection_string by @fengjiachun in #6012
  • fix: disable recursion limit in prost by @waynexia in #6010
  • fix: always create mito engine by @v0y4g3r in #6018
  • fix: force streaming mode for instant source table by @discord9 in #6031
  • fix: do not add projection to cast timestamp in label_values by @evenyag in #6040
  • fix: improve region migration error handling and optimize leader downgrade with lease check by @WenyXu in #6026
  • fix: reset tags when creating an empty metric in prom call by @evenyag in #6056
  • fix: ensures logical and physical region have the same timestamp unit by @evenyag in #6041
  • fix: csv format escaping by @killme2008 in #6061
  • fix: alter table modify type should also modify default value by @discord9 in #6049
  • fix: flownode chose fe randomly&not starve lock by @discord9 in #6077
  • fix: typos by @omahs in #6084
  • fix: promql regex escape behavior by @waynexia in #6094
  • fix: table metadata collection by @WenyXu in #6102
  • fix: clean files under the atomic write dir on failure by @evenyag in #6112
  • fix: append noop entry when auto topic creation is disabled by @WenyXu in #6092
  • fix: fast path for single region bulk insert by @v0y4g3r in #6104
  • fix: update promql-parser for regex anchor fix by @waynexia in #6117
  • fix: flow update use proper update by @discord9 in #6108
  • fix: update dev-build image tag by @daviderli614 in #6136
  • fix: flaky prom gateway test by @v0y4g3r in #6146
  • fix: region worker stall metrics by @v0y4g3r in #6149
  • fix(flow): flow task run interval by @discord9 in #6100
  • fix: ident value in set search_path by @sunng87 in #6153
  • fix: require input ordering in series divide plan by @waynexia in #6148
  • fix: invalid table flow mapping cache by @discord9 in #6135
  • fix: bulk insert case sensitive by @v0y4g3r in #6165
  • fix: set column index can't work in physical table by @killme2008 in #6179
  • fix: add simple test for rds kv backend by @paomian in #6167
  • fix(promql): handle field column projection with correct qualifier by @WenyXu in #6183
  • fix: alter table update table column default by @discord9 in #6155
  • fix: remove poison key before retrying procedure on retryable errors by @WenyXu in #6189
  • fix: remove stale region failover detectors by @WenyXu in #6221
  • fix(mito): revert initial builder capacity for TimeSeriesMemtable by @v0y4g3r in #6231
  • fix: do not accommodate fields for multi-value protocol by @evenyag in #6237
  • fix: add missing features by @MichaelScofield in #6245
  • fix: add "query" options to standalone by @MichaelScofield in #6248
  • fix: ignore incomplete WAL entries during read by @WenyXu in #6251
  • fix: convert JSON type to JSON string in COPY TABLE TO statement by @WenyXu in #6255
  • fix: skip wal replay when opening follower regions by @WenyXu in #6234
  • fix(mito): use 1day as default time partition duration by @v0y4g3r in #6202
  • fix: export metrics settings in sample config by @killme2008 in #6170
  • fix(meta): enhance postgres election client with timeouts and reconnection by @WenyXu in #6276
  • fix: null value handling on PromQL's join by @waynexia in #6289
  • fix: config docs by @v0y4g3r in #6294
  • fix: doc links by @nicecui in #6304
  • fix: check for zero parallelism by @discord9 in #6310
  • fix: always use linux path style in windows platform unit tests by @zyy17 in #6314
  • fix: event api content type only check type and subtype by @paomian in #6317
  • fix: handle corner case in catchup where compacted entry id exceeds region last entry id by @WenyXu in #6312
  • fix: ignore missing columns and tables in PromQL by @evenyag in #6285
  • fix: override logical table's partition column with physical table's by @waynexia in #6326
  • fix: carry process id in query ctx by @v0y4g3r in #6335
  • fix: revert string builder initial capacity in TimeSeriesMemtable by @v0y4g3r in #6330
  • fix(metric): prevent setting memtable type for metadata region by @WenyXu in #6340
  • fix(jaeger-api): incorrect find_traces() logic and multiple api compatible issues by @zyy17 in #6293
  • fix: add path exist check in copy_table_from (#6182) by @Arshdeep54 in #6300
  • fix: reordered write cause incorrect kv by @v0y4g3r in #6345
  • fix(metric-engine): properly propagate errors during batch open operation by @WenyXu in #6325
  • fix(meta): enhance mysql election client with timeouts and reconnection by @WenyXu in #6341
  • fix: test test_tls_file_change_watch by @killme2008 in #6366
  • fix: complete partial index search results in cache by @zhongzc in #6403
  • fix: skip failing nodes when gathering process info by @v0y4g3r in #6412
  • fix: fix dest_keys chunks bug in TombstoneManager by @WenyXu in #6432
  • fix: correct MAX_EXECUTION_TIME timeout calculation by @evenyag in #6444
  • fix: remap column indices on overriding logical table partitions by @waynexia in #6446
  • fix: label_replace and label_join functions when used as sub‐expressions by @killme2008 in #6443
  • fix: enable max_execution time for other read only statements by @evenyag in #6454

🚜 Refactor​

  • refactor: datanode instance builder by @MichaelScofield in #6034
  • refactor: remove the "mode" configuration item completely by @MichaelScofield in #6042
  • refactor: remove some async in ServerHandlers by @MichaelScofield in #6057
  • refactor: introduce row group selection by @zhongzc in #6075
  • refactor: add SlowQueryRecorder to record slow query in system table and refactor slow query options by @zyy17 in #6008
  • refactor: replace FlightMessage with arrow RecordBatch and Schema by @v0y4g3r in #6175
  • refactor: extract some common functions and structs in election module by @CookiePieWw in #6172
  • refactor(flow): limit the size of query by @discord9 in #6216
  • refactor: respect data_home as root data home directory by @zyy17 in #6050
  • refactor: support to get trace id with time range by @zyy17 in #6236
  • refactor: unify function registry (Part 1) by @zhongzc in #6262
  • refactor: remove PipelineMap and use Value instead by @shuiyisong in #6278
  • refactor: Extract mito codec part into a new crate by @evenyag in #6307
  • refactor: make flownode gRPC services able to be added dynamically by @fengys1996 in #6323
  • refactor: make finding leader in metasrv client dynamic by @MichaelScofield in #6343
  • refactor: make metadata region option opt-in by @sunng87 in #6350
  • refactor: make scanner creation async by @MichaelScofield in #6349
  • refactor(cli): simplify metadata command parameters by @WenyXu in #6364
  • refactor: pass pipeline name through http header and get db from query context by @zyy17 in #6405
  • refactor: avoid adding feature to parameter by @fengys1996 in #6391

⚑ Performance​

βš™οΈ Miscellaneous Tasks​

New Contributors​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@Arshdeep54, @CookiePieWw, @MichaelScofield, @Olexandr88, @WenyXu, @ZonaHex, @daviderli614, @discord9, @evenyag, @fengjiachun, @fengys1996, @killme2008, @linyihai, @nicecui, @omahs, @paomian, @rgidda, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @yihong0618, @yinheli, @zhongzc, @zqr10159, @zyy17

v0.14.4

Β· One min read

Release date: June 04, 2025

πŸ› Bug Fixes​

  • fix: set column index can't work in physical table by @killme2008 in #6179
  • fix(mito): revert initial builder capacity for TimeSeriesMemtable by @v0y4g3r in #6231
  • fix: do not accommodate fields for multi-value protocol by @evenyag in #6237

βš™οΈ Miscellaneous Tasks​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@discord9, @evenyag, @killme2008, @v0y4g3r, @zhongzc

v0.14.3

Β· 2 min read

Release date: May 23, 2025

πŸš€ Features​

  • feat: don't hide atomic write dir by @waynexia in #6109
  • feat: accommodate default column name with pre-created table schema by @waynexia in #6126
  • feat: support altering multiple logical table in one remote write request by @waynexia in #6137

πŸ› Bug Fixes​

  • fix: reset tags when creating an empty metric in prom call by @evenyag in #6056
  • fix: flownode chose fe randomly&not starve lock by @discord9 in #6077
  • fix: append noop entry when auto topic creation is disabled by @WenyXu in #6092
  • fix(flow): flow task run interval by @discord9 in #6100
  • fix: flow update use proper update by @discord9 in #6108
  • fix: clean files under the atomic write dir on failure by @evenyag in #6112
  • fix: update promql-parser for regex anchor fix by @waynexia in #6117
  • fix: require input ordering in series divide plan by @waynexia in #6148
  • fix: ident value in set search_path by @sunng87 in #6153

βš™οΈ Miscellaneous Tasks​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@WenyXu, @discord9, @evenyag, @fengjiachun, @sunng87, @waynexia, @zhongzc

v0.14.2

Β· One min read

Release date: May 02, 2025

πŸ› Bug Fixes​

The following bugs have been fixed. Upgrade is recommended for v0.14 users.

βš™οΈ Miscellaneous Tasks​

  • chore: only retry when retry-able in flow by @discord9 in #5987
  • ci: fix the bugs of release-dev-builder-images and add update-dev-builder-image-tag by @zyy17 in #6009

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@discord9, @fengjiachun, @v0y4g3r, @waynexia, @zyy17

v0.14.0

Β· 16 min read

Release date: April 25, 2025

πŸ‘ Highlights​

  • Bulk Insert: Adds support for high-performance bulk data ingestion.
  • Otel Traces: Official releases otel traces.
  • Fulltext Enhancements: Improves fulltext search with new functions (e.g., matches_term, @@ operator), backend switching, and term optimizations.
  • Flow Engine: Introduces batching mode and dual engine capability for more flexible data processing.
  • Partitioning: Supports column-wise and UUID-based partition rules for better scalability.
  • Region Management: New tools for region sync, monitoring, leader region collection, and region failover handling.
  • PromQL Engine: Enhanced query performance, range manipulation speed, and stability.
  • SQL & API Improvements: Adds REPLACE INTO, new regex and JSON features, and various compatibility fixes.
  • Performance & Reliability: Optimizations for memory, storage, and parallel computation; numerous bug fixes for stability.
  • Observability: Per-region metrics, expanded Grafana dashboards, and better profiling tools.
  • Protocol & Integration: Implements Arrow Flight "DoPut" for fast data loading; improves PostgreSQL protocol support.

Plus: Many dependency upgrades, improved config and error handling, and new contributors joined!

πŸ–₯️ Dashboard​

  • Upgrade web dashboard to v0.9, supports SQL explain visualization and editor improvements.

Breaking changes​

  • refactor!: Remove Value::DateTime and ValueRef::DateTime. by @linyihai in #5616
  • refactor!: make pipeline a required parameter when ingesting trace by @sunng87 in #5828

πŸš€ Features​

πŸ› Bug Fixes​

🚜 Refactor​

  • refactor: add pipeline concept to OTLP traces and remove OTLP over gRPC by @sunng87 in #5605
  • refactor: simplify udf by @MichaelScofield in #5617
  • refactor: rename table function to admin function by @waynexia in #5636
  • refactor: remove or deprecated existing UDAF implementation by @waynexia in #5637
  • refactor: remove cluster id field by @v0y4g3r in #5610
  • refactor(mito): move wal sync task to background by @v0y4g3r in #5677
  • refactor: update jaeger api implementation for new trace modeling by @sunng87 in #5655
  • refactor: remove trace id from primary key in opentelemetry_traces table by @zyy17 in #5733
  • refactor: make frontend instance clear by @fengys1996 in #5754
  • refactor: move list_flow_stats to ClusterInfo trait. by @WenyXu in #5774
  • refactor: remove useless partition legacy code by @v0y4g3r in #5786
  • refactor: remove useless region follower legacy code by @WenyXu in #5787
  • refactor: remove useless region follower legacy code by @WenyXu in #5795
  • refactor: skip re-taking arrays in memtable if possible by @MichaelScofield in #5779
  • refactor: remove deprecated find_unique method by @waynexia in #5790
  • refactor: remove mode option in configuration files by @fengys1996 in #5809
  • refactor: allow bloom filter search to apply and conjunction by @zhongzc in #5770
  • refactor: remove prom store write dispatch by @shuiyisong in #5812
  • refactor: remove backoff config by @WenyXu in #5808
  • refactor: add time range for jager get operations API by @zyy17 in #5791
  • refactor: improve performance for Jaeger APIs by @zyy17 in #5838
  • refactor: check and fix super import by @waynexia in #5846
  • refactor(flow): make start flownode clearer by @discord9 in #5848
  • refactor: abstract index source from fulltext index applier by @zhongzc in #5845
  • refactor: improve error code handling in status code conversion by @WenyXu in #5851
  • refactor: simplify tls key read code and add sec1 key support by @sunng87 in #5856
  • refactor: avoid empty display in errors by @MichaelScofield in #5858
  • refactor: add partition_rules_for_uuid() by @zyy17 in #5743
  • refactor: unify all dashboards and use dac tool to generate intermediate dashboards by @zyy17 in #5933
  • refactor: run_pipeline parameters by @shuiyisong in #5954

πŸ“š Documentation​

⚑ Performance​

  • perf: rm coalesce batch when target_batch_size > fetch limit by @discord9 in #5658
  • perf(prom): optimize label values query by @WenyXu in #5653
  • perf: support in list in simple filter by @waynexia in #5709
  • perf: introduce simd_json for parsing ndjson by @shuiyisong in #5794
  • perf: evolve promql execution engine by @waynexia in #5691
  • perf: faster range manipulate for promql by @waynexia in #5859
  • perf: avoid duplicate computation in promql by @waynexia in #5863
  • perf: keep compiled regex in SimpleFilterEvaluator to avoid re-compiling by @evenyag in #5919
  • perf: optimize fulltext zh tokenizer for ascii-only text by @zhongzc in #5975

πŸ§ͺ Testing​

βš™οΈ Miscellaneous Tasks​

Build​

New Contributors​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@AntiTopQuark, @CookiePieWw, @MichaelScofield, @Pikady, @SNC123, @Wenbin1002, @WenyXu, @ZonaHex, @daviderli614, @discord9, @evenyag, @fengjiachun, @fengys1996, @killme2008, @linyihai, @paomian, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @xiaoniaoyouhuajiang, @yihong0618, @zhongzc, @zyy17

v0.13.2

Β· One min read

Release date: April 08, 2025

πŸš€ Features​

  • feat: introduce poison mechanism for procedure by @WenyXu in #5822

πŸ› Bug Fixes​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@CookiePieWw, @MichaelScofield, @Pikady, @SNC123, @Wenbin1002, @WenyXu, @discord9, @evenyag, @fengys1996, @killme2008, @paomian, @shuiyisong, @soisyourface, @sunng87, @v0y4g3r, @waynexia, @yihong0618, @zhongzc, @zyy17

v0.13.0

Β· 5 min read

Release date: March 14, 2025

πŸ‘ Highlights​

  • Introduced roaring bitmap to optimize sparse value scenarios
  • Added support for IP-related functions
  • Enhanced PromQL with support for quantile and count_values functions
  • Added support for exporting data to S3

Breaking changes​

πŸš€ Features​

πŸ› Fixes​

🚜 Refactor​

πŸ“š Documentation​

⚑ Performance​

βš™οΈ Miscellaneous Tasks​

CI​

Build​

New Contributors​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@AntiTopQuark, @CookiePieWw, @MichaelScofield, @WenyXu, @ZonaHex, @daviderli614, @discord9, @evenyag, @fengjiachun, @killme2008, @linyihai, @paomian, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @xiaoniaoyouhuajiang, @yihong0618, @zhongzc

Full Changelog: https://github.com/GreptimeTeam/greptimedb/compare/v0.12.0...v0.13.0

v0.12.0

Β· 9 min read

Release date: February 27, 2025

πŸ‘ Highlights​

  • Added PromQL subquery support, series count metrics, and new functions like sort and sort_desc.
  • Introduced Jaeger Query API
  • Improved performance for last_non_null (10x faster) merge mode.
  • Optimized metric table creation, deletion and alteration speeds (100x faster).
  • Introduced new functions like vec_add, hll_state, and uddsketch for advanced analytics.
  • Fixed PromQL-related issues, including unescaped matcher values and incorrect behavior for non-existent columns.

Breaking changes​

πŸš€ Features​

  • feat: Address different Metrics for Prometheus queries in the Dashboard and fix typo in metric name by @Stephan3555 in #5441
  • feat(metric-engine): support to write rows with sparse primary key encoding by @WenyXu in #5424
  • feat: add CORS headers for http interfaces by @sunng87 in #5447
  • feat: mirror insert request to flownode in async by @waynexia in #5444
  • feat: expose http endpoint for flownode and metasrv by @waynexia in #5437
  • feat: provide options to disable or customize http cross-origin settings by @sunng87 in #5450
  • feat(cli): add proxy options by @discord9 in #5459
  • feat: add vec_add function by @zhongzc in #5471
  • feat: write memtable in parallel by @waynexia in #5456
  • feat: update topic-region map when create and drop table by @CookiePieWw in #5423
  • feat: move pipelines to the first-class endpoint by @waynexia in #5480
  • feat: pipeline dispatcher part 2: execution by @sunng87 in #5409
  • feat: add metadata method to puffin reader by @zhongzc in #5501
  • feat: update dashboard to v0.7.9 by @ZonaHex in #5508
  • feat: change puffin stager eviction policy by @zhongzc in #5511
  • feat: update dashboard to v0.7.10-rc by @ZonaHex in #5512
  • feat: support server-side keep-alive for mysql and pg protocols by @waynexia in #5496
  • feat: implement Jaeger query APIs by @zyy17 in #5452
  • feat: alias database matcher for promql by @sunng87 in #5522
  • feat: speed up read/write cache and stager eviction by @evenyag in #5531
  • feat: window sort supports where on fields and time index by @evenyag in #5527
  • feat: add stager nofitier to collect metrics by @zhongzc in #5530
  • feat(promql): add series count metrics by @waynexia in #5534
  • feat: add snapshot seqs field to query context by @discord9 in #5477
  • feat: drop noneffective regex filter by @waynexia in #5544
  • feat(log-query): support specifying exclusive/inclusive for between filter by @waynexia in #5546
  • feat: collect stager metrics by @evenyag in #5553
  • feat: update dashboard to v0.7.10 by @ZonaHex in #5562
  • feat: allow purging a given puffin file in staging area by @zhongzc in #5558
  • feat(promql): supports sort, sort_desc etc. functions by @killme2008 in #5542
  • feat(log-query): implement the first part of log query expr by @waynexia in #5548
  • feat: submit node's cpu cores number to metasrv in heartbeat by @MichaelScofield in #5571
  • feat: flow type on creating procedure by @fengjiachun in #5572
  • feat: remap flow route address by @fengjiachun in #5565
  • feat: enable gzip for prometheus query handlers and ignore NaN values in prometheus response by @WenyXu in #5576
  • feat: implement uddsketch function to calculate percentile by @waynexia in #5574
  • feat: support UNNEST by @waynexia in #5580
  • feat: support to generate json output for explain analyze in http api by @waynexia in #5567
  • feat: run sqlness in parallel by @waynexia in #5499
  • feat: unify puffin name passed to stager by @zhongzc in #5564
  • feat: remove default inverted index for physical table by @waynexia in #5583
  • feat: impl hll_state, hll_merge and hll_calc for incremental distinct counting by @waynexia in #5579
  • feat: update dashboard to v0.7.11 by @ZonaHex in #5597
  • feat(promql): ignore invalid input in histogram plan by @waynexia in #5607
  • feat(promql): implement subquery by @waynexia in #5606
  • feat: introduce prom_round fn by @WenyXu in #5604
  • feat(promql-planner): introduce vector matching binary operation by @WenyXu in #5578

πŸ› Bug Fixes​

  • fix: unexpected warning on applying bloom by @zhongzc in #5431
  • fix: arm actions test failed by @yihong0618 in #5433
  • fix: install x86-64 protoc on android dev-builder by @zyy17 in #5443
  • fix: drop unused numpy code since pyo3 rustpython do not support any more by @yihong0618 in #5442
  • fix: flush table panic when table has interval column close #3235 by @yihong0618 in #5422
  • fix: remove metric engine's internal column from promql's query by @waynexia in #5032
  • fix: better error handler for the time range close #5449 by @yihong0618 in #5453
  • fix: no need for special case since datafusion updated by @yihong0618 in #5458
  • fix: don't transform Limit in TypeConversionRule, StringNormalizationRule and DistPlannerAnalyzer by @evenyag in #5472
  • fix: introduce gc task for metadata store by @WenyXu in #5461
  • fix: lose decimal precision when using decimal type as tag by @evenyag in #5481
  • fix: Delete statement not supported in metric engine close #4649 by @yihong0618 in #5473
  • fix: unquote flow_name in create flow expr by @discord9 in #5483
  • fix: force recycle region dir after gc duration by @evenyag in #5485
  • fix: cross compiling for aarch64 targets and allow customizing page size by @v0y4g3r in #5487
  • fix: close issue #5466 by do not shortcut the drop command by @yihong0618 in #5467
  • fix: refactor pgkv using prepare_cache about 10% better by @yihong0618 in #5497
  • fix: drop useless clone and for loop second by @yihong0618 in #5507
  • fix: use fixed tonistiigi/binfmt:qemu-v7.0.0-28 image version instead of latest version to avoid segmentation fault by @zyy17 in #5516
  • fix(query_range): skip data field on errors by @WenyXu in #5520
  • fix(promql): unescape matcher values by @WenyXu in #5521
  • fix: old typo by @waynexia in #5532
  • fix(jaeger): return error when no tracing table by @zyy17 in #5539
  • fix(promql): ignore filters for non-existent labels by @WenyXu in #5519
  • fix: promql join operation won't consider time index by @waynexia in #5535
  • fix: information_schema.cluster_info be covered by the same id by @fengjiachun in #5555
  • fix: correct promql behavior on nonexistent columns by @waynexia in #5547
  • fix: window sort support alias time index by @evenyag in #5543
  • fix(promql-planner): remove le tag in ctx by @WenyXu in #5560
  • fix(promql-planner): correct AND/UNLESS operator behavior by @WenyXu in #5557
  • fix(promql-planner): update ctx field columns of OR operator by @WenyXu in #5556
  • fix: broken link in AUTHOR.md by @waynexia in #5581
  • fix: avoid run labeler job concurrently by @waynexia in #5584
  • fix: correct inverted_indexed_column_ids behavior by @WenyXu in #5586
  • fix: remove cached and uploaded files on failure by @evenyag in #5590
  • fix: update show create table output for fulltext index by @evenyag in #5591
  • fix: all heartbeat channel need to check leader by @fengjiachun in #5593
  • fix(metasrv): reject ddl when metasrv is follower by @v0y4g3r in #5599
  • fix(prom): preserve the order of series in PromQueryResult by @WenyXu in #5601
  • fix: flow heartbeat retry by @discord9 in #5600
  • fix(metasrv): clean expired nodes in memory by @v0y4g3r in #5592

🚜 Refactor​

  • refactor(mito): Allow creating multiple files in ParquetWriter by @v0y4g3r in #5291
  • refactor: pull column filling logic out of mito worker loop by @waynexia in #5455
  • refactor: otlp logs insertion by @shuiyisong in #5479
  • refactor: change traversal order during index construction by @zhongzc in #5498
  • refactor: refactor region server request handling by @WenyXu in #5504
  • refactor: refactor pg kvbackend impl in preparation for other rds kvbackend by @CookiePieWw in #5494
  • refactor: use global type alias for pipeline input by @sunng87 in #5568

πŸ“š Documentation​

⚑ Performance​

  • perf: optimize writing non-null primitive value by @waynexia in #5460
  • perf: optimize time series memtable ingestion by @waynexia in #5451
  • perf: better performance for LastNonNullIter close #5229 about 10x times faster by @yihong0618 in #5518
  • perf: optimize table creation speed in metric engine by @WenyXu in #5503
  • perf: optimize table alteration speed in metric engine by @WenyXu in #5526
  • perf: close issue 4974 by do not delete columns when drop logical region about 100 times faster by @yihong0618 in #5561

βš™οΈ Miscellaneous Tasks​

Build​

New Contributors​

All Contributors​

We would like to thank the following contributors from the GreptimeDB community:

@CookiePieWw, @MichaelScofield, @Stephan3555, @WenyXu, @ZonaHex, @beryl678, @daviderli614, @discord9, @evenyag, @fengjiachun, @killme2008, @ozewr, @paomian, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @yihong0618, @zhongzc, @zyy17