github-actions[bot] commented on code in PR #65453:
URL: https://github.com/apache/doris/pull/65453#discussion_r3557558952


##########
regression-test/plugins/plugin_index_change.groovy:
##########
@@ -51,20 +55,24 @@ Suite.metaClass.build_index_on_table = {index_name, 
table_name ->
 }
 
 Suite.metaClass.wait_for_last_col_change_finish = { table_name, OpTimeout ->
-    def useTime = 0
+    def finished = false
+    def alter_res = ""
 
-    for (int t = delta_time; t <= OpTimeout; t += delta_time) {
-        def alter_res = sql """SHOW ALTER TABLE COLUMN WHERE TableName = 
"${table_name}" ORDER BY CreateTime DESC LIMIT 1;"""
+    for (int t = 0; t <= OpTimeout; t += delta_time) {
+        alter_res = sql """SHOW ALTER TABLE COLUMN WHERE TableName = 
"${table_name}" ORDER BY CreateTime DESC LIMIT 1;"""
         alter_res = alter_res.toString()
         if (alter_res.contains("FINISHED")) {
             sleep(3000) // wait change table state to normal
             logger.info(table_name + " latest alter job finished, detail: " + 
alter_res)
+            finished = true
+            break
+        }
+        if (t >= OpTimeout) {
             break
         }
-        useTime = t
         sleep(delta_time)
     }
-    assertTrue(useTime <= OpTimeout, "wait_for_last_col_change_finish timeout")
+    assertTrue(finished, "wait_for_last_col_change_finish timeout, latest 
result: ${alter_res}")
 }
 
 Suite.metaClass.wait_for_last_schema_change_finish = {table_name, OpTimeout ->

Review Comment:
   This wrapper now always calls `wait_for_last_build_index_finish`, but this 
PR changed that helper to fail unless `SHOW BUILD INDEX ... LIMIT 1` observes a 
`FINISHED` row. Several shared-plugin callers use 
`wait_for_last_schema_change_finish` for ordinary schema-only index changes, 
for example `test_create_index_2.groovy` calls it immediately after `create 
index ...` without issuing a separate `BUILD INDEX`, and 
`variant_p0/with_index/load.groovy` does the same after drop/create index 
paths. Those operations complete via the column/schema-change side (`SHOW ALTER 
TABLE COLUMN`), not necessarily by creating a `SHOW BUILD INDEX` row, so after 
the column wait succeeds this second wait can now run for the full timeout and 
fail with an empty latest build-index result. Please split the wrapper 
semantics, or only wait on the build-index helper when the caller actually 
submitted a build-index job.
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to