allthingssecurity commented on PR #28260:
URL: https://github.com/apache/camel/pull/28260#issuecomment-6333845747

   Thanks for the review. Pushed c2f8f4c057b9 on top:
   
   1. (blocking) The stop and remove run on a single thread the component owns 
(`ExecutorServiceManager`, created in `doStart`, shut down in `doShutdown`). 
For a toD shutdown inside the producer callback, the removal is also deferred 
until that exchange is done, because with `threads()` the rest of the calling 
route runs on the Kamelet route's pool thread. New tests: 
`templateWithThreadsDoesNotInterruptTheCallingRoute` fails with the inline 
removal of the first commit, and 
`kameletRouteIsKeptWhileTheCallingRouteRunsOnItsThread` fails when the removal 
does not wait for the exchange. One gap remains: recipientList with 
`cacheSize=-1` shuts down its prototype endpoints in `releaseProducer()`, 
outside the producer callback. There the removal starts at once, on the 
component thread.
   2. The endpoint keeps the `Route` instance and removes only that instance. A 
route id given in the uri is left alone: endpoints that share it replace each 
other's route, so it does not grow (`routeIdGivenInTheUriIsLeftAlone`).
   3. The removal of a Kamelet's route together with a route added at runtime 
that consumes from it is now documented and covered by 
`routeOfKameletIsRemovedWithTheRouteAddedAtRuntimeThatConsumesFromIt`. Routes 
created at context start are unchanged.
   4. Logging: the removal now runs off the message thread. The INFO lines come 
from `stopRoute`/`removeRoute` themselves, and neither `RouteController` nor 
`CamelContext` has a public logging-level variant 
(`AbstractCamelContext.stopRoute(id, LoggingLevel)` is not on the interface). 
So I left that as is. Our own line is DEBUG.
   5. AssertJ in the test, plus the concurrent test (8 threads, 200 requests).
   
   camel-kamelet: 148 tests, 0 failures, 3 skipped. The PR description is 
updated to match.
   
   _Claude Code on behalf of allthingssecurity_
   


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