-
Bug
-
Resolution: Duplicate
-
P3
-
6
-
None
-
b41
-
x86
-
solaris_10
That test started to fail with Mustang b41; it still fails with b42.
It has been seen failed on a V20z dual Opteron + Solaris 10 7/05 s10x_u1wos_03 X86.
It is fine on a Sparc Ultra 10 + the same Solaris 10.
It looks a lot like a race condition / bad behavior under stress because :
- if you lower the number of clients that connect to the server, the failure goes away.
- if you keep a high number of connectors client BUT activate debugging for rmi+security, the failure goes away.
Server side output :
Jun 27, 2005 2:25:06 PM GenericConnectorServer ClientCreation.run
WARNING: Failed to open connection: javax.net.ssl.SSLException: Received fatal alert: internal_error
javax.net.ssl.SSLException: Received fatal alert: internal_error
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:166)
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:117)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1542)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:863)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1025)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1038)
at com.sun.jmx.remote.opt.security.TLSServerHandler.activate(TLSServerHandler.java:340)
at com.sun.jmx.remote.opt.security.AdminServer.connectionOpen(AdminServer.java:180)
at com.sun.jmx.remote.generic.ServerSynchroMessageConnectionImpl.connect(ServerSynchroMessageConnectionImpl.java:51)
at javax.management.remote.generic.GenericConnectorServer$ClientCreation.run(GenericConnectorServer.java:383)
at com.sun.jmx.remote.opt.util.ThreadService$ThreadServiceJob.run(ThreadService.java:208)
at com.sun.jmx.remote.opt.util.JobExecutor.run(JobExecutor.java:59)
Client side output :
[SQE][debug] JMXClientStarter::connectClients: Start
[SQE] (ERROR) Exception occured when running the client
javax.net.ssl.SSLException: java.security.ProviderException: Could not obtain session
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:166)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1476)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1443)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1426)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1045)
at com.sun.jmx.remote.opt.security.TLSClientHandler.activate(TLSClientHandler.java:189)
at com.sun.jmx.remote.opt.security.AdminClient.connectionOpen(AdminClient.java:150)
at com.sun.jmx.remote.generic.ClientSynchroMessageConnectionImpl.connect(ClientSynchroMessageConnectionImpl.java:71)
at javax.management.remote.generic.GenericConnector.connect(GenericConnector.java:177)
at javax.management.remote.jmxmp.JMXMPConnector.connect(JMXMPConnector.java:119)
at javax.management.remote.generic.GenericConnector.connect(GenericConnector.java:124)
at javasoft.sqe.jmx.test.stress_reliability.JMXClient.connect(JMXClient.java:363)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.connectClients(JMXClientStarter.java:524)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.main(JMXClientStarter.java:151)
Caused by: java.security.ProviderException: Could not obtain session
at sun.security.pkcs11.SessionManager.getOpSession(SessionManager.java:131)
at sun.security.pkcs11.Token.getOpSession(Token.java:241)
at sun.security.pkcs11.P11RSACipher.<init>(P11RSACipher.java:83)
at sun.security.pkcs11.SunPKCS11$P11Service.newInstance0(SunPKCS11.java:693)
at sun.security.pkcs11.SunPKCS11$P11Service.newInstance(SunPKCS11.java:678)
at javax.crypto.Cipher.a(DashoA14*..)
at javax.crypto.Cipher.init(DashoA14*..)
at com.sun.net.ssl.internal.ssl.RSACipher.encryptInit(RSACipher.java:40) at com.sun.net.ssl.internal.ssl.PreMasterSecret.<init>(PreMasterSecret.java:83)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:514)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:160)
at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:815)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1025)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1038)
... 9 more
[SQE] class javax.net.ssl.SSLException==>java.security.ProviderException: Could not obtain session
[SQE] JMXClient::getStatus: Cannot retrieve the client status
java.io.IOException: The client has not been connected.
at javax.management.remote.generic.GenericConnector.checkState(GenericConnector.java:745)
at javax.management.remote.generic.GenericConnector.getMBeanServerConnection(GenericConnector.java:218)
at javax.management.remote.generic.GenericConnector.getMBeanServerConnection(GenericConnector.java:212)
at javasoft.sqe.jmx.test.stress_reliability.JMXClient.getStatus(JMXClient.java:547)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.getClientStatus(JMXClientStarter.java:597)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.main(JMXClientStarter.java:179)
[SQE] class java.io.IOException==>The client has not been connected.
###@###.### 2005-06-27 13:05:09 GMT
It has been seen failed on a V20z dual Opteron + Solaris 10 7/05 s10x_u1wos_03 X86.
It is fine on a Sparc Ultra 10 + the same Solaris 10.
It looks a lot like a race condition / bad behavior under stress because :
- if you lower the number of clients that connect to the server, the failure goes away.
- if you keep a high number of connectors client BUT activate debugging for rmi+security, the failure goes away.
Server side output :
Jun 27, 2005 2:25:06 PM GenericConnectorServer ClientCreation.run
WARNING: Failed to open connection: javax.net.ssl.SSLException: Received fatal alert: internal_error
javax.net.ssl.SSLException: Received fatal alert: internal_error
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:166)
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:117)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1542)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:863)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1025)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1038)
at com.sun.jmx.remote.opt.security.TLSServerHandler.activate(TLSServerHandler.java:340)
at com.sun.jmx.remote.opt.security.AdminServer.connectionOpen(AdminServer.java:180)
at com.sun.jmx.remote.generic.ServerSynchroMessageConnectionImpl.connect(ServerSynchroMessageConnectionImpl.java:51)
at javax.management.remote.generic.GenericConnectorServer$ClientCreation.run(GenericConnectorServer.java:383)
at com.sun.jmx.remote.opt.util.ThreadService$ThreadServiceJob.run(ThreadService.java:208)
at com.sun.jmx.remote.opt.util.JobExecutor.run(JobExecutor.java:59)
Client side output :
[SQE][debug] JMXClientStarter::connectClients: Start
[SQE] (ERROR) Exception occured when running the client
javax.net.ssl.SSLException: java.security.ProviderException: Could not obtain session
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:166)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1476)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1443)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1426)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1045)
at com.sun.jmx.remote.opt.security.TLSClientHandler.activate(TLSClientHandler.java:189)
at com.sun.jmx.remote.opt.security.AdminClient.connectionOpen(AdminClient.java:150)
at com.sun.jmx.remote.generic.ClientSynchroMessageConnectionImpl.connect(ClientSynchroMessageConnectionImpl.java:71)
at javax.management.remote.generic.GenericConnector.connect(GenericConnector.java:177)
at javax.management.remote.jmxmp.JMXMPConnector.connect(JMXMPConnector.java:119)
at javax.management.remote.generic.GenericConnector.connect(GenericConnector.java:124)
at javasoft.sqe.jmx.test.stress_reliability.JMXClient.connect(JMXClient.java:363)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.connectClients(JMXClientStarter.java:524)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.main(JMXClientStarter.java:151)
Caused by: java.security.ProviderException: Could not obtain session
at sun.security.pkcs11.SessionManager.getOpSession(SessionManager.java:131)
at sun.security.pkcs11.Token.getOpSession(Token.java:241)
at sun.security.pkcs11.P11RSACipher.<init>(P11RSACipher.java:83)
at sun.security.pkcs11.SunPKCS11$P11Service.newInstance0(SunPKCS11.java:693)
at sun.security.pkcs11.SunPKCS11$P11Service.newInstance(SunPKCS11.java:678)
at javax.crypto.Cipher.a(DashoA14*..)
at javax.crypto.Cipher.init(DashoA14*..)
at com.sun.net.ssl.internal.ssl.RSACipher.encryptInit(RSACipher.java:40) at com.sun.net.ssl.internal.ssl.PreMasterSecret.<init>(PreMasterSecret.java:83)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:514)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:160)
at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:815)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1025)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1038)
... 9 more
[SQE] class javax.net.ssl.SSLException==>java.security.ProviderException: Could not obtain session
[SQE] JMXClient::getStatus: Cannot retrieve the client status
java.io.IOException: The client has not been connected.
at javax.management.remote.generic.GenericConnector.checkState(GenericConnector.java:745)
at javax.management.remote.generic.GenericConnector.getMBeanServerConnection(GenericConnector.java:218)
at javax.management.remote.generic.GenericConnector.getMBeanServerConnection(GenericConnector.java:212)
at javasoft.sqe.jmx.test.stress_reliability.JMXClient.getStatus(JMXClient.java:547)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.getClientStatus(JMXClientStarter.java:597)
at javasoft.sqe.jmx.test.stress_reliability.JMXClientStarter.main(JMXClientStarter.java:179)
[SQE] class java.io.IOException==>The client has not been connected.
###@###.### 2005-06-27 13:05:09 GMT