跳到主要内容

v0.9.3

· 阅读需 6 分钟

Release date: September 06, 2024

Highlights

  • fixes the following issues
    • last_value function may return empty results due to cache #4652
    • query timestamp column in append mode misses some data #4669
    • crash while query tables with last_non_null merge mode #4687

Breaking changes

🚀 Features

🐛 Bug Fixes

🚜 Refactor

📚 Documentation

⚡ Performance

⚙️ Miscellaneous Tasks

Build

New Contributors

All Contributors

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

@MichaelScofield, @WenyXu, @daviderli614, @discord9, @evenyag, @fengjiachun, @fengys1996, @killme2008, @leaf-potato, @lyang24, @ozewr, @paomian, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @zyy17

v0.9.2

· 阅读需 4 分钟

Release date: August 19, 2024

👍 Highlights

  • #4545: Improve the performance of count(*) for append-only tables.
  • #4552: Allow more than one segment for full-text index to handle a large number of rows.

🚀 Features

🐛 Bug Fixes

🚜 Refactor

  • refactor: reuse aligned ts array in range manipulate exec by @waynexia in #4535
  • refactor(plugin): add SetupPlugin and StartPlugin error by @zyy17 in #4554

📚 Documentation

⚡ Performance

  • perf: merge small byte ranges for optimized fetching by @WenyXu in #4520
  • perf: count(*) for append-only tables by @v0y4g3r in #4545
  • perf: Optimizing pipeline performance by @paomian in #4390

🧪 Testing

⚙️ Miscellaneous Tasks

Build

All Contributors

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

@J0HN50N133, @MichaelScofield, @WenyXu, @daviderli614, @discord9, @evenyag, @fengjiachun, @leaf-potato, @lyang24, @paomian, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @zhongzc, @zyy17

v0.9.1

· 阅读需 5 分钟

Release date: August 02, 2024

This is a patch release, containing some important bug fixes:

  • #4447: Full-text search may miss some rows when a full-text index is applied.
  • #4476: Data ingestion can stall due to missing notifications.

It's highly recommended to upgrade to this version if you're using v0.9.0.

Breaking changes

  • refactor!: Remove Mode from FrontendOptions by @zyy17 in #4401

🚀 Features

🐛 Bug Fixes

  • fix: ensure keep alive is completed in time by @WenyXu in #4349
  • fix: user provider can't be configured by config file or environment variables by @zyy17 in #4398
  • fix: dictionary key type use u32 by @evenyag in #4396
  • fix(wal): handle WAL deletion on region drop by @v0y4g3r in #4400
  • fix: add back AuthBackend which is required by custom auth backend by @sunng87 in #4409
  • fix(fulltext-index): clean up 0-value timer by @zhongzc in #4423
  • fix(metrics): RowGroupLastRowCachedReader metrics by @v0y4g3r in #4418
  • fix: information_schema tables and views column value by @killme2008 in #4438
  • fix: remove to_timezone function by @killme2008 in #4439
  • fix: use heartbeat runtime instead of background runtime by @WenyXu in #4445
  • fix(fulltext-search): prune rows in row group forget to take remainder by @zhongzc in #4447
  • fix: use status code to http status mapping in error IntoResponse by @shuiyisong in #4455
  • fix: missing pre_write check on prometheus remote write by @shuiyisong in #4460
  • fix: check_partition uses unqualified name by @waynexia in #4452
  • fix: overflow when parsing default value with negative numbers by @killme2008 in #4459
  • fix: prometheus api only returns 200 by @shuiyisong in #4471
  • fix: generate unique timestamp for inserting tests by @WenyXu in #4472
  • fix: notify flush receiver after write buffer is released by @evenyag in #4476
  • fix: avoid total size overflow by @evenyag in #4487

🚜 Refactor

  • refactor: add &mut Plugins argument in plugins setup api and remove unnecessary mut by @zyy17 in #4389
  • refactor: add get_storage_path() and get_catalog_and_schema() by @zyy17 in #4397
  • refactor(query): Remove PhysicalPlanner trait by @leaf-potato in #4412
  • refactor: Remove PhysicalOptimizer and LogicalOptimizer trait by @leaf-potato in #4426
  • refactor: add RetryInterceptor to print detailed error by @zyy17 in #4434
  • refactor(servers): improve postgres error message by @leaf-potato in #4463

