@@ -157,6 +157,18 @@ suite("test_cu_compaction_remove_old_version_delete_bitmap", "nonConcurrent") {
157
157
return deleteBitmapStatus
158
158
}
159
159
160
+ def getDeleteBitmapStatus = { def tablets ->
161
+ for (def tablet in tablets) {
162
+ String tablet_id = tablet.TabletId
163
+ String trigger_backend_id = tablet.BackendId
164
+ getTabletStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
165
+ getLocalDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
166
+ if (isCloudMode()) {
167
+ getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
168
+ }
169
+ }
170
+ }
171
+
160
172
def testTable = " test_cu_compaction_remove_old_version_delete_bitmap"
161
173
def timeout = 10000
162
174
sql """ DROP TABLE IF EXISTS ${ testTable} """
@@ -202,21 +214,10 @@ suite("test_cu_compaction_remove_old_version_delete_bitmap", "nonConcurrent") {
202
214
set_be_param(" compaction_promotion_version_count" , " 5" )
203
215
set_be_param(" tablet_rowset_stale_sweep_time_sec" , " 0" )
204
216
205
- def get_tablet_status = { def tablets ->
206
- for (def tablet in tablets) {
207
- String tablet_id = tablet.TabletId
208
- String trigger_backend_id = tablet.BackendId
209
- getTabletStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
210
- getLocalDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
211
- if (isCloudMode()) {
212
- getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
213
- }
214
- }
215
- }
216
-
217
217
try {
218
218
GetDebugPoint (). clearDebugPointsForAllBEs()
219
219
GetDebugPoint (). enableDebugPointForAllBEs(" CumulativeCompaction.modify_rowsets.delete_expired_stale_rowsets" )
220
+
220
221
// 1. test normal
221
222
sql " sync"
222
223
sql """ INSERT INTO ${ testTable} VALUES (0,0,'1'),(1,1,'1'); """
@@ -227,101 +228,70 @@ suite("test_cu_compaction_remove_old_version_delete_bitmap", "nonConcurrent") {
227
228
sql """ INSERT INTO ${ testTable} VALUES (0,0,'6'),(6,6,'6'); """
228
229
sql """ INSERT INTO ${ testTable} VALUES (0,0,'7'),(7,7,'7'); """
229
230
sql """ INSERT INTO ${ testTable} VALUES (0,0,'8'),(8,8,'8'); """
230
-
231
231
qt_sql " select * from ${ testTable} order by plan_id"
232
232
233
- // trigger compaction to generate base rowset
234
233
def tablets = sql_return_maparray """ show tablets from ${ testTable} ; """
235
234
logger. info(" tablets: " + tablets)
236
- def local_delete_bitmap_count = 0
237
- def ms_delete_bitmap_count = 0
238
- def local_delete_bitmap_cardinality = 0 ;
239
- def ms_delete_bitmap_cardinality = 0 ;
235
+
236
+ // trigger compaction to generate base rowset
240
237
for (def tablet in tablets) {
241
238
String tablet_id = tablet.TabletId
242
- /* def tablet_info = sql_return_maparray """ show tablet ${tablet_id}; """
243
- logger.info("tablet: " + tablet_info)*/
244
239
String trigger_backend_id = tablet.BackendId
245
- getTabletStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id);
246
240
247
241
// before compaction, delete_bitmap_count is (rowsets num - 1)
242
+ getTabletStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id);
243
+
248
244
def localDeleteBitmapStatus = getLocalDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
249
- local_delete_bitmap_count = localDeleteBitmapStatus. delete_bitmap_count
250
- local_delete_bitmap_cardinality = localDeleteBitmapStatus. cardinality
251
- logger. info(" local_delete_bitmap_count:" + local_delete_bitmap_count)
252
- logger. info(" local_delete_bitmap_cardinality:" + local_delete_bitmap_cardinality)
253
- assertTrue (local_delete_bitmap_count == 7 )
254
- assertTrue (local_delete_bitmap_cardinality == 7 )
245
+ assertEquals (localDeleteBitmapStatus. delete_bitmap_count, 7 )
246
+ assertEquals (localDeleteBitmapStatus. cardinality, 7 )
255
247
256
248
if (isCloudMode()) {
257
249
def msDeleteBitmapStatus = getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
258
- ms_delete_bitmap_count = msDeleteBitmapStatus. delete_bitmap_count
259
- ms_delete_bitmap_cardinality = msDeleteBitmapStatus. cardinality
260
- logger. info(" ms_delete_bitmap_count:" + ms_delete_bitmap_count)
261
- logger. info(" ms_delete_bitmap_cardinality:" + ms_delete_bitmap_cardinality)
262
- assertTrue (ms_delete_bitmap_count == 7 )
263
- assertTrue (ms_delete_bitmap_cardinality == 7 )
250
+ assertEquals (msDeleteBitmapStatus. delete_bitmap_count, 7 )
251
+ assertEquals (msDeleteBitmapStatus. cardinality, 7 )
264
252
}
265
253
254
+ // trigger compaction
266
255
assertTrue (triggerCompaction(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id],
267
256
" cumulative" , tablet_id). contains(" Success" ));
268
257
waitForCompaction(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
269
- getTabletStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id);
270
- getLocalDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
271
- if (isCloudMode()) {
272
- getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
273
- }
258
+ getDeleteBitmapStatus(tablets)
274
259
}
275
-
276
260
qt_sql " select * from ${ testTable} order by plan_id"
277
-
278
- def now = System . currentTimeMillis()
279
-
280
261
sql """ INSERT INTO ${ testTable} VALUES (0,0,'9'),(1,9,'9'); """
281
262
sql """ INSERT INTO ${ testTable} VALUES (0,0,'10'),(1,10,'10'); """
282
263
sql """ INSERT INTO ${ testTable} VALUES (0,0,'11'),(1,11,'11'); """
283
- get_tablet_status (tablets)
264
+ getDeleteBitmapStatus (tablets)
284
265
285
266
// trigger one query
267
+ def now = System . currentTimeMillis()
286
268
GetDebugPoint (). enableDebugPointForAllBEs(" NewOlapScanner::_init_tablet_reader_params.block" )
287
269
Thread query_thread = new Thread (() -> query())
288
270
query_thread. start()
289
271
sleep(100 )
290
272
sql """ INSERT INTO ${ testTable} VALUES (0,0,'12'),(1,12,'12'); """
291
273
sql """ INSERT INTO ${ testTable} VALUES (0,0,'13'),(1,13,'13'); """
292
- get_tablet_status (tablets)
274
+ getDeleteBitmapStatus (tablets)
293
275
294
- def time_diff = System . currentTimeMillis() - now
276
+ /* def time_diff = System.currentTimeMillis() - now
295
277
logger.info("time_diff:" + time_diff)
296
- assertTrue (time_diff <= timeout, " wait_for_insert_into_values timeout" )
278
+ assertTrue(time_diff <= timeout, "wait_for_insert_into_values timeout")*/
297
279
298
280
// qt_sql "select * from ${testTable} order by plan_id"
299
281
300
282
// trigger cu compaction to remove old version delete bitmap
301
-
302
283
for (def tablet in tablets) {
303
284
String tablet_id = tablet.TabletId
304
- /* def tablet_info = sql_return_maparray """ show tablet ${tablet_id}; """
305
- logger.info("tablet: " + tablet_info)*/
306
285
307
286
// before compaction, local delete_bitmap_count is (total rowsets num - 1), ms delete_bitmap_count is new rowset num
308
287
String trigger_backend_id = tablet.BackendId
309
288
def localDeleteBitmapStatus = getLocalDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
310
- local_delete_bitmap_count = localDeleteBitmapStatus. delete_bitmap_count
311
- local_delete_bitmap_cardinality = localDeleteBitmapStatus. cardinality
312
- logger. info(" local_delete_bitmap_count:" + local_delete_bitmap_count)
313
- logger. info(" local_delete_bitmap_cardinality:" + local_delete_bitmap_cardinality)
314
- assertTrue (local_delete_bitmap_count == 12 )
315
- assertTrue (local_delete_bitmap_cardinality == 17 )
316
-
289
+ assertEquals (localDeleteBitmapStatus. delete_bitmap_count, 12 )
290
+ assertEquals (localDeleteBitmapStatus. cardinality, 17 )
317
291
if (isCloudMode()) {
318
- msDeleteBitmapStatus = getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
319
- ms_delete_bitmap_count = msDeleteBitmapStatus. delete_bitmap_count
320
- ms_delete_bitmap_cardinality = msDeleteBitmapStatus. cardinality
321
- logger. info(" ms_delete_bitmap_count:" + ms_delete_bitmap_count)
322
- logger. info(" ms_delete_bitmap_cardinality:" + ms_delete_bitmap_cardinality)
323
- assertTrue (ms_delete_bitmap_count == 5 )
324
- assertTrue (ms_delete_bitmap_cardinality == 10 )
292
+ def msDeleteBitmapStatus = getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
293
+ assertEquals (msDeleteBitmapStatus. delete_bitmap_count, 5 )
294
+ assertEquals (msDeleteBitmapStatus. cardinality, 10 )
325
295
}
326
296
327
297
getTabletStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id);
@@ -341,8 +311,8 @@ suite("test_cu_compaction_remove_old_version_delete_bitmap", "nonConcurrent") {
341
311
// assertTrue(local_delete_bitmap_cardinality == 2)
342
312
if (isCloudMode()) {
343
313
def msDeleteBitmapStatus = getMSDeleteBitmapStatus(backendId_to_backendIP[trigger_backend_id], backendId_to_backendHttpPort[trigger_backend_id], tablet_id)
344
- ms_delete_bitmap_count = msDeleteBitmapStatus. delete_bitmap_count
345
- ms_delete_bitmap_cardinality = msDeleteBitmapStatus. cardinality
314
+ def ms_delete_bitmap_count = msDeleteBitmapStatus. delete_bitmap_count
315
+ def ms_delete_bitmap_cardinality = msDeleteBitmapStatus. cardinality
346
316
logger. info(" ms_delete_bitmap_count:" + ms_delete_bitmap_count)
347
317
logger. info(" ms_delete_bitmap_cardinality:" + ms_delete_bitmap_cardinality)
348
318
assertTrue (ms_delete_bitmap_count == 1 )
@@ -357,7 +327,6 @@ suite("test_cu_compaction_remove_old_version_delete_bitmap", "nonConcurrent") {
357
327
qt_sql " select * from ${ testTable} order by plan_id"
358
328
359
329
// 2. test update delete bitmap failed
360
-
361
330
/* now = System.currentTimeMillis()
362
331
363
332
sql """ INSERT INTO ${testTable} VALUES (0,0,'14'),(1,19,'19'); """
0 commit comments