Releases: GreptimeTeam/greptimedb
Release v0.15.0
Release date: July 04, 2025
It is recommended to upgrade to v0.15.2
👍 Highlights
-
Process Management: Implements complete process management system with
ProcessManager,
information_schema.process_listtable, process killing functionality, and MySQL client
Ctrl+Csupport for query termination (#5865, #6309, #6320). -
Bulk Insert Performance: Introducing
SimpleBulkMemtablefor 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).
Dashboard
- Supports trace view
- Supports writing logs in the ingest panel
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
- feat: introduce
RegionStatAwareSelectortrait by @WenyXu in #5990 - feat: uddsketch_merge udaf by @discord9 in #5992
- feat: remove own greatest fn by @killme2008 in #5994
- feat: flush leader region before downgrading by @WenyXu in #5995
- feat: implement batch region opening in metric engine by @WenyXu in #6017
- feat: enhance maintenance mode API and handling by @WenyXu in #6022
- feat: optimize region migration concurrency with fine-grained table lock by @WenyXu in #6023
- feat(pipeline): auto transform by @shuiyisong in #6013
- feat: cast strings to numerics automatically in mysql connections by @evenyag in #6015
- feat(meta): enhance region lease handling with operating status by @WenyXu in #6027
- feat: bridge bulk insert by @v0y4g3r in #5927
- feat(pipeline): select processor by @shuiyisong in #6019
- feat: flow add static user/pwd auth by @discord9 in #6048
- feat: try cast timestamp types from number string by @waynexia in #6060
- feat: scan with sst minimal sequence by @MichaelScofield in #6051
- feat: update pgwire to 0.29 by @sunng87 in #6058
- feat: impl bulk memtable and bridge bulk inserts by @v0y4g3r in #6054
- feat: set read-preference for grpc client by @MichaelScofield in #6069
- feat: mem prof can gen flamegraph directly by @discord9 in #6073
- feat: add datanode workloads support by @WenyXu in #6055
- feat: implement PlainBatch struct by @evenyag in #6079
- feat(meta): add pusher deregister signal to mailbox receiver by @WenyXu in #6072
- feat: implement commutativity rule for prom-related plans by @waynexia in #5875
- feat(bulk): write to multiple time partitions by @v0y4g3r in #6086
- feat: don't hide atomic write dir by @waynexia in #6109
- feat: New scanner
SeriesScanto scan by series for querying metrics by @evenyag in #5968 - feat: export to s3 add more options by @discord9 in #6091
- feat: Prometheus remote write with pipeline by @shuiyisong in #5981
- feat: implement clamp_min and clamp_max by @waynexia in #6116
- feat: introduce index result cache by @zhongzc in #6110
- feat: accommodate default column name with pre-created table schema by @waynexia in #6126
- feat: update dashboard to v0.9.1 by @ZonaHex in #6132
- feat: support altering multiple logical table in one remote write request by @waynexia in #6137
- feat: update dashboard to v0.9.2 by @ZonaHex in #6140
- feat(flow): support prom ql(in tql) in flow by @discord9 in #6063
- feat: add CLI tool to export metadata by @paomian in #6150
- feat: support parsing trigger create sql by @fengys1996 in #6197
- feat: supports @@session.time_zone for mysql by @killme2008 in #6210
- feat(wal): support bulk wal entries by @v0y4g3r in #6178
- feat(http): lossy string validation in prom remote write by @v0y4g3r in #6213
- feat: update pgwire to 0.30 by @sunng87 in #6209
- feat: support SQL parsing for trigger show by @fengys1996 in #6217
- feat: supports select @@session.time_zone by @killme2008 in #6212
- feat: bloom filter index applier support or eq chain by @zhongzc in #6227
- feat: pipeline with insert options by @shuiyisong in #6192
- feat: add trigger ddl manager by @fengys1996 in #6228
- feat(flow): flow streaming mode in list expr support by @discord9 in #6229
- feat: don't allow creating logical table with partitions by @waynexia in #6249
- feat(pipeline): vrl processor by @shuiyisong in #6205
- feat: add the gauge to indicate the CPU and Memory limit in the cgroups envrionment by @zyy17 in #6238
- feat: Support export cli export to OSS by @zqr10159 in #6225
- feat: add some metasrv metrics to grafana dashboard by @WenyXu in [#6264](https://github.c...
Release v0.16.0-nightly-20250630
What's Changed
- refactor: add
otlp_export_protocolconfig to support export trace data through gRPC and HTTP protocol by @zyy17 in #6357 - feat: Support ListMetadataRequest to retrieve regions' metadata by @evenyag in #6348
- refactor: always write
parent_span_idfor otlp traces ingestion by @zyy17 in #6356 - feat: support mysql flavor show processlist shortcut (#6328) by @codephage2020 in #6379
- feat: implement automatic region failure detector registrations by @WenyXu in #6370
- refactor: scan
Batches directly by @MichaelScofield in #6369 - refactor: remove staled manifest structures by @waynexia in #6382
- chore: clarify default OTLP endpoint value by @daviderli614 in #6381
- feat: support syntax parsing of drop trigger by @fengys1996 in #6371
- feat: supports CsvWithNames and CsvWithNamesAndTypes formats by @killme2008 in #6384
- refactor: avoid adding feature to parameter by @fengys1996 in #6391
- feat: implement count_hash aggr function by @waynexia in #6342
- chore: add components for standalone instance by @fengys1996 in #6383
- feat: introduce /v1/health for healthcheck from external by @sunng87 in #6388
- feat: update dashboard to v0.10.1 by @ZonaHex in #6396
- refactor(object-store): move backends building functions back to object-store by @v0y4g3r in #6400
- fix(http): apply string validation mode to pipeline processor by @v0y4g3r in #6378
- test: add a test load configuration example for flownode by @daviderli614 in #6397
- fix: sqlness_test show_processList by @codephage2020 in #6401
- feat: implement pause/resume functionality for procedure manager by @WenyXu in #6393
- fix: doc issue assignee by @nicecui in #6406
- feat: remove own pow fn by @codephage2020 in #6404
- ci: try to fix the job permissions by @daviderli614 in #6407
- refactor: rename test show_processList to show_process_list by @evenyag in #6408
- refactor: move
#[allow(clippy::print_stdout)]to lib level by @WenyXu in #6398 - feat: override logical table's partition key indices by @fengjiachun in #6385
- feat:
Colliderfor playing withPartitionRuleby @waynexia in #6399 - fix: complete partial index search results in cache by @zhongzc in #6403
- chore: correct typo in configuration by @WenyXu in #6411
- fix: skip failing nodes when gathering porcess info by @v0y4g3r in #6412
- refactor: pass pipeline name through http header and get db from query context by @zyy17 in #6405
- feat(pipeline): support Loki API by @shuiyisong in #6390
- feat: add trigger-related error code by @fengys1996 in #6419
- fix: add cfg for DecodeSqlValue error by @fengys1996 in #6420
- chore: bump version to 0.16 by @evenyag in #6417
New Contributors
- @codephage2020 made their first contribution in #6379
Full Changelog: v0.15.0-nightly-20250623...v0.16.0-nightly-20250630
Release v0.15.0-nightly-20250623
What's Changed
- fix: handle corner case in catchup where compacted entry id exceeds region last entry id by @WenyXu in #6312
- feat: bulk support flow batch by @v0y4g3r in #6291
- fix: ignore missing columns and tables in PromQL by @evenyag in #6285
- feat: support arbitrary constant expression in PromQL function by @waynexia in #6315
- ci: add pr label workflow by @daviderli614 in #6316
- feat: support special labels parsing in prom remote write by @shuiyisong in #6302
- feat: handle
Ctrl-Ccommand in MySQL client by @v0y4g3r in #6320 - refactor: make flownode gRPC services able to be added dynamically by @fengys1996 in #6323
- chore: add skip error for pipeline skip error log by @paomian in #6318
- fix: override logical table's partition column with physical table's by @waynexia in #6326
- chore: clean up unused impl &standalone use mark dirty by @discord9 in #6331
- feat: Add
DROP DEFAULTby @linyihai in #6290 - fix: carry process id in query ctx by @v0y4g3r in #6335
- fix: revert string builder initial capacity in
TimeSeriesMemtableby @v0y4g3r in #6330 - feat: introduce CLI tool for repairing logical table metadata by @WenyXu in #6322
- feat: support setting FORMAT in TQL ANALYZE/VERBOSE by @waynexia in #6327
- 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 - chore: add metrics for active series and field builders by @v0y4g3r in #6332
- fix: add path exist check in copy_table_from (#6182) by @Arshdeep54 in #6300
- refactor: make finding leader in metasrv client dynamic by @MichaelScofield in #6343
- chore: print series count after wal replay by @v0y4g3r in #6344
- chore(deps): switch greptime-proto to official repository by @fengys1996 in #6347
- fix: reordered write cause incorrect kv by @v0y4g3r in #6345
- fix(metric-engine): properly propagate errors during batch open operation by @WenyXu in #6325
- chore: security updates by @sunng87 in #6351
- feat(cli): add metadata del commands by @WenyXu in #6339
- feat: support execute sql in frontend_client by @fengys1996 in #6355
- fix(meta): enhance mysql election client with timeouts and reconnection by @WenyXu in #6341
- refactor: make metadata region option opt-in by @sunng87 in #6350
- refactor: make scanner creation async by @MichaelScofield in #6349
- feat: dist auto step aggr pushdown by @discord9 in #6268
- feat(storage): Add skip_ssl_validation option for object storage HTTP client by @rgidda in #6358
- docs: added YouTube link to documentation by @Olexandr88 in #6362
- refactor(cli): simplify metadata command parameters by @WenyXu in #6364
- chore: prints a warning when skip_ssl_validation is true by @evenyag in #6367
- fix: test test_tls_file_change_watch by @killme2008 in #6366
- feat: update dashboard to v0.10.0 by @ZonaHex in #6368
- feat(pipeline): introduce pipeline doc version 2 for combine-transform by @shuiyisong in #6360
New Contributors
- @Arshdeep54 made their first contribution in #6300
- @rgidda made their first contribution in #6358
- @Olexandr88 made their first contribution in #6362
Full Changelog: v0.15.0-nightly-20250616...v0.15.0-nightly-20250623
Release v0.12.1
Release v0.15.0-nightly-20250616
What's Changed
- refactor: respect
data_homeas root data home directory by @zyy17 in #6050 - feat: add some metasrv metrics to grafana dashboard by @WenyXu in #6264
- feat: disable compression for
do_getAPI by @v0y4g3r in #6254 - ci: refactor bump downstream versions worflow and adds demo-scene by @killme2008 in #6171
- refactor: support to get trace id with time range by @zyy17 in #6236
- fix: export metrics settings in sample config by @killme2008 in #6170
- chore: improve CI debugging and resource configuration by @WenyXu in #6274
- fix(meta): enhance postgres election client with timeouts and reconnection by @WenyXu in #6276
- feat: refactor grpc options of metasrv by @fengjiachun in #6275
- refactor: unify function registry (Part 1) by @zhongzc in #6262
- fix: null value handling on PromQL's join by @waynexia in #6289
- ci: add signature information when updating downstream repository by @daviderli614 in #6282
- refactor(cli)!: reorganize cli subcommands by @paomian in #6265
- chore: add option for arrow flight compression mode by @v0y4g3r in #6283
- fix: config docs by @v0y4g3r in #6294
- chore: silence clippy by @discord9 in #6298
- feat(cli): add metadata get commands by @WenyXu in #6299
- refactor: remove
PipelineMapand useValueinstead by @shuiyisong in #6278 - chore: add failover cache for pipeline table by @paomian in #6284
- ci: use the new meta backendStorage etcd structure by @daviderli614 in #6303
- fix: doc links by @nicecui in #6304
- feat: implement process manager and information_schema.process_list by @v0y4g3r in #5865
- feat: support using expressions as literal in PromQL by @waynexia in #6297
- feat: introduce file group in compaction by @v0y4g3r in #6261
- feat: organize EXPLAIN ANALYZE VERBOSE's output in JSON format by @waynexia in #6308
- feat: parallelism hint in grpc by @discord9 in #6306
- fix: check for zero parallelism by @discord9 in #6310
- feat: process id for session, query context and postgres by @sunng87 in #6301
- feat: update dashboard to v0.9.3 by @ZonaHex in #6311
- refactor: Extract mito codec part into a new crate by @evenyag in #6307
- fix: always use linux path style in windows platform unit tests by @zyy17 in #6314
- feat: support killing process by @v0y4g3r in #6309
- chore: add connection info to
QueryContextby @v0y4g3r in #6319 - fix: event api content type only check type and subtype by @paomian in #6317
Full Changelog: v0.15.0-nightly-20250609...v0.15.0-nightly-20250616
Release v0.15.0-nightly-20250609
What's Changed
- feat: supports select @@session.time_zone by @killme2008 in #6212
- docs: fix bad link by @daviderli614 in #6222
- chore: add some metrics to grafana dashboard by @v0y4g3r in #6169
- chore: add pg mysql be default feature in cli by @paomian in #6230
- feat: bloom filter index applier support or eq chain by @zhongzc in #6227
- fix(mito): revert initial builder capacity for TimeSeriesMemtable by @v0y4g3r in #6231
- 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
- feat: pipeline with insert options by @shuiyisong in #6192
- fix: do not accommodate fields for multi-value protocol by @evenyag in #6237
- ci: add option to choose whether upload artifacts to S3 in the development build by @daviderli614 in #6232
- feat: add trigger ddl manager by @fengys1996 in #6228
- fix: add missing features by @MichaelScofield in #6245
- feat(flow): flow streaming mode in list expr support by @discord9 in #6229
- chore: test sleep longer by @discord9 in #6247
- fix: add "query" options to standalone by @MichaelScofield in #6248
- fix: ignore incomplete WAL entries during read by @WenyXu in #6251
- chore: allow numberic values in alter statements by @v0y4g3r in #6252
- chore: pub flow info by @discord9 in #6253
- feat: don't allow creating logical table with partitions by @waynexia in #6249
- fix: convert JSON type to JSON string in COPY TABLE TO statment by @WenyXu in #6255
- fix: skip wal replay when opening follower regions by @WenyXu in #6234
- ci: increase upload s3 retry times by @daviderli614 in #6263
- feat(pipeline): vrl processor by @shuiyisong in #6205
- chore: support table suffix in hint by @shuiyisong in #6223
- feat: add the gauge to indicate the CPU and Memory limit in the cgroups envrionment by @zyy17 in #6238
- feat: Support export cli export to OSS by @zqr10159 in #6225
- fix(mito): use 1day as default time partition duration by @v0y4g3r in #6202
New Contributors
Full Changelog: v0.15.0-nightly-20250602...v0.15.0-nightly-20250609
Release v0.14.4
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
- chore: upgrade hydroflow depend by @discord9 in #6011
- chore: rm unnecessary depend for flow by @discord9 in #6047
- chore: bump version to 0.14.4 by @zhongzc in #6246
All Contributors
We would like to thank the following contributors from the GreptimeDB community:
Release v0.15.0-nightly-20250602
What's Changed
- 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
- refactor: replace FlightMessage with arrow
RecordBatchandSchemaby @v0y4g3r in #6175 - chore: change info to debug for scanning physical table by @killme2008 in #6180
- fix(promql): handle field column projection with correct qualifier by @WenyXu in #6183
- fix: alter table update table column default by @discord9 in #6155
- feat: add CLI tool to export metadata by @paomian in #6150
- docs: nit from github -> GitHub by @yihong0618 in #6199
- chore: correct some CAS ordering args by @fengjiachun in #6200
- chore: add metrics for rds kv backend by @paomian in #6201
- chore: switch nix index to 25.05 release by @sunng87 in #6181
- fix: remove poison key before retrying procedure on retryable errors by @WenyXu in #6189
- chore: fix feature gates for pg and mysql kvbackend by @WenyXu in #6211
- feat: support parsing trigger create sql by @fengys1996 in #6197
- feat: supports @@session.time_zone for mysql by @killme2008 in #6210
- feat(wal): support bulk wal entries by @v0y4g3r in #6178
- chore: fix rds kv backend test by @paomian in #6214
- feat(http): lossy string validation in prom remote write by @v0y4g3r in #6213
- feat: update pgwire to 0.30 by @sunng87 in #6209
- feat: support SQL parsing for trigger show by @fengys1996 in #6217
- chore: example of http config in metasrv by @fengjiachun in #6218
- chore: clear metadata filed after updating metadata by @fengjiachun in #6215
- chore: shared pipeline under same catalog with compatibility by @shuiyisong in #6143
- fix: remove stale region failover detectors by @WenyXu in #6221
Full Changelog: v0.15.0-nightly-20250526...v0.15.0-nightly-20250602
Release v0.15.0-nightly-20250526
What's Changed
- feat: Prometheus remote write with pipeline by @shuiyisong in #5981
- fix: flow update use proper update by @discord9 in #6108
- ci: fix release job dependencies by @sunng87 in #6125
- chore: remove etcd from acknowledgement as not recommended by @waynexia in #6127
- feat: implement clamp_min and clamp_max by @waynexia in #6116
- feat: introduce index result cache by @zhongzc in #6110
- chore: Add more data format support to the pipeline dryrun api. by @paomian in #6115
- ci: add pull requests permissions to semantic check job by @evenyag in #6130
- chore: enable github folder typo check and fix typos by @yinheli in #6128
- chore: update toolchain to 2025-05-19 by @shuiyisong in #6124
- feat: accommodate default column name with pre-created table schema by @waynexia in #6126
- chore: reduce unnecessary txns in alter operations by @fengjiachun in #6133
- fix: update dev-build image tag by @daviderli614 in #6136
- feat: update dashboard to v0.9.1 by @ZonaHex in #6132
- feat: support altering multiple logical table in one remote write request by @waynexia in #6137
- chore: update flush failure metric name and update grafana dashboard by @v0y4g3r in #6138
- feat: update dashboard to v0.9.2 by @ZonaHex in #6140
- chore: remove stale wal config entries by @waynexia in #6134
- docs: change docker run mount directory by @daviderli614 in #6142
- fix: flaky prom gateway test by @v0y4g3r in #6146
- fix: region worker stall metrics by @v0y4g3r in #6149
- ci: add issues write permission by @daviderli614 in #6145
- feat(flow): support prom ql(in tql) in flow by @discord9 in #6063
- 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
- chore: add the missing
vprefix forNEXT_RELEASE_VERSIONvariable by @zyy17 in #6160 - ci: turn off fail fast strategy by @waynexia in #6157
- feat!: revise compaction picker by @v0y4g3r in #6121
- fix: invalid table flow mapping cache by @discord9 in #6135
- perf: optimize bulk encode decode by @v0y4g3r in #6161
- chore: metasrv starting not blocking by @discord9 in #6158
- fix: bulk insert case sensitive by @v0y4g3r in #6165
New Contributors
Full Changelog: 0.15.0-nightly-20250519...v0.15.0-nightly-20250526
Release v0.14.3
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¬ 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
- chore: reduce unnecessary txns in alter operations by @fengjiachun in #6133
- chore: invalid table flow mapping cache by @discord9 in #6135
- chore: bump version to 0.14.3 by @zhongzc in #6168
All Contributors
We would like to thank the following contributors from the GreptimeDB community:
@WenyXu, @discord9, @evenyag, @fengjiachun, @sunng87, @waynexia, @zhongzc