📚 Documentation

⚡ Performance

⚙️ Miscellaneous Tasks

New Contributors

All Contributors

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

@J0HN50N133, @MichaelScofield, @WenyXu, @ZonaHex, @discord9, @evenyag, @fengjiachun, @killme2008, @leaf-potato, @realtaobo, @shuiyisong, @sunng87, @v0y4g3r, @waynexia, @zhongzc, @zyy17

v0.9.0

· 阅读需 11 分钟

Release date: July 16, 2024

👍 Highlights

  • Log Engine: GreptimeDB is now a unified time-series database for both metrics, logs, and events (trace in plan).
  • Remote WAL is significantly improved and is now recommended to turn on.
  • Table View: You can now CREATE VIEW on tables and treat them as logical table.
  • Short interval literal for user experience.
  • InfluxDB Merge Read: You can now use the merge_mode=last_non_null table option to allow SELECT result merges all the last non-null fields.
  • gRPC TLS: You can now set up the grpc.tls config to turn on TLS for gRPC connection.
  • Manually Compact in Strict Window: You can now use SELECT COMPACT_TABLE("monitor", "strict_window", "3600"); to manually schedule a compaction task, splitting SST files strictly into time windows. The third option is the time window's width in seconds.

Breaking changes

  • refactor!: unify FrontendOptions and DatanodeOptions by using GrpcOptions by @realtaobo in #4088
  • feat!: reduce sorted runs during compaction by @v0y4g3r in #3702
  • fix!: forbid to change information_schema by @CookiePieWw in #4233
  • feat!: remove alias metasrv-addr by @discord9 in #4239
  • feat!: Set merge mode while creating table in influx handler by @evenyag in #4299

🚀 Features

🐛 Bug Fixes

  • fix(sqlness): catch different format timestamp by @WenyXu in #4149
  • fix: region logical regions after catching up by @WenyXu in #4176
  • fix(flow): fix call df func bug&sqlness test by @discord9 in #4165
  • fix: region_peers returns same region_id for multi logical tables by @realtaobo in #4190
  • fix(sql): improve compound signed number processing by @etolbakov in #4200
  • fix: align workflows again for the troublesome GHA by @waynexia in #4196
  • fix: format error correctly by @WenyXu in #4204
  • fix: wrong frontend registration address by @killme2008 in #4199
  • fix: add serialize_ignore_column_ids() to fix deserialize region options failed from json string by @zyy17 in #4229
  • fix(puffin): fix dependency by @v0y4g3r in #4267
  • fix(fuzz): generate valid string by @WenyXu in #4281
  • fix: enhance ColumnOption::DefaultValue formatting for string values by @WenyXu in #4287
  • fix: enable space string in yaml value by @shuiyisong in #4286
  • fix: align pre-commit config with make file by @shuiyisong in #4292
  • fix: call df_func with literal by @discord9 in #4265
  • fix: prepare inserting with column defaults not work, #4244 by @killme2008 in #4272
  • fix: deregister failure detector in region migration by @WenyXu in #4293
  • fix(ci): remove sqlness state in success by @waynexia in #4313
  • fix: test_fulltext_intm_path by @zhongzc in #4314
  • fix: error on show databases in non-default catalog by @sunng87 in #4316
  • fix: panic while reading information_schema. KEY_COLUMN_USAGE by @killme2008 in #4318
  • fix: support unary operator in default value, partition rule and prepare statement by @waynexia in #4301
  • fix(sqlness): relax start time regex to match various precisions by @waynexia in #4326
  • fix: permission denied is 403 by @sunng87 in #4350
  • fix(config): enable file engine by default by @WenyXu in #4345
  • fix: build info should use build time env var by @tisonkun in #4343
  • fix: remove path label for cache store by @sunng87 in #4336
  • fix: scan hint checks order asc by @evenyag in #4365

