You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Guillaume Nodet (Jira)" <ji...@apache.org> on 2026/04/10 08:01:00 UTC

[jira] [Work started] (CAMEL-23307) Infinispan schema registration retry does not catch HotRodClientException wrapping IllegalLifecycleStateException

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

Work on CAMEL-23307 started by Guillaume Nodet.
-----------------------------------------------
> 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)