SEPURI-SAI-KRISHNA commented on issue #13078:
URL: https://github.com/apache/seatunnel/issues/13078#issuecomment-6570091147

   @SEZ9 thanks for the review on #10753. I have updated the note above. Where 
the four questions stand:
   
   - **1. Scope** and **4. Slice order** are settled by your comment.
   - **2. Naming** and **3. Jar location** are still open. The note proposes 
plugin `Jms` and module `connector-jms`, vendor jars in 
`${SEATUNNEL_HOME}/plugins/connector-jms/`, and bundling the Geronimo JMS 1.1 
API jar. Could you or another maintainer confirm or correct these two? I will 
start slice 1 once they are confirmed.
   
   What changed in the note:
   
   - **Section 1** says explicitly that the connector does not replace #12341 
and leaves `connector-activemq` and `connector-rabbitmq` as they are.
   - **Final checkpoint on stop:** unchanged, design item 5.
   - **Commit failure after the checkpoint is confirmed** (new item 8): the 
reader fails, as `ActivemqSourceReader` does on a failed acknowledgement, and 
Zeta fails the pipeline and restores it from the last completed checkpoint, 
within `job.retry.times`. If the broker did not apply the commit, it redelivers 
the epoch: duplicates, no loss. If it applied the commit and only the reply was 
lost: no loss, no duplicates.
   - **Two findings from the extended spike:** after a broker side drop, 
ActiveMQ Classic with its default prefetch returned `null` from 
`receiveNoWait()` instead of throwing, so the reader detects a lost connection 
through an `ExceptionListener` (item 9). With its default prefetch, a sealed 
ActiveMQ Classic consumer held its prefetched messages until the commit, so the 
docs will recommend a low `prefetchPolicy.queuePrefetch` (item 10).
   - **In-flight bound** (item 11): it must stay below broker limits such as 
the IBM MQ `MaxUncommittedMsgs` attribute, and it caps a reader at about the 
bound per checkpoint interval.
   - **Spike results** now give the broker and client versions, how each 
failure is injected and what each provider did. Code, run instructions and 
logs: 
https://gist.github.com/SEPURI-SAI-KRISHNA/7aabc26904659c6a1348578d66e84e6e
   - **Licence** unchanged: `geronimo-jms_1.1_spec` 1.1.1 (Apache License 2.0) 
is the only new dependency, and no vendor client is bundled.
   


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