🚜 Refactor

  • refactor: add Compactor trait to abstract the compaction by @zyy17 in #4097
  • refactor: make region manifest checkpoint ran in background by @MichaelScofield in #4133
  • refactor: Decouple dedup and merge by @evenyag in #4139
  • refactor: make RegionOptions and MergeOutput serializable by @zyy17 in #4180
  • refactor: add region_dir in CompactionRegion by @zyy17 in #4187
  • refactor: migrate region failover implementation to region migration by @WenyXu in #4172
  • refactor: add SerializedPickerOutput and field modification of CompactorRequest by @zyy17 in #4198
  • refactor(flow): make from_substrait_* async& worker handle refactor by @discord9 in #4210
  • refactor: expose DatanodeBuilder::build_object_store_manager() and MitoConfig::sanitize() by @zyy17 in #4212
  • refactor: use ObjectStoreManagerRef type in open_compaction_region() and add related unit test by @zyy17 in #4238
  • refactor: add interceptor after Influxdb lines are converted to grpc row insert by @MichaelScofield in #4225
  • refactor: add RemoteCompaction error by @zyy17 in #4251
  • refactor: change InvertedIndexWriter method signature to offsets to f… by @v0y4g3r in #4250
  • refactor(puffin): adjust generic parameters by @zhongzc in #4279
  • refactor: use rwlock for modifiable session data by @sunng87 in #4232
  • refactor(inverted_index): integrate puffin manager with sst indexer by @zhongzc in #4285
  • refactor: split match arms in prom_expr_to_plan into smaller methods by @waynexia in #4317
  • refactor: do not print error log on PlanQuery error by @sunng87 in #4322
  • refactor: Remove the StandaloneKafkaConfig struct by @irenjj in #4253
  • refactor: LastRowReader to use LastRowSelector by @v0y4g3r in #4374

📚 Documentation

⚡ Performance

🧪 Testing

⚙️ Miscellaneous Tasks

◀️ Revert

Build

All Contributors

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

@CookiePieWw, @J0HN50N133, @MichaelScofield, @WenyXu, @ZonaHex, @discord9, @etolbakov, @evenyag, @fengjiachun, @irenjj, @killme2008, @lyang24, @paomian, @realtaobo, @shuiyisong, @sunng87, @tisonkun, @v0y4g3r, @waynexia, @yuanbohan, @zhongzc, @zyy17

v0.8.2

· 阅读需 4 分钟

Release date: June 14, 2024

🚀 Features

🐛 Bug Fixes

🚜 Refactor

⚙️ Miscellaneous Tasks

New Contributors

All Contributors

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

@MichaelScofield, @WenyXu, @cjwcommuny, @discord9, @evenyag, @irenjj, @sunng87, @v0y4g3r

v0.9.0-b03cb3860-20240606-1717661661

Release date: June 06, 2024

Breaking changes

  • refactor!: remove the tableid in ddl response since tableids is enough by @fengjiachun in #4080

🚀 Features

🐛 Bug Fixes

🚜 Refactor

🧪 Testing

  • test: run test_flush_reopen_region and test_region_replay with KafkaLogStore by @WenyXu in #4083
  • test: add fuzz tests for column data type alteration by @realtaobo in #4076

⚙️ Miscellaneous Tasks

  • ci: cargo gc fuzz test runner by @waynexia in #4074
  • ci: try to free space after fuzz tests by @WenyXu in #4089
  • chore: enable strip for tests-fuzz crate by @WenyXu in #4093
  • ci: add 'make run-cluster-with-etcd' to run greptimedb cluster by using docker-compose by @zyy17 in #4103
  • chore(ci): remove redundant sqlness test config by @WenyXu in #4106
  • ci: cargo gc all fuzz test runner by @waynexia in #4081
  • chore: remove gc before running fuzz tests by @WenyXu in #4108
  • chore: reduce some burden on the write path by @fengjiachun in #4110

Build

New Contributors

All Contributors

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

@Kelvinyu1117, @MichaelScofield, @WenyXu, @discord9, @fengjiachun, @killme2008, @realtaobo, @sarailQAQ, @shuiyisong, @tisonkun, @v0y4g3r, @waynexia, @zyy17

v0.8.1

· 阅读需 4 分钟

Release date: May 30, 2024

