[ 
https://issues.apache.org/jira/browse/CAMEL-23307?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Guillaume Nodet updated CAMEL-23307:
------------------------------------
    Fix Version/s: 4.19.0

> Infinispan schema registration retry does not catch HotRodClientException 
> wrapping IllegalLifecycleStateException
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-23307
>                 URL: https://issues.apache.org/jira/browse/CAMEL-23307
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-infinispan
>            Reporter: Guillaume Nodet
>            Assignee: Guillaume Nodet
>            Priority: Major
>              Labels: easyfix
>             Fix For: 4.19.0
>
>
> The retry logic added in CAMEL-23255 for Infinispan schema registration only 
> catches {{RemoteIllegalLifecycleStateException}}. However, when the 
> {{___protobuf_metadata}} cache is not ready, the Hot Rod client may throw a 
> generic {{HotRodClientException}} with server error status 0x85 and the 
> {{IllegalLifecycleStateException}} only in the message text, not as the 
> exception type.
> Observed in CI (JDK 17 build of PR #22523):
> {code}
> org.infinispan.client.hotrod.exceptions.HotRodClientException:
>   Request for messageId=5 returned server error (status=0x85):
>   org.infinispan.commons.IllegalLifecycleStateException:
>   ISPN005066: Cache '___protobuf_metadata' is not ready
> {code}
> The fix should extend the retry logic in 
> {{InfinispanRemoteManager.registerSchemaWithRetry()}} to also catch 
> {{HotRodClientException}} when its message contains 
> {{IllegalLifecycleStateException}} or check the cause chain, in addition to 
> the existing {{RemoteIllegalLifecycleStateException}} catch.
> Relevant code: {{InfinispanRemoteManager.java}} line ~160 (the {{catch 
> (RemoteIllegalLifecycleStateException e)}} block).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to