-
Bug
-
Resolution: Cannot Reproduce
-
P5
-
5.0u8, 6
-
None
-
generic, sparc
-
generic, solaris_10
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2138813 | 5.0u8 | Unassigned | P3 | Closed | Cannot Reproduce |
CertPath/CertPathBuilderTest/BCF/test9 failed on all platform except Solaris S10 64bit.
It did pass on b81.
This is a serious problem. It looks like somehow the provider got into an infinite loop.
Here is the exception from the test:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at sun.security.util.DerInputBuffer.toByteArray(DerInputBuffer.java:51)
at sun.security.util.DerInputStream.toByteArray(DerInputStream.java:131)
at sun.security.x509.X500Name.parseDER(X500Name.java:767)
at sun.security.x509.X500Name.<init>(X500Name.java:290)
at sun.security.x509.CertificateSubjectName.<init>(CertificateSubjectName.java:65)
at sun.security.x509.X509CertInfo.parse(X509CertInfo.java:679)
at sun.security.x509.X509CertInfo.<init>(X509CertInfo.java:152)
at sun.security.x509.X509CertImpl.parse(X509CertImpl.java:1729)
at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:179)
at sun.security.provider.certpath.X509CertificatePair.parse(X509CertificatePair.java:223)
at sun.security.provider.certpath.X509CertificatePair.<init>(X509CertificatePair.java:102)
at sun.security.provider.certpath.X509CertificatePair.generateCertificatePair(X509CertificatePair.java:128)
at sun.security.provider.certpath.LDAPCertStore.getCertPairs(LDAPCertStore.java:469)
at sun.security.provider.certpath.LDAPCertStore.getMatchingCrossCerts(LDAPCertStore.java:507)
at sun.security.provider.certpath.LDAPCertStore.engineGetCertificates(LDAPCertStore.java:646)
at java.security.cert.CertStore.getCertificates(CertStore.java:124)
at sun.security.provider.certpath.Builder.addMatchingCerts(Builder.java:409)
at sun.security.provider.certpath.ReverseBuilder.getMatchingCACerts(ReverseBuilder.java:244)
at sun.security.provider.certpath.ReverseBuilder.getMatchingCerts(ReverseBuilder.java:122)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:653)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
The test at here, you can easily reproduce the problem:
/net/sqe/global/nfs/sec/users/bsitu/ws_6/security/src/CertPath/CertPathBuilderTest/BCF/test9
Using the promoted build, the following java program comes back quickly:
-bash-3.00$ java -cp . BuildCertPath -lhost mojava.sfbay.sun.com -lport 395 -maxlength 12 -buildreverse -trusted leadCA2leadCA -target cn=leadE,cn=mgrE,ou=prjE,ou=divB,ou=Comp,o=sun,c=us
PATH BUILD SUCCEEDED
PATH VALIDATION SUCCEEDED
Here is the detail:
Due to the HashMap changes, the same test also failed in Tiger PIT 5.0u8 b01.
This test is PASS in Tiger 5.0u9 b01 PIT testing and Mustang PIT b95 testing.
It did pass on b81.
This is a serious problem. It looks like somehow the provider got into an infinite loop.
Here is the exception from the test:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at sun.security.util.DerInputBuffer.toByteArray(DerInputBuffer.java:51)
at sun.security.util.DerInputStream.toByteArray(DerInputStream.java:131)
at sun.security.x509.X500Name.parseDER(X500Name.java:767)
at sun.security.x509.X500Name.<init>(X500Name.java:290)
at sun.security.x509.CertificateSubjectName.<init>(CertificateSubjectName.java:65)
at sun.security.x509.X509CertInfo.parse(X509CertInfo.java:679)
at sun.security.x509.X509CertInfo.<init>(X509CertInfo.java:152)
at sun.security.x509.X509CertImpl.parse(X509CertImpl.java:1729)
at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:179)
at sun.security.provider.certpath.X509CertificatePair.parse(X509CertificatePair.java:223)
at sun.security.provider.certpath.X509CertificatePair.<init>(X509CertificatePair.java:102)
at sun.security.provider.certpath.X509CertificatePair.generateCertificatePair(X509CertificatePair.java:128)
at sun.security.provider.certpath.LDAPCertStore.getCertPairs(LDAPCertStore.java:469)
at sun.security.provider.certpath.LDAPCertStore.getMatchingCrossCerts(LDAPCertStore.java:507)
at sun.security.provider.certpath.LDAPCertStore.engineGetCertificates(LDAPCertStore.java:646)
at java.security.cert.CertStore.getCertificates(CertStore.java:124)
at sun.security.provider.certpath.Builder.addMatchingCerts(Builder.java:409)
at sun.security.provider.certpath.ReverseBuilder.getMatchingCACerts(ReverseBuilder.java:244)
at sun.security.provider.certpath.ReverseBuilder.getMatchingCerts(ReverseBuilder.java:122)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:653)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
at sun.security.provider.certpath.SunCertPathBuilder.depthFirstSearchReverse(SunCertPathBuilder.java:738)
The test at here, you can easily reproduce the problem:
/net/sqe/global/nfs/sec/users/bsitu/ws_6/security/src/CertPath/CertPathBuilderTest/BCF/test9
Using the promoted build, the following java program comes back quickly:
-bash-3.00$ java -cp . BuildCertPath -lhost mojava.sfbay.sun.com -lport 395 -maxlength 12 -buildreverse -trusted leadCA2leadCA -target cn=leadE,cn=mgrE,ou=prjE,ou=divB,ou=Comp,o=sun,c=us
PATH BUILD SUCCEEDED
PATH VALIDATION SUCCEEDED
Here is the detail:
Due to the HashMap changes, the same test also failed in Tiger PIT 5.0u8 b01.
This test is PASS in Tiger 5.0u9 b01 PIT testing and Mustang PIT b95 testing.
- backported by
-
JDK-2138813 pit b83: CertPath: CertPathBuilderTest/BCF/test9 consumes large amount of memory & may overflow heap
-
- Closed
-