This is a patch release, containing some important bug fix for flow's continuous aggregating in #4018

It's highly recommended to upgrade to this version if you're using v0.8.0.

🚀 Features

🐛 Bug Fixes

  • fix(flow): correctness bugs by @discord9 in #4018

  • fix: try to fix broken CI by @WenyXu in #3998

  • fix: move log_version() into build() of App to fix no log version on bootstrap by @zyy17 in #4004

  • fix: try to fix unstable fuzz test by @WenyXu in #4003

  • fix: can't print log because the tracing guard is dropped by @zyy17 in #4005

  • fix(fuzz): sort inserted rows with primary keys and time index by @CookiePieWw in #4008

  • fix: notifies all workers once a region is flushed by @evenyag in #4016

  • fix(fuzz-tests): avoid to drop in-use database by @WenyXu in #4049

  • fix(metric-engine): missing catchup implementation by @WenyXu in #4048

  • fix: set local or session time_zone not work by @killme2008 in #4064

  • fix: avoid acquiring lock during reading stats by @WenyXu in #4070

🚜 Refactor

  • refactor: make the command entry cleaner by @zyy17 in #3981
  • refactor: replace Expr with datafusion::Expr by @realtaobo in #3995
  • refactor: remove unused log config by @v0y4g3r in #4021
  • refactor(fuzz-tests): generate ts value separately by @WenyXu in #4056
  • refactor: move Database to client crate behind testing feature by @tisonkun in #4059
  • refactor(log_store): remove associated type Namespace and Entry in LogStore by @WenyXu in #4038

📚 Documentation

⚙️ Miscellaneous Tasks

Build

New Contributors

All Contributors

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

@CookiePieWw, @LYZJU2019, @MichaelScofield, @WenyXu, @discord9, @etolbakov, @evenyag, @fengjiachun, @irenjj, @killme2008, @realtaobo, @shuiyisong, @sunng87, @tisonkun, @v0y4g3r, @waynexia, @zyy17

v0.8.0

· 阅读需 14 分钟

Release date: May 18, 2024

👍 Highlights

  • Flow Engine: which brings continuous aggregation capabilities.
  • Column Type Modification: allows you to effortlessly alter the data type of columns within a table without the hassle of rebuilding the table or manually migrating data.
  • Cluster Management Information Table: allows querying for information about the cluster. This functionality aids administrators in monitoring and managing the health status of the database cluster, facilitating prompt issue detection and resolution.
  • Append-only Tables: You can now create tables in Append-only mode by setting the append mode during table creation.
  • DROP DATABASE: enables swift deletion of all tables and resources under a database instance.
  • EXPLAIN ANALYZE <QUERY>: analyze and optimize query statements swiftly in distributed mode.

Breaking changes

🚀 Features

🐛 Bug Fixes

  • fix(readme): fix link of Ingester-js by @DiamondMofeng in #3668
  • fix: DeserializedValueWithBytes::from_inner misusing by @WenyXu in #3676
  • fix: cli export "create table" with quoted names by @dimbtp in #3684
  • fix(alter_table): ignore request outdated error by @WenyXu in #3715
  • fix: remove ttl option from metadata region by @waynexia in #3726
  • fix: set is_time_index properly on updating physical table's schema by @waynexia in #3770
  • fix: the dropping_regions guards should be dropped on procedure done by @MichaelScofield in #3771
  • fix: operating region guards should be dropped when procedure is done by @MichaelScofield in #3775
  • fix: consider both db param and extended db header in Prometheus HTTP API by @waynexia in #3776
  • fix: do not remove deletion markers when window time range overlaps by @v0y4g3r in #3773
  • fix: promql scalar when input empty batch by @Taylor-lagrange in #3779
  • fix: post process result on query full column name of prom labels API by @waynexia in #3793
  • fix: fix fuzz test ci by @WenyXu in #3795
  • fix: prune row groups correctly for columns with the same name by @evenyag in #3802
  • fix: push down order hint of the query again by @evenyag in #3797
  • fix: wrong handler implementation of prometheus remote write by @waynexia in #3826
  • fix: broken link in contributing guide by @waynexia in #3831
  • fix: compiler warnings on Windows by @evenyag in #3844
  • fix: count_wildcard_to_time_index_rule doesn't handle table reference properly by @waynexia in #3847
  • fix: retrieve all info instead of checking on demand by @WenyXu in #3846
  • fix: register regions during procedure recovery by @WenyXu in #3859
  • fix: return metric name instead of query in Prometheus /series API by @waynexia in #3864
  • fix: add data type to vector cache key by @evenyag in #3876
  • fix: memory leak in unit test of telemetry by @waynexia in #3897
  • by @waynexia
  • fix: sort unstable HTTP result in label values query by @waynexia in #3920
  • fix: potential deadlock by @WenyXu in #3930
  • fix(metric engine): label mismatch in metric engine by @v0y4g3r in #3927
  • fix: prevent exporting metric physical table data by @WenyXu in #3970
  • fix: prevent registering logical regions with AliveKeeper by @WenyXu in #3965
  • fix: changing column data type can't process type alias by @killme2008 in #3972
  • fix: tql parser hang on abnormal input by @waynexia in #3977

🚜 Refactor

  • refactor: pass http method to metasrv http handler by @tisonkun in #3667
  • refactor(flow): func spec api&use Error not EvalError in mfp by @discord9 in #3657
  • refactor: bundle the lightweight axum test client by @tisonkun in #3669
  • refactor: refactor alter table procedure by @WenyXu in #3678
  • refactor: drop table procedure by @WenyXu in #3688
  • refactor: check error type before logging by @sunng87 in #3697
  • refactor: Move manifest manager lock to MitoRegion by @evenyag in #3689
  • refactor: use toml2docs to generate config docs by @zyy17 in #3704
  • refactor: remove redundant try_flush invocations by @tisonkun in #3706
  • refactor: merge RegionHandleResult into RegionHandleResponse by @tisonkun in #3721
  • refactor(meta): Ensure all moving values remain unchanged between two transactions by @WenyXu in #3727
  • refactor: avoid unnecessary cloning by @WenyXu in #3734
  • refactor: avoid unnecessary alloc by using unwrap_or_else by @etolbakov in #3742
  • refactor(flow): split render.rs and other minor changes by @discord9 in #3750
  • refactor: move the version string to common by @MichaelScofield in #3783
  • refactor: simplify the PaginationStream by @WenyXu in #3787
  • refactor(flow): refine comments and code by @zhongzc in #3785
  • refactor: log statement on error by Display by @tisonkun in #3803
  • refactor: refactor DatanodeManager to NodeManager by @WenyXu in #3811
  • refactor: DfUdfAdapter to bridge ScalaUdf by @tisonkun in #3814
  • refactor: remove location_opt and DebugFormat by @waynexia in #3830
  • refactor: use secrecy SerectString to hold secrets option by @tisonkun in #3804
  • refactor: rename flow task to flow by @WenyXu in #3833
  • refactor: remove catalog prefix by @WenyXu in #3835
  • refactor: remove TableMetaKey trait by @WenyXu in #3837
  • refactor: move database client to test by @dimbtp in #3820
  • refactor: remove re-export from logging by @waynexia in #3865
  • refactor: passing QueryContext to RegionServer by @Kelvinyu1117 in #3829
  • refactor: add the main cli entry point struct Command{} and simplify main() by @zyy17 in #3850
  • refactor: move Plugins to plugins.rs and use rwlock by @zyy17 in #3862
  • refactor(logstore): remove Entry::namemspace by @v0y4g3r in #3875
  • refactor: move mirror insertion tasks to the background runtime by @WenyXu in #3879
  • refactor: remove MixOptions and use StandaloneOptions only by @zyy17 in #3893
  • refactor: add procedure_loader macro by @WenyXu in #3906
  • refactor: make txn easy to use by @fengjiachun in #3905
  • refactor: Remove PhysicalPlan trait and use ExecutionPlan directly by @evenyag in #3894
  • refactor: refactor frontend cache by @WenyXu in #3912
  • refactor: rename metasrv_addr to metasrv_addrs by @fengjiachun in #3921
  • refactor: add tracing options in xOptions by @zyy17 in #3919
  • refactor: add Configurable trait by @zyy17 in #3917
  • refactor(naming): use the better naming for pubsub by @zyy17 in #3960

📚 Documentation

⚡ Performance

🧪 Testing

  • test: Add tests for KvBackend trait implement by @realtaobo in #3700
  • test: introduce unstable fuzz create table test by @WenyXu in #3788
  • test: give windows file watcher more time by @sunng87 in #3953
  • test: gracefully shutdown postgres client in sql tests by @evenyag in #3958

⚙️ Miscellaneous Tasks

Build

New Contributors

All Contributors

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

@CookiePieWw, @DiamondMofeng, @KKould, @Kelvinyu1117, @MichaelScofield, @Taylor-lagrange, @WenyXu, @ZonaHex, @dimbtp, @discord9, @etolbakov, @evenyag, @fengjiachun, @irenjj, @killme2008, @realtaobo, @shuiyisong, @sunng87, @tisonkun, @tizee, @v0y4g3r, @waynexia, @zhongzc, @zyy17

v0.7.2

· 阅读需 7 分钟

Release date: April 08, 2024

This is a patch release, containing a critial bug fix to avoid wrongly delete data files (#3635).

It's highly recommended to upgrade to this version if you're using v0.7.

Breaking changes

  • refactor!: Renames the new memtable to PartitionTreeMemtable by @evenyag in #3547
  • fix!: columns table in information_schema misses some columns by @killme2008 in #3639

🚀 Features

  • feat: Partition memtables by time if compaction window is provided by @evenyag in #3501
  • feat: acquire all locks in procedure by @WenyXu in #3514
  • feat: implement the drop database parser by @WenyXu in #3521
  • feat(mito): Checks whether a region should flush periodically by @evenyag in #3459
  • feat(metasrv): implement maintenance by @tisonkun in #3527
  • feat: update dashboard to v0.4.9 by @ZonaHex in #3531
  • feat: support per table memtable options by @evenyag in #3524
  • feat(flow): shared in-memory state for dataflow operator by @discord9 in #3508
  • feat: update pgwire to 0.20 for improved performance by @sunng87 in #3538
  • feat: support multi params in promql range function macro by @Taylor-lagrange in #3464
  • feat: support append-only mode in time-series memtable by @v0y4g3r in #3540
  • feat: Able to pretty print sql query result in http output by @YCCDSZXH in #3539
  • feat: return new added columns in region server's extension response by @waynexia in #3533
  • feat: update physical table's schema on creating logical table by @waynexia in #3570
  • feat: implement the drop database procedure by @WenyXu in #3541
  • feat: batch alter logical tables by @fengjiachun in #3569
  • feat: support time range in copy table by @v0y4g3r in #3583
  • feat: update physical table schema on alter logical tables by @fengjiachun in #3585
  • feat(auth): watch file user provider by @tisonkun in #3566
  • feat: Support printing postgresql's bytea data type in its "hex" and "escape" format by @J0HN50N133 in #3567
  • feat: Implement append mode for a region by @evenyag in #3558
  • feat: create regions persist true by @fengjiachun in #3590
  • feat: remove support for logical tables in the create table procedure by @fengjiachun in #3592
  • feat: adds metric engine to information_schema engines table by @killme2008 in #3599
  • feat: support 2+2 and /status/buildinfo by @waynexia in #3604
  • feat(tql): add initial support for start,stop,step as sql functions by @etolbakov in #3507
  • feat: Implement an unordered scanner for append mode by @evenyag in #3598
  • feat: allow cross-schema query in promql by @sunng87 in #3545
  • feat: let alter table procedure can only alter physical table by @fengjiachun in #3613
  • feat(function): add timestamp epoch integer support for to_timezone by @etolbakov in #3620
  • feat: impl show index and show columns by @killme2008 in #3577
  • feat: group requests by peer by @fengjiachun in #3619
  • feat: Support outputting various date styles for postgresql by @J0HN50N133 in #3602
  • feat: reject invalid timestamp ranges in copy statement by @v0y4g3r in #3623
  • feat(procedure): auto split large value to multiple values by @WenyXu in #3605
  • feat(procedure): enable auto split large value by @WenyXu in #3628
  • feat: introduce wal benchmarker by @niebayes in #3446
  • feat: adding victoriametrics remote write by @sunng87 in #3641
  • feat: Add timers to more mito methods by @evenyag in #3659
  • feat: cluster information by @fengjiachun in #3631
  • feat: update dashboard to v0.4.10 by @ZonaHex in #3663

🐛 Bug Fixes

  • fix: clone data instead of moving it - homemade future is dangerous by @waynexia in #3542
  • fix: performance degradation caused by config change by @v0y4g3r in #3556
  • fix(flow): Arrange get range with batch unaligned by @discord9 in #3552
  • fix: set http response chartset to utf-8 when using table format by @xxxuuu in #3571
  • fix: update pk_cache in compat reader by @waynexia in #3576
  • fix: incorrect version info in by @waynexia in #3586
  • fix: canonicalize catalog and schema names by @killme2008 in #3600
  • fix: adjust status code to http error code map by @waynexia in #3601
  • fix: run purge jobs in another scheduler by @evenyag in #3621
  • fix: mistakely removes compaction inputs on failure by @v0y4g3r in #3635
  • fix: move object store read/write timer into inner by @dimbtp in #3627
  • fix: construct correct pk list with pre-existing pk by @waynexia in #3614

🚜 Refactor

📚 Documentation

🧪 Testing

  • test: add a parameter type mismatch test case to sql integration test by @xxxuuu in #3568
  • test: add tests for drop databases by @WenyXu in #3594
  • test: add more integration test for kafka wal by @niebayes in #3190
  • test(sqlness): release databases after tests by @WenyXu in #3648

⚙️ Miscellaneous Tasks

Build

New Contributors

All Contributors

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

@CookiePieWw, @J0HN50N133, @MichaelScofield, @Taylor-lagrange, @WenyXu, @YCCDSZXH, @ZonaHex, @dimbtp, @discord9, @etolbakov, @evenyag, @fengjiachun, @killme2008, @niebayes, @shuiyisong, @sunng87, @tisonkun, @v0y4g3r, @waynexia, @xxxuuu, @zhongzc

v0.7.1

· 阅读需 3 分钟

Release date: March 14, 2024

This is a patch release, containing an important bug fix while decoding the Prometheus remote write proto https (#3505).

Future critical bug fixes were delivered at v0.7.2. It's highly recommended to upgrade to v0.7.2 if you're using v0.7.

Breaking changes

  • fix!: remove error message from http header to avoid panic by @sunng87 in #3506

Bug fixes

Improvements

Others

Contributors

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

Eugene Tolbakov, JeremyHi, LFC, Lei HUANG, Ning Sun, Ruihang Xia, WU Jingdi, Weny Xu, Yingwen, Zhenchi, ZonaHe, crwen, discord9, gcmutator, shuiyisong, tison

v0.7.0

· 阅读需 9 分钟

Release date: March 12, 2024

This is a feature release, read the release blog to learn more detail about the feature and performance updates.

v0.7 represents a crucial leap toward achieving production readiness; it implements production-ready features for cloud-native monitoring scenarios.

Highlights

  • Metric Engine: handles a large number of small tables, making it particularly suitable for cloud-native monitoring.
  • Region Migration: enhances the user experience and simplifies region migrations with straightforward SQL commands.
  • Inverted Index: dramatically improves the efficiency of locating data segments relevant to user queries, significantly reducing the IO operations needed for scanning data files and thus accelerating the query process.

Breaking changes

  • Switch prom remote write to metric engine by @waynexia in #3198
  • Rename initialize_region_in_background to init_regions_in_background by @WenyXu in #3216
  • New partition grammar in SQL parser by @waynexia in #3347

Bug fixes

Improvements

Contributors

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

Cancai Cai, Eugene Tolbakov, Hudson C. Dalprá, JeremyHi, JohnsonLee, Kould, LFC, Lei HUANG, Ning Sun, Ruihang Xia, SteveLauC, WU Jingdi, Wei, Weny Xu, Yingwen, Yiran, Zhenchi, ZonaHe, dennis zhuang, dimbtp, discord9, fys, liyang, niebayes, shuiyisong, tison