SEZ9 commented on issue #12411:
URL: https://github.com/apache/seatunnel/issues/12411#issuecomment-5755040791

   Thanks for the detailed report and analysis. From the code you quoted, 
`pollNext` holds `output.getCheckpointLock()` around `internalPollNext`, and 
the `finally` block calls `Thread.sleep(httpParameter.getPollIntervalMillis())` 
while the lock is still held, so with a ten-second poll the lock is only 
released for a brief window between iterations. That is consistent with the 
checkpoint timeout you observed and with raising `checkpoint.interval` / 
`checkpoint.timeout` not helping.
   
   Replacing the sleep with 
`output.getCheckpointLock().wait(httpParameter.getPollIntervalMillis())` looks 
like a reasonable minimal fix, since it releases the monitor while waiting. 
Since you are willing to submit a PR, please go ahead. It would be great to 
include a regression test that triggers a checkpoint while the reader is in its 
poll wait and asserts it completes, and to check whether other readers use the 
same sleep-under-lock pattern so they can be covered by the same change.
   
   <!-- streview-comment:1211 -->


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