gnodet-bot commented on code in PR #27644:
URL: https://github.com/apache/camel/pull/27644#discussion_r4235733036


##########
catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jooq-component.adoc:
##########
@@ -93,6 +93,8 @@ See the examples below.
 Consuming messages from a JOOQ consumer endpoint removes (or updates) entity 
beans in the database.
 This allows you to use a database table as a logical queue: consumers take 
messages from the queue and then delete/update them to logically remove them 
from the queue.
 If you do not wish to delete the entity bean when it has been processed, you 
can specify consumeDelete=false on the URI.
+An entity bean is only deleted when its exchange completed successfully: if 
the exchange failed, the entity stays in
+the table and is consumed again by the next poll.

Review Comment:
   ⚠️ **Documentation gap — infinite retry not mentioned**
   
   The component docs omit a critical operational concern: a 
perpetually-failing entity is re-polled **indefinitely** at every poll cycle. 
The upgrade guide (correctly) tells users to handle this with 
`onException(...).handled(true)`, but users reading only the component docs 
won't see that guidance. Add the mitigation here.
   
   ```suggestion
   An entity bean is only deleted when its exchange completed successfully: if 
the exchange failed, the entity stays in
   the table and is consumed again by the next poll. An entity that always 
fails is re-polled indefinitely; handle the
   failure in the route (for example with `onException(...).handled(true)`) to 
delete the entity regardless of the outcome.
   ```



##########
components/camel-jooq/src/main/docs/jooq-component.adoc:
##########
@@ -93,6 +93,8 @@ See the examples below.
 Consuming messages from a JOOQ consumer endpoint removes (or updates) entity 
beans in the database.
 This allows you to use a database table as a logical queue: consumers take 
messages from the queue and then delete/update them to logically remove them 
from the queue.
 If you do not wish to delete the entity bean when it has been processed, you 
can specify consumeDelete=false on the URI.
+An entity bean is only deleted when its exchange completed successfully: if 
the exchange failed, the entity stays in
+the table and is consumed again by the next poll.

Review Comment:
   ⚠️ **Documentation gap — infinite retry not mentioned**
   
   The component docs omit a critical operational concern: a 
perpetually-failing entity is re-polled **indefinitely** at every poll cycle. 
The upgrade guide (correctly) tells users to handle this with 
`onException(...).handled(true)`, but users reading only the component docs 
won't see that guidance. Add the mitigation here.
   
   ```suggestion
   An entity bean is only deleted when its exchange completed successfully: if 
the exchange failed, the entity stays in
   the table and is consumed again by the next poll. An entity that always 
fails is re-polled indefinitely; handle the
   failure in the route (for example with `onException(...).handled(true)`) to 
delete the entity regardless of the outcome.
   ```



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