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


##########
regression-test/suites/load_p0/routine_load/test_routine_load_be_restart.groovy:
##########
@@ -73,18 +73,19 @@ suite("test_routine_load_be_restart","nonConcurrent") {
                 RoutineLoadTestUtils.sendTestDataToKafka(producer, 
kafkaCsvTopics)
                 GetDebugPoint().enableDebugPointForAllFEs(injection_abort_txn)
                 RoutineLoadTestUtils.waitForTaskAbort(runSql, job, 60)
+                def pausedJob = sql "show routine load for ${job}"
+                assertEquals("PAUSED", pausedJob[0][8].toString())
+                
assertTrue(pausedJob[0][17].toString().contains("TASKS_ABORT_ERR"))

Review Comment:
   [P1] Match the displayed pause-code format
   
   Column 17 comes from `ErrorReason.toString()`, and 
`InternalErrorCode.toString()` renders `errCode = 104`, not `TASKS_ABORT_ERR`, 
so this new assertion always fails. The new `CREATE_TASKS_ERR` checks in the 
MEM_LIMIT_EXCEEDED and TOO_MANY_TASKS suites have the same problem and can 
never set `sawPaused`. Please assert the actual displayed codes (`errCode = 
103/104`) together with the message, or intentionally change the output 
contract and update all three tests.



##########
fe/fe-core/src/main/java/org/apache/doris/load/routineload/RoutineLoadJob.java:
##########
@@ -1353,6 +1353,16 @@ public void afterAborted(TransactionState txnState, 
boolean txnOperated, String
                     }
                     // TODO(ml): use previous be id depend on change reason
                 }
+                if (txnStatusChangeReason != 
TransactionState.TxnStatusChangeReason.NO_PARTITIONS) {

Review Comment:
   [P1] Preserve aborted-task diagnostics before pausing
   
   For an unclassified BE rollback, the transaction attachment can carry 
`errorLogUrl` and `firstErrorMsg`, but this new return runs before 
`executeTaskOnTxnStatusChanged()` copies those fields into the job. The job 
therefore becomes `PAUSED` while `SHOW ROUTINE LOAD` / `routine_load_jobs` 
loses the row-level diagnostics users need to repair the input. The replaced 
unit test previously asserted exactly these fields. Please record the 
attachment diagnostics before returning (without advancing aborted progress or 
renewing the task), and retain a paused-abort test for both fields.



-- 
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