@@ -146,4 +146,49 @@ suite('nereids_delete_mow_partial_update') {
146
146
sql " drop table if exists ${ tableName3} ;"
147
147
}
148
148
}
149
+
150
+ def tableName = " nereids_delete_mow_partial_update10"
151
+ sql " DROP TABLE IF EXISTS ${ tableName} ;"
152
+ sql """
153
+ CREATE TABLE ${ tableName} (
154
+ `l_shipdate` date NOT NULL,
155
+ `l_orderkey` bigint NOT NULL,
156
+ `l_linenumber` bigint NOT NULL,
157
+ `l_partkey` bigint NOT NULL,
158
+ `l_suppkey` bigint NOT NULL,
159
+ `l_quantity` decimal(15,2) NOT NULL,
160
+ `l_extendedprice` decimal(15,2) NOT NULL,
161
+ `l_discount` decimal(15,2) NOT NULL,
162
+ `l_tax` decimal(15,2) NOT NULL,
163
+ `l_returnflag` varchar(1) NOT NULL,
164
+ `l_linestatus` varchar(1) NOT NULL,
165
+ `l_commitdate` date NOT NULL,
166
+ `l_receiptdate` date NOT NULL,
167
+ `l_shipinstruct` varchar(25) NOT NULL,
168
+ `l_shipmode` varchar(10) NOT NULL,
169
+ `l_comment` varchar(44) NOT NULL
170
+ )
171
+ UNIQUE KEY(`l_shipdate`, `l_orderkey`, `l_linenumber`, `l_partkey`, `l_suppkey`)
172
+ DISTRIBUTED BY HASH(`l_orderkey`) BUCKETS 1
173
+ PROPERTIES (
174
+ "replication_allocation" = "tag.location.default: 1",
175
+ "enable_unique_key_merge_on_write" = "true",
176
+ "function_column.sequence_col" = "l_Shipdate"
177
+ );
178
+ """
179
+ sql """
180
+ insert into ${ tableName} values
181
+ ('2023-12-09', 1, 2, 3, 4, 5.5, 6.5, 7.5, 8.5, 'o', 'k', '2023-12-09', '2023-12-10', 'a', 'b', 'yyyyyyyyy'),
182
+ ('2023-12-09', 2, 2, 3, 4, 5.5, 6.5, 7.5, 8.5, 'o', 'k', '2023-12-09', '2023-12-10', 'a', 'b', 'yyyyyyyyy') ;
183
+ """
184
+ explain {
185
+ sql """ delete from ${ tableName} where l_orderkey = 800; """
186
+ contains " IS_PARTIAL_UPDATE: true"
187
+ }
188
+ sql """ delete from ${ tableName} where l_orderkey = 800; """
189
+ sql " sync"
190
+ order_qt_sql """ SELECT * FROM ${ tableName} ; """
191
+ sql """ delete from ${ tableName} where l_orderkey = 2; """
192
+ sql " sync"
193
+ order_qt_sql """ SELECT * FROM ${ tableName} ; """
149
194
}
0 commit comments