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

   ### Motivation
   When export-tsfile uses subscription/pipe to export TsFiles, a 
PipeTerminateEvent could mark the snapshot topic completed before the final 
internal TsFile batch was emitted and consumed. The client could then receive 
termination, clean up the topic, and miss the last batch of data.
   
   ### Modifications
   - Hold PipeTerminateEvent in the subscription prefetching queue until 
pending batches are emitted.
   - Add a forced batch emit path for termination draining.
   - Commit the terminate event only after the prefetched queue and in-flight 
subscription events are empty.
   
   ### Tests
   - `mvn spotless:apply -pl iotdb-core/datanode`
   - `git diff --check`
   - `mvn compile -pl iotdb-core/datanode` (fails in unrelated 
existing/generated dependency areas: missing `PipePeriodicalLogReducer`, 
relational grammar `identifier()`, `CalcMessages`, and 
`IndexedBlockingReserveQueue` API mismatches; modified files are not reported 
in the compilation errors)


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