@@ -83,6 +83,21 @@ class SQLParserSuite extends AnyFunSuite {
83
83
assert(actual === expected)
84
84
}
85
85
86
+ test(" parse ReplacingMergeTree - 3" ) {
87
+ val ddl = " ReplacingMergeTree(ts, is_deleted) " +
88
+ " PARTITION BY toYYYYMM(created) ORDER BY id SETTINGS index_granularity = 8192"
89
+ val actual = parser.parseEngineClause(ddl)
90
+ val expected = ReplacingMergeTreeEngineSpec (
91
+ engine_clause = " ReplacingMergeTree(ts, is_deleted)" ,
92
+ version_column = Some (FieldRef (" ts" )),
93
+ is_deleted_column = Some (FieldRef (" is_deleted" )),
94
+ _sorting_key = TupleExpr (FieldRef (" id" ) :: Nil ),
95
+ _partition_key = TupleExpr (List (FuncExpr (" toYYYYMM" , List (FieldRef (" created" ))))),
96
+ _settings = Map (" index_granularity" -> " 8192" )
97
+ )
98
+ assert(actual === expected)
99
+ }
100
+
86
101
test(" parse ReplicatedReplacingMergeTree - 1" ) {
87
102
val ddl = " ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/wj_report/wj_respondent', '{replica}') " +
88
103
" PARTITION BY toYYYYMM(created) ORDER BY id SETTINGS index_granularity = 8192"
@@ -115,6 +130,25 @@ class SQLParserSuite extends AnyFunSuite {
115
130
assert(actual === expected)
116
131
}
117
132
133
+ test(" parse ReplicatedReplacingMergeTree - 3" ) {
134
+ val ddl = " ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/wj_report/wj_respondent', '{replica}', " +
135
+ " ts, is_deleted) PARTITION BY toYYYYMM(created) ORDER BY id SETTINGS index_granularity = 8192"
136
+ val actual = parser.parseEngineClause(ddl)
137
+ val expected = ReplicatedReplacingMergeTreeEngineSpec (
138
+ engine_clause =
139
+ " ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/wj_report/wj_respondent', '{replica}', " +
140
+ " ts, is_deleted)" ,
141
+ zk_path = " /clickhouse/tables/{shard}/wj_report/wj_respondent" ,
142
+ replica_name = " {replica}" ,
143
+ version_column = Some (FieldRef (" ts" )),
144
+ is_deleted_column = Some (FieldRef (" is_deleted" )),
145
+ _sorting_key = TupleExpr (FieldRef (" id" ) :: Nil ),
146
+ _partition_key = TupleExpr (List (FuncExpr (" toYYYYMM" , List (FieldRef (" created" ))))),
147
+ _settings = Map (" index_granularity" -> " 8192" )
148
+ )
149
+ assert(actual === expected)
150
+ }
151
+
118
152
test(" parse Distributed - 1" ) {
119
153
val ddl = " Distributed('default', 'wj_report', 'wj_respondent_local')"
120
154
val actual = parser.parseEngineClause(ddl)
0 commit comments