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


##########
fe/fe-common/src/main/java/org/apache/doris/common/Config.java:
##########
@@ -1234,7 +1234,7 @@ public class Config extends ConfigBase {
      * Minimum batch interval for adaptive routine load tasks when not at EOF.
      */
     @ConfField(mutable = true, masterOnly = true)
-    public static int routine_load_adaptive_min_batch_interval_sec = 360;
+    public static int routine_load_adaptive_min_batch_interval_sec = 120;

Review Comment:
   This default is shared by Kafka and Kinesis, but the Kinesis path still does 
not update the task timeout before the transaction is opened. The scheduler 
calls `updateAdaptiveTimeout()` before `beginTxn()`, and `beginTxn()` persists 
the current `timeoutMs` into the transaction; Kafka overrides that hook, but 
`KinesisTaskInfo` only applies `routine_load_adaptive_min_batch_interval_sec` 
later in `adaptiveBatchParam()` while building the thrift task. With the new 
default, a normal 60s Kinesis job can therefore start a transaction with a 
600000 ms timeout while the task/plan is sent with the 1200s adaptive timeout. 
Please apply the same pre-begin adaptive timeout update to Kinesis (ideally 
with the same min-timeout clamp helper as Kafka) before changing this shared 
default.



##########
regression-test/suites/load_p0/routine_load/test_routine_load_timeout_value.groovy:
##########
@@ -215,7 +215,7 @@ suite("test_routine_load_timeout_value","nonConcurrent") {
             sql "stop routine load for ${jobName}"
             sql "DROP TABLE IF EXISTS ${tableName} FORCE"
             // Restore routine_load_adaptive_min_batch_interval_sec to default 
value
-            sql "ADMIN SET FRONTEND CONFIG 
('routine_load_adaptive_min_batch_interval_sec' = '360')"
+            sql "ADMIN SET FRONTEND CONFIG 
('routine_load_adaptive_min_batch_interval_sec' = '120')"

Review Comment:
   This restore is still after two fallible cleanup statements. If anything 
fails after line 83 sets `routine_load_adaptive_min_batch_interval_sec` to `5` 
but before the routine-load job exists, `stop routine load` throws 
(`checkPrivAndGetJob` reports no operable job) and this line is skipped, 
leaving the FE process with the non-default value for later `nonConcurrent` 
suites. Please make the config restore unconditional, for example by moving it 
before best-effort `try_sql` cleanup or putting it in an outer `finally` that 
cleanup errors cannot bypass.



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