mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-26 09:50:40 +00:00
fix: display the PartitionBound and PartitionDef correctly (#4101)
* fix: display the PartitionBound and PartitionDef correctly * Update src/partition/src/partition.rs Co-authored-by: dennis zhuang <killme2008@gmail.com> * fix: fix unit test of partition definition --------- Co-authored-by: dennis zhuang <killme2008@gmail.com>
This commit is contained in:
@@ -63,7 +63,7 @@ impl Display for PartitionBound {
|
||||
match self {
|
||||
Self::Value(v) => write!(f, "{}", v),
|
||||
Self::MaxValue => write!(f, "MAXVALUE"),
|
||||
Self::Expr(e) => write!(f, "{:?}", e),
|
||||
Self::Expr(e) => write!(f, "{}", e),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -72,8 +72,7 @@ impl Display for PartitionDef {
|
||||
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
|
||||
write!(
|
||||
f,
|
||||
"({}) VALUES LESS THAN ({})",
|
||||
self.partition_columns.iter().join(", "),
|
||||
"{}",
|
||||
self.partition_bounds
|
||||
.iter()
|
||||
.map(|b| format!("{b}"))
|
||||
@@ -188,7 +187,7 @@ mod tests {
|
||||
PartitionBound::Value(1_i32.into()),
|
||||
],
|
||||
};
|
||||
assert_eq!("(a, b) VALUES LESS THAN (MAXVALUE, 1)", def.to_string());
|
||||
assert_eq!("MAXVALUE, 1", def.to_string());
|
||||
|
||||
let partition: MetaPartition = def.try_into().unwrap();
|
||||
assert_eq!(
|
||||
|
||||
@@ -14,13 +14,13 @@ Affected Rows: 0
|
||||
-- SQLNESS REPLACE (\d{13}) ID
|
||||
SELECT table_catalog, table_schema, table_name, partition_name, partition_expression, greptime_partition_id from information_schema.partitions WHERE table_name = 'my_table' ORDER BY table_catalog, table_schema, table_name, partition_name;
|
||||
|
||||
+---------------+--------------+------------+----------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
||||
| table_catalog | table_schema | table_name | partition_name | partition_expression | greptime_partition_id |
|
||||
+---------------+--------------+------------+----------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
||||
| greptime | public | my_table | p0 | (a) VALUES LESS THAN (PartitionExpr { lhs: Column("a"), op: Lt, rhs: Value(Int32(1000)) }) | ID |
|
||||
| greptime | public | my_table | p1 | (a) VALUES LESS THAN (PartitionExpr { lhs: Column("a"), op: GtEq, rhs: Value(Int32(2000)) }) | ID |
|
||||
| greptime | public | my_table | p2 | (a) VALUES LESS THAN (PartitionExpr { lhs: Expr(PartitionExpr { lhs: Column("a"), op: GtEq, rhs: Value(Int32(1000)) }), op: And, rhs: Expr(PartitionExpr { lhs: Column("a"), op: Lt, rhs: Value(Int32(2000)) }) }) | ID |
|
||||
+---------------+--------------+------------+----------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+
|
||||
+---------------+--------------+------------+----------------+------------------------+-----------------------+
|
||||
| table_catalog | table_schema | table_name | partition_name | partition_expression | greptime_partition_id |
|
||||
+---------------+--------------+------------+----------------+------------------------+-----------------------+
|
||||
| greptime | public | my_table | p0 | a < 1000 | ID |
|
||||
| greptime | public | my_table | p1 | a >= 2000 | ID |
|
||||
| greptime | public | my_table | p2 | a >= 1000 AND a < 2000 | ID |
|
||||
+---------------+--------------+------------+----------------+------------------------+-----------------------+
|
||||
|
||||
-- SQLNESS REPLACE (\d{13}) REGION_ID
|
||||
-- SQLNESS REPLACE (\d{1}) PEER_ID
|
||||
@@ -120,11 +120,11 @@ Affected Rows: 0
|
||||
-- SQLNESS REPLACE (\d{13}) ID
|
||||
SELECT table_catalog, table_schema, table_name, partition_name, partition_expression, greptime_partition_id from information_schema.partitions WHERE table_name = 'my_table' ORDER BY table_catalog, table_schema, table_name, partition_name;
|
||||
|
||||
+---------------+--------------+------------+----------------+---------------------------------+-----------------------+
|
||||
| table_catalog | table_schema | table_name | partition_name | partition_expression | greptime_partition_id |
|
||||
+---------------+--------------+------------+----------------+---------------------------------+-----------------------+
|
||||
| greptime | public | my_table | p0 | (a) VALUES LESS THAN (MAXVALUE) | ID |
|
||||
+---------------+--------------+------------+----------------+---------------------------------+-----------------------+
|
||||
+---------------+--------------+------------+----------------+----------------------+-----------------------+
|
||||
| table_catalog | table_schema | table_name | partition_name | partition_expression | greptime_partition_id |
|
||||
+---------------+--------------+------------+----------------+----------------------+-----------------------+
|
||||
| greptime | public | my_table | p0 | MAXVALUE | ID |
|
||||
+---------------+--------------+------------+----------------+----------------------+-----------------------+
|
||||
|
||||
-- SQLNESS REPLACE (\d{13}) REGION_ID
|
||||
-- SQLNESS REPLACE (\d{1}) PEER_ID
|
||||
|
||||
Reference in New Issue
Block a user