Closed
Description
Before reporting an issue
- I have read and understood the above terms for submitting issues, and I understand that my issue may be closed without action if I do not follow them.
Area
infinispan
Describe the bug
Server fails to start with error: Error details:: java.lang.RuntimeException: Cache TLS is not available with protocol UDP
full log:
May 28 16:33:20 keycloak systemd[1]: Started keycloak.service - Keycloak Authorization Server.
May 28 16:33:27 keycloak kc.sh[252]: 2025-05-28 16:33:27,831 INFO [org.keycloak.quarkus.runtime.storage.infinispan.CacheManagerFactory] (main) Starting Infinispan embedded cache manager
May 28 16:33:27 keycloak kc.sh[252]: 2025-05-28 16:33:27,980 INFO [com.arjuna.ats.jbossatx] (main) ARJUNA032014: Stopping transaction recovery manager
May 28 16:33:28 keycloak kc.sh[252]: 2025-05-28 16:33:28,002 ERROR [org.keycloak.quarkus.runtime.cli.ExecutionExceptionHandler] (main) ERROR: Failed to start server in (production) mode
May 28 16:33:28 keycloak kc.sh[252]: 2025-05-28 16:33:28,002 ERROR [org.keycloak.quarkus.runtime.cli.ExecutionExceptionHandler] (main) Error details:: java.lang.RuntimeException: Cache TLS is not available with protocol UDP
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.jgroups.JGroupsUtil.validateTlsAvailable(JGroupsUtil.java:70)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.jgroups.impl.BaseJGroupsTlsConfigurator.configure(BaseJGroupsTlsConfigurator.java:34)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.jgroups.impl.JpaJGroupsTlsConfigurator.configure(JpaJGroupsTlsConfigurator.java:52)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.jgroups.JGroupsConfigurator.lambda$configure$0(JGroupsConfigurator.java:145)
May 28 16:33:28 keycloak kc.sh[252]: at java.base/java.lang.Iterable.forEach(Iterable.java:75)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.jgroups.JGroupsConfigurator.configure(JGroupsConfigurator.java:145)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.CacheManagerFactory.startEmbeddedCacheManager(CacheManagerFactory.java:330)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.CacheManagerFactory.getOrCreateEmbeddedCacheManager(CacheManagerFactory.java:134)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.CacheManagerFactory_Uq0wIYR2uOCznFEYZOJeeAi-Obg_Synthetic_ClientProxy.getOrCreateEmbeddedCacheManager(Unknown Source)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.storage.infinispan.QuarkusCacheManagerProvider.getEmbeddedCacheManager(QuarkusCacheManagerProvider.java:33)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.connections.infinispan.DefaultInfinispanConnectionProviderFactory.lazyInit(DefaultInfinispanConnectionProviderFactory.java:211)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.connections.infinispan.DefaultInfinispanConnectionProviderFactory.create(DefaultInfinispanConnectionProviderFactory.java:119)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.connections.infinispan.DefaultInfinispanConnectionProviderFactory.create(DefaultInfinispanConnectionProviderFactory.java:100)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.services.DefaultKeycloakSession.getOrCreateProvider(DefaultKeycloakSession.java:184)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.services.DefaultKeycloakSession.getProvider(DefaultKeycloakSession.java:173)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.models.sessions.infinispan.InfinispanSingleUseObjectProviderFactory.getSingleUseObjectCache(InfinispanSingleUseObjectProviderFactory.java:82)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.models.sessions.infinispan.InfinispanSingleUseObjectProviderFactory.postInit(InfinispanSingleUseObjectProviderFactory.java:129)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.services.DefaultKeycloakSessionFactory.initializeProviders(DefaultKeycloakSessionFactory.java:168)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.services.DefaultKeycloakSessionFactory.initProviderFactories(DefaultKeycloakSessionFactory.java:145)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.services.DefaultKeycloakSessionFactory.initProviderFactories(DefaultKeycloakSessionFactory.java:126)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.integration.QuarkusKeycloakSessionFactory.init(QuarkusKeycloakSessionFactory.java:87)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.integration.jaxrs.QuarkusKeycloakApplication.createSessionFactory(QuarkusKeycloakApplication.java:67)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.services.resources.KeycloakApplication.startup(KeycloakApplication.java:90)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.integration.jaxrs.QuarkusKeycloakApplication.onStartupEvent(QuarkusKeycloakApplication.java:52)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.integration.jaxrs.QuarkusKeycloakApplication_Observer_onStartupEvent_GNZ8m5QenZ9h9VNelo7awjUZFDE.notify(Unknown Source)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.arc.impl.EventImpl$Notifier.notifyObservers(EventImpl.java:365)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.arc.impl.EventImpl$Notifier.notify(EventImpl.java:347)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.arc.impl.EventImpl.fire(EventImpl.java:81)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.arc.runtime.ArcRecorder.fireLifecycleEvent(ArcRecorder.java:163)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.arc.runtime.ArcRecorder.handleLifecycleEvents(ArcRecorder.java:114)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.runner.recorded.LifecycleEventsBuildStep$startupEvent1144526294.deploy_0(Unknown Source)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.runner.recorded.LifecycleEventsBuildStep$startupEvent1144526294.deploy(Unknown Source)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.runtime.Application.start(Application.java:101)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:121)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.runtime.Quarkus.run(Quarkus.java:77)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.KeycloakMain.start(KeycloakMain.java:145)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.cli.Picocli.start(Picocli.java:1002)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.cli.command.AbstractStartCommand.run(AbstractStartCommand.java:49)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine.executeUserObject(CommandLine.java:2030)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine.access$1500(CommandLine.java:148)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2465)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine$RunLast.handle(CommandLine.java:2457)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine$RunLast.handle(CommandLine.java:2419)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine$RunLast.execute(CommandLine.java:2421)
May 28 16:33:28 keycloak kc.sh[252]: at picocli.CommandLine.execute(CommandLine.java:2174)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.cli.Picocli.parseAndRun(Picocli.java:128)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.KeycloakMain.main(KeycloakMain.java:116)
May 28 16:33:28 keycloak kc.sh[252]: at org.keycloak.quarkus.runtime.KeycloakMain.main(KeycloakMain.java:71)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:68)
May 28 16:33:28 keycloak kc.sh[252]: at io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:36)
Version
26.2.5
Regression
- The issue is a regression
Expected behavior
I downgraded back to 26.2.4 and working fine again.
Actual behavior
Server is not starting
How to Reproduce?
I'm guessing it's something from my environment, but my keycloak is installed manually inside a container (LXC, Ubuntu 24.04), using postgres db (inside same container). Accessed using Nginx reverse proxy.
Here are my environment variables:
Environment="JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64"
Environment="KC_DB=postgres"
Environment="KC_DB_USERNAME=XXXXXXX"
Environment="KC_DB_PASSWORD=XXXXXXX"
Environment="KC_HOSTNAME=keycloak.example.com"
Environment="KC_HTTP_ENABLED=true"
Environment="KC_PROXY_HEADERS=xforwarded"
Anything else?
No response