mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-15 12:30:38 +00:00
* fix unit tests * fix: sqlness * fix/default-time-window: ## Add Helper Functions and Enhance Compaction Tests - **Refactor Compaction Logic**: Introduced helper functions `flush` and `compact` in `compaction_test.rs` to streamline compaction operations. - **Enhance Compaction Tests**: Added a new test `test_infer_compaction_time_window` in `compaction_test.rs` to verify compaction time window inference. - **Testing Improvements**: Added `#[cfg(test)]` attribute to `new_multi_partitions` in `time_partition.rs` to ensure it's only included in test builds. * fix/default-time-window: - **Refactor `TimePartition` Struct**: Removed unnecessary comments regarding `time_range` in `time_partition.rs`. - **Enhance `TimePartitions` Functionality**: Added a method `part_duration_or_default` to provide a default partition duration in `time_partition.rs`. - **Update SQL Test Cases**: Modified SQL operations and expected results in `scan_big_varchar.result` and `scan_big_varchar.sql` to reflect changes in data manipulation logic. * fix/default-time-window: ### Update Time Partition Default Duration - **Refactor Default Duration**: Introduced `INITIAL_TIME_WINDOW` constant to define the default time window duration as `Duration::from_days(1)`. This change replaces multiple instances of the hardcoded default duration across the `time_partition.rs` file. - **Files Affected**: `time_partition.rs` * fix/default-time-window: ## Update Partition Duration Handling - **`time_partition.rs`**: Refactored `part_duration` to be non-optional, removing `Option` wrapper. Updated logic to use `unwrap_or` with `INITIAL_TIME_WINDOW` where necessary. Adjusted related methods and tests to accommodate this change. - **`version.rs` (memtable and region)**: Updated handling of `part_duration` to align with changes in `time_partition.rs`, ensuring consistent use of non-optional `Duration`. * fix/default-time-window: ### Improve Error Context in `time_partition.rs` - Enhanced error context message in `time_partition.rs` to provide clearer information on partition time range issues, including bucket size details. Signed-off-by: Lei, HUANG <lhuang@greptime.com> --------- Signed-off-by: Lei, HUANG <lhuang@greptime.com>
64 lines
1.4 KiB
SQL
64 lines
1.4 KiB
SQL
CREATE TABLE phy (ts timestamp time index, val double) engine=metric with ("physical_metric_table" = "");
|
|
|
|
SHOW TABLES;
|
|
|
|
DESC TABLE phy;
|
|
|
|
CREATE TABLE t1 (ts timestamp time index, val double, host string primary key) engine = metric with ("on_physical_table" = "phy");
|
|
|
|
CREATE TABLE t2 (ts timestamp time index, job string primary key, val double) engine = metric with ("on_physical_table" = "phy");
|
|
|
|
DESC TABLE t1;
|
|
|
|
DESC TABLE t2;
|
|
|
|
DESC TABLE phy;
|
|
|
|
ALTER TABLE t1 ADD COLUMN k STRING PRIMARY KEY;
|
|
|
|
ALTER TABLE t2 ADD COLUMN k STRING PRIMARY KEY;
|
|
|
|
DESC TABLE t1;
|
|
|
|
DESC TABLE t2;
|
|
|
|
DESC TABLE phy;
|
|
|
|
DROP TABLE t1;
|
|
|
|
DROP TABLE t2;
|
|
|
|
DROP TABLE phy;
|
|
|
|
CREATE TABLE phy (
|
|
ts timestamp time index,
|
|
val double,
|
|
host string primary key
|
|
)
|
|
PARTITION ON COLUMNS ("host") (
|
|
host < '1024',
|
|
host >= '1024'
|
|
)
|
|
engine=metric
|
|
with ("physical_metric_table" = "");
|
|
|
|
CREATE TABLE t1 (ts timestamp time index, val double, host string primary key) engine=metric with ("on_physical_table" = "phy");
|
|
|
|
INSERT INTO t1 (ts, val, host) VALUES
|
|
('2022-01-01 00:00:00', 1.23, 'example.com'),
|
|
('2022-01-02 00:00:00', 4.56, 'example.com'),
|
|
('2022-01-03 00:00:00', 7.89, 'example.com'),
|
|
('2022-01-01 00:00:00', 1.23, 'example.com'),
|
|
('2022-01-02 00:00:00', 4.56, 'example.com'),
|
|
('2022-01-03 00:00:00', 7.89, 'example.com');
|
|
|
|
SELECT * FROM t1 ORDER BY ts ASC;
|
|
|
|
ALTER TABLE t1 ADD COLUMN k STRING PRIMARY KEY;
|
|
|
|
SELECT * FROM t1 ORDER BY ts ASC;
|
|
|
|
DROP TABLE t1;
|
|
|
|
DROP TABLE phy;
|