Caideyipi opened a new pull request, #18297:
URL: https://github.com/apache/iotdb/pull/18297

   ## Description
   
   ### Improve timeout diagnostics for Pipe control statements
   
   When CREATE PIPE, ALTER PIPE, START PIPE, STOP PIPE, or DROP PIPE times out 
while waiting for its Procedure, return a diagnostic message containing:
   
   - the Pipe operation and procedure ID
   - the current execution or rollback stage
   - a stage-specific cause, or the most recent retry/failure exception when 
available
   - an explicit reminder that the Procedure is still running in the background
   
   ### Design
   
   `AbstractOperatePipeProcedureV2` keeps volatile, non-persistent diagnostic 
state so the request thread can inspect the Procedure without affecting 
execution or recovery. The tracked stages cover Procedure worker scheduling, 
PipeTaskCoordinator lock acquisition, ConfigNode node lock acquisition, 
validation, metadata calculation, ConfigNode consensus writes, DataNode 
metadata pushes, and rollback.
   
   Only user-facing Pipe control statements use the detailed timeout message. 
The optimistic timeout behavior of internal consensus Pipe procedures is 
unchanged. English and Chinese messages are kept in key and format-specifier 
parity for the new diagnostics.
   
   ### Tests
   
   - Added timeout diagnostic tests for retry exceptions and the DataNode 
operation stage.
   - `mvn -nsu -pl iotdb-core/confignode spotless:check checkstyle:check 
-DskipTests` passes.
   - `git diff --check` passes.
   - The focused unit test is currently blocked before test execution by 
unrelated existing cross-module/generated-source compilation mismatches in this 
checkout.
   
   <hr>
   
   This PR has:
   - [x] been self-reviewed.
       - [x] concurrent read and write
   - [x] added comments explaining the why and intent of the diagnostic state.
   - [x] added unit tests to cover the new diagnostic paths.
   
   <hr>
   
   ##### Key changed/added classes (or packages if there are too many classes) 
in this PR
   
   - `AbstractOperatePipeProcedureV2`
   - `ProcedureManager`
   - `ProcedureMessages`
   - `AbstractOperatePipeProcedureV2Test`


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

Reply via email to