Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6950929

Failures on Solaris sparc 64bit sun/security/krb5/auto/BadKdc4.java (and linux?)

XMLWordPrintable

    • b142
    • generic
    • generic
    • Verified

      Have seen this fail ONLY on Solaris sparc 64bit (JPRT). Passed on all other platforms.
      Filing this just for the record.

      --------------------------------------------------
      TEST: sun/security/krb5/auto/BadKdc4.java
      JDK under test: (/tmp/jprt/T1/T/172836.ohair/testproduct/solaris_sparcv9_5.10-product)
      java version "1.7.0-201005081728.ohair.jdk"
      Java(TM) SE Runtime Environment (build 1.7.0-201005081728.ohair.jdk-jprtadm_2010_05_08_11_15-b00)
      Java HotSpot(TM) Server VM (build 18.0-b04, mixed mode)

      ACTION: build -- Passed. Build successful
      REASON: Named class compiled on demand
      TIME: 1.203 seconds
      messages:
      command: build BadKdc4
      reason: Named class compiled on demand
      elapsed time (seconds): 1.203

      ACTION: compile -- Passed. Compilation successful
      REASON: .class file out of date or does not exist
      TIME: 1.201 seconds
      messages:
      command: compile /tmp/jprt/T1/T/172836.ohair/source/test/sun/security/krb5/auto/BadKdc4.java
      reason: .class file out of date or does not exist
      elapsed time (seconds): 1.201
      STDOUT:
      STDERR:

      ACTION: main -- Failed. Execution failed: `main' threw exception: javax.security.auth.login.LoginException: Identifier doesn't match expected value (906)
      REASON: User specified action: run main/timeout=300 BadKdc4
      TIME: 84.506 seconds
      messages:
      command: main BadKdc4
      reason: User specified action: run main/timeout=300 BadKdc4
      elapsed time (seconds): 84.506
      STDOUT:
      Config name: alternative-krb5.conf
      >>> KdcAccessibility: reset
      >>> KdcAccessibility: reset
      Start KDC on 34095
      ----------------- TEST -----------------
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:34095, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =1, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =2, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =3, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =1, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =2, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =3, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:34095, timeout=2000,Attempt =1, #bytes=214
      ----------------- TEST -----------------
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:34095, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =1, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =2, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =3, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =1, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =2, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =3, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:34095, timeout=2000,Attempt =1, #bytes=214
      Config name: alternative-krb5.conf
      >>> KdcAccessibility: reset
      ----------------- TEST -----------------
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:34095, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =1, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =2, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:15895, timeout=2000,Attempt =3, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =1, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =2, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:25069, timeout=2000,Attempt =3, #bytes=214
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:34095, timeout=2000,Attempt =1, #bytes=214
      Start KDC on 25069
      STDERR:
      javax.security.auth.login.LoginException: Identifier doesn't match expected value (906)
      at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:732)
      at com.sun.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:557)
      at Context.fromUserPass(Context.java:134)
      at BadKdc.test(BadKdc.java:93)
      at BadKdc.go(BadKdc.java:72)
      at BadKdc4.main(BadKdc4.java:39)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:613)
      at com.sun.javatest.regtest.MainWrapper$MainThread.run(MainWrapper.java:94)
      at java.lang.Thread.run(Thread.java:717)
      Caused by: KrbException: Identifier doesn't match expected value (906)
      at sun.security.krb5.internal.KRBError.init(KRBError.java:366)
      at sun.security.krb5.internal.KRBError.<init>(KRBError.java:197)
      at sun.security.krb5.KrbAsRep.<init>(KrbAsRep.java:62)
      at sun.security.krb5.KrbAsReq.getReply(KrbAsReq.java:469)
      at sun.security.krb5.Credentials.sendASRequest(Credentials.java:427)
      at sun.security.krb5.Credentials.acquireTGT(Credentials.java:399)
      at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:698)
      ... 11 more

      JavaTest Message: Test threw exception: javax.security.auth.login.LoginException: Identifier doesn't match expected value (906)
      JavaTest Message: shutting down test

      STATUS:Failed.`main' threw exception: javax.security.auth.login.LoginException: Identifier doesn't match expected value (906)

      TEST RESULT: Failed. Execution failed: `main' threw exception: javax.security.auth.login.LoginException: Identifier doesn't match expected value (906)
      --------------------------------------------------
      Also failed on Linux -server 32bit (Fedora 9)

      --------------------------------------------------
      TEST: sun/security/krb5/auto/BadKdc3.java
      JDK under test: (/tmp/jprt/P1/T/154735.ohair/testproduct/linux_i586_2.6-product)
      java version "1.7.0-201005091547.ohair.jdk"
      Java(TM) SE Runtime Environment (build 1.7.0-201005091547.ohair.jdk-jprtadm_2010_05_09_08_52-b00)
      Java HotSpot(TM) Server VM (build 18.0-b04, mixed mode)

      ACTION: build -- Passed. Build successful
      REASON: Named class compiled on demand
      TIME: 0.721 seconds
      messages:
      command: build BadKdc3
      reason: Named class compiled on demand
      elapsed time (seconds): 0.721

      ACTION: compile -- Passed. Compilation successful
      REASON: .class file out of date or does not exist
      TIME: 0.721 seconds
      messages:
      command: compile /tmp/jprt/P1/T/154735.ohair/source/test/sun/security/krb5/auto/BadKdc3.java
      reason: .class file out of date or does not exist
      elapsed time (seconds): 0.721
      STDOUT:
      STDERR:

      ACTION: main -- Failed. Execution failed: `main' threw exception: java.lang.ArrayIndexOutOfBoundsException: 16
      REASON: User specified action: run main/timeout=300 BadKdc3
      TIME: 16.37 seconds
      messages:
      command: main BadKdc3
      reason: User specified action: run main/timeout=300 BadKdc3
      elapsed time (seconds): 16.37
      STDOUT:
      Config name: alternative-krb5.conf
      >>> KdcAccessibility: reset
      >>> KdcAccessibility: reset
      Start KDC on 39493
      ----------------- TEST -----------------
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:18644, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:18644, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:18644, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:28252, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:28252, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:28252, timeout=2000,Attempt =3, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:39493, timeout=2000,Attempt =1, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:39493, timeout=2000,Attempt =2, #bytes=144
      >>> KDCCommunication: kdc=kdc.rabbit.hole UDP:39493, timeout=2000,Attempt =1, #bytes=214
      STDERR:
      java.lang.ArrayIndexOutOfBoundsException: 16
      at BadKdc.test(BadKdc.java:103)
      at BadKdc.go(BadKdc.java:65)
      at BadKdc3.main(BadKdc3.java:39)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:613)
      at com.sun.javatest.regtest.MainWrapper$MainThread.run(MainWrapper.java:94)
      at java.lang.Thread.run(Thread.java:717)

      JavaTest Message: Test threw exception: java.lang.ArrayIndexOutOfBoundsException: 16
      JavaTest Message: shutting down test

      STATUS:Failed.`main' threw exception: java.lang.ArrayIndexOutOfBoundsException: 16

      TEST RESULT: Failed. Execution failed: `main' threw exception: java.lang.ArrayIndexOutOfBoundsException: 16
      --------------------------------------------------
      The BadKdc<n> tests are failing again. After hundreds of JPRT test, I see several different kinds of failures:

      Once, A BindException;

      Eleven times, timeout for k2. This always happens to the first UDP attempt to access k2 after it's turned on. Does not look like a timeout problem because I've tried timeout value of 5 seconds and the KDC side has no log on receiving the packet. The 2nd and 3rd packet to the same port are always processed in time. This happens on BadKdc3 (8 times), BadKdc1 (once), and BadKdc4 (twice), only on solaris-i586 or solaris-x64. The strange thing is, k3 is started earlier and it never sees any packet lost.

      Update: Amy found failures on k3, so the last sentence in the previous paragraph is not "strange" now. She also reports a DER encoding error. It might be of the same reason as BindException: the KDC we want to open cannot be opened because another process is using the port. On the other hand, a KDC we do not want to start but its port might also be opened by another process, sending a packet to it will result in an response we cannot recognize.

            weijun Weijun Wang
            ohair Kelly Ohair (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: