Release v1.0.0-rc.1
Release date: February 02, 2026
π Highlights
Region Repartition RC.1 introduces Region Repartition, allowing users to dynamically adjust partition rules and redistribute data at runtime, without rebuilding tables or performing manual migrations.
- Split Partitions Split a large or hotspot partition into multiple smaller ones:
ALTER TABLE sensor_readings SPLIT PARTITION (
device_id < 100
) INTO (
device_id < 100 AND area < 'South',
device_id < 100 AND area >= 'South'
);
- Merge Partitions Merge multiple small partitions into a single one:
ALTER TABLE sensor_readings MERGE PARTITION (
device_id < 100 AND area < 'South',
device_id < 100 AND area >= 'South'
);
- Execution Control with WITH Clause
Users can control procedure behavior via
WITHoptions:
ALTER TABLE sensor_readings SPLIT PARTITION (
device_id < 100
) INTO (
device_id < 100 AND area < 'South',
device_id < 100 AND area >= 'South'
) WITH (
TIMEOUT = '5m',
WAIT = false
);
- When
WAIT = false, the statement returns immediately with aprocedure_id. Progress can be checked viaADMIN procedure_state(procedure_id); - TIMEOUT sets an overall time limit for the operation.
Note: Region repartitioning is currently supported only when:
- Running in distributed cluster mode
- Using object storage and GC are enabled
Metric Engine Primary Key Filter Acceleration
RC.1 introduces a fast-path optimization for primary key filtering in the Metric Engine. Instead of decoding and materializing values row by row, the engine now performs direct comparisons on memcomparable-encoded primary key bytes, significantly reducing CPU overhead.
- Dense codec: 20β90Γ faster
- Sparse codec: 3β11Γ faster
This improvement greatly boosts query performance for high-cardinality metric workloads.
Breaking changes
- feat!: make heartbeat config only in metasrv by @fengjiachun in #7510
β οΈ Compatibility notice
In the new version, the TableMeta.region_numbers field has been removed.
As older versions still depend on this field, downgrading from the new version to an older version may introduce compatibility issues. Specifically, an older version may fail or throw errors when reading data generated by the new version, since the region_numbers field is no longer present.
π Features
- feat: impl vector index building by @killme2008 in #7468
- feat: update
ApplyStagingManifestRequestto fetch manifest from central region by @WenyXu in #7493 - feat: impl
json_get_intfor new json type by @MichaelScofield in #7495 - feat(meta-srv): fallback to non-TLS connection when etcd TLS prefer mode fail by @WenyXu in #7507
- feat: implement
RemapManifestandApplyStagingManifestfor repartition procedure by @WenyXu in
π Bug Fixes
- fix: align backend_tls default value with example config by @WenyXu in #7496
- fix: fix sqlness test error about double precision by @Standing-Man in #7476
- fix: dist planner rm col req when rm sort by @discord9 in #7512
- fix: pipeline loading issue by @shuiyisong in #7491
- fix: remove log_env_flags by @fengjiachun in #7529
π Refactor
- refactor: remove
region_numbersfromTableMetaandTableInfoby @WenyXu in #7519 - refactor: refactor
CreateTableProcedureto extract reusable components by @WenyXu in #7526 - refactor: remove duplications from mito by @waynexia in #7632
- refactor: SQL and gRPC server handlers by @waynexia in #7637
β‘ Performance
- perf: avoid boundary checks on accessing array items by @waynexia in #7570
- perf: accelerate pk filter by @waynexia in #7584
- perf: skip unnecessary label columns in promql query by @waynexia in #7602
- perf(mito2): merge last_non_null within memtable batches by @waynexia in #7653
π¨ Styling
π§ͺ Testing
- test(cli): fix snapshot test paths on Windows by @WenyXu in #7574
- test: add integration tests for repartition by @WenyXu in #7560
βοΈ Miscellaneous Tasks
- ci: update breaking change title level by @evenyag in #7497
- chore: add tests to comment column on information_schema by @waynexia in #7514
- chore: check for redundant pre-commit hooks by @Standing-Man in #7506
- chore: add grafana dashboard about trigger by @fengys1996 in #7536
- chore: add information extension to the plugins in frontend by @shuiyisong in #7542
All Contributors
We would like to thank the following contributors from the GreptimeDB community:
@MichaelScofield, @Standing-Man, @WenyXu, @discord9, @evenyag, @fengjiachun, @fengys1996, @killme2008, @shuiyisong, @sunng87, @v0y4g3r,