No, I think that I have seen this only once now, but of course it might have 
happened more than once.
Googling says that other people have seen this as well, but very randomly.
Apparently the problem happens in Windows function, but JNI call does not tell 
the reason for failure.
This happened in AWS cloud, perhaps the server was busy or something.
Or there is some kind of bug in JDK.
Probably this would need JDK developer to look at.
There might be solution here:
https://support.oracle.com/knowledge/Middleware/1492450_1.html#FIX
But I can't see it. 😊

-Harri

-----Original Message-----
From: Christopher Schultz <ch...@christopherschultz.net> 
Sent: torstai 20. huhtikuuta 2023 19.35
To: users@tomcat.apache.org
Subject: Re: java.lang.InternalError: Unexpected CryptoAPI failure generating 
seed

Harri,

On 4/18/23 07:43, Harri Pesonen wrote:
> Hello, we have:
> 
> Tomcat/8.5.83
> Windows Server 2016
> java.version=11.0.12
> java.vendor=Azul Systems, Inc.
> sun.arch.data.model=64
> 
> Sometimes Tomcat fails to start our application because of this error:
> 
> 06:45:58.230 ERR> (Catalina-startStop-1) 
> (org.apache.catalina.startup.HostConfig#deployDescriptors) Error waiting for 
> multi-thread deployment of deployment descriptors to complete
> java.util.concurrent.ExecutionException: java.lang.InternalError: Unexpected 
> CryptoAPI failure generating seed
>                               at 
> java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
>                               at 
> java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
>                               at 
> org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:594)
>                               at 
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:472)
>                               at 
> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1610)
>                               at 
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:318)
>                               at 
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
>                               at 
> org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
>                               at 
> org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
>                               at 
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:962)
>                               at 
> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:833)
>                               at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>                               at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1427)
>                               at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1417)
>                               at 
> java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
>                               at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>                               at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>                               at 
> java.base/java.lang.Thread.run(Thread.java:829)
> Caused by: java.lang.InternalError: Unexpected CryptoAPI failure generating 
> seed
>                               at 
> java.base/sun.security.provider.NativeSeedGenerator.getSeedBytes(NativeSeedGenerator.java:62)
>                               at 
> java.base/sun.security.provider.SeedGenerator.generateSeed(SeedGenerator.java:144)
>                               at 
> java.base/sun.security.provider.SecureRandom$SeederHolder.<clinit>(SecureRandom.java:204)
>                               at 
> java.base/sun.security.provider.SecureRandom.engineNextBytes(SecureRandom.java:222)
>                               at 
> java.base/java.security.SecureRandom.nextBytes(SecureRandom.java:751)
>                               at 
> java.base/java.security.SecureRandom.next(SecureRandom.java:808)
>                               at 
> java.base/java.util.Random.nextInt(Random.java:329)
>                               at 
> org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom(SessionIdGeneratorBase.java:290)
>                               at 
> org.apache.catalina.util.SessionIdGeneratorBase.getRandomBytes(SessionIdGeneratorBase.java:222)
>                               at 
> org.apache.catalina.util.StandardSessionIdGenerator.generateSessionId(StandardSessionIdGenerator.java:34)
>                               at 
> org.apache.catalina.util.SessionIdGeneratorBase.generateSessionId(SessionIdGeneratorBase.java:214)
>                               at 
> org.apache.catalina.util.SessionIdGeneratorBase.startInternal(SessionIdGeneratorBase.java:310)
>                               at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>                               at 
> org.apache.catalina.session.ManagerBase.startInternal(ManagerBase.java:670)
>                               at 
> org.apache.catalina.session.StandardManager.startInternal(StandardManager.java:352)
>                               at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>                               at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5250)
>                               at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>                               at 
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753)
>                               at 
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:727)
>                               at 
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)
>                               at 
> org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:673)
>                               at 
> org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1881)
>                               at 
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
>                               ... 4 more
> 
> I googled and Java is calling Windows function and it fails.
> There seems to be no fix for this problem.
> Does anyone have any idea what is happening, and how to workaround?

That's a very weird error. Does it happen all the time?

-chris

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to