[ https://issues.apache.org/jira/browse/HDFS-1373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12984434#action_12984434 ]
Po Cheung commented on HDFS-1373: --------------------------------- After applying patch from HDFS-1284 to trunk, this test still does not pass in a Windows system without Kerberos due to missing C:\windows\krb5.ini file (see trace below). Proposed fix is to replace "kerberos" with "simple" in TestClientProtocolWithDelegationToken line 65: conf.set(HADOOP_SECURITY_AUTHENTICATION, "kerberos"); java.lang.ExceptionInInitializerError at org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:219) at org.apache.hadoop.security.UserGroupInformation.setConfiguration(UserGroupInformation.java:276) at org.apache.hadoop.hdfs.security.TestClientProtocolWithDelegationToken.setUp(TestClientProtocolWithDelegationToken.java:78) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) Caused by: java.lang.IllegalArgumentException: Can't get Kerberos configuration at org.apache.hadoop.security.KerberosName.<clinit>(KerberosName.java:89) ... 25 more Caused by: KrbException: Could not load configuration file C:\windows\krb5.ini (The system cannot find the file specified) at sun.security.krb5.Config.<init>(Config.java:142) at sun.security.krb5.Config.getInstance(Config.java:83) at org.apache.hadoop.security.KerberosName.<clinit>(KerberosName.java:85) ... 25 more Caused by: java.io.FileNotFoundException: C:\windows\krb5.ini (The system cannot find the file specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:106) at java.io.FileInputStream.<init>(FileInputStream.java:66) at sun.security.krb5.Config$1.run(Config.java:521) at java.security.AccessController.doPrivileged(Native Method) at sun.security.krb5.Config.loadConfigFile(Config.java:517) at sun.security.krb5.Config.<init>(Config.java:138) ... 27 more > Some tests fails on hosts w/o kerberos installed > ------------------------------------------------ > > Key: HDFS-1373 > URL: https://issues.apache.org/jira/browse/HDFS-1373 > Project: Hadoop HDFS > Issue Type: Test > Components: security, test > Affects Versions: 0.22.0 > Reporter: Eli Collins > Assignee: Po Cheung > Priority: Blocker > Fix For: 0.22.0 > > > {noformat} > Testsuite: > org.apache.hadoop.hdfs.security.TestClientProtocolWithDelegationToken > Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0 sec > Caused an ERROR > null > java.lang.ExceptionInInitializerError > at > org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:219) > at > org.apache.hadoop.security.UserGroupInformation.setConfiguration(UserGroupInformation.java:262) > at > org.apache.hadoop.hdfs.security.TestClientProtocolWithDelegationToken.<clinit>(TestClientProtocolWithDelegationToken.java:65) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:169) > Caused by: java.lang.IllegalArgumentException: Can't get Kerberos > configuration > at > org.apache.hadoop.security.KerberosName.<clinit>(KerberosName.java:89) > Caused by: KrbException: Could not load configuration file /etc/krb5.conf (No > such file or directory) > at sun.security.krb5.Config.<init>(Config.java:142) > at sun.security.krb5.Config.getInstance(Config.java:84) > at > org.apache.hadoop.security.KerberosName.<clinit>(KerberosName.java:85) > Caused by: java.io.FileNotFoundException: /etc/krb5.conf (No such file or > directory) > at java.io.FileInputStream.open(Native Method) > at java.io.FileInputStream.<init>(FileInputStream.java:106) > at java.io.FileInputStream.<init>(FileInputStream.java:66) > at sun.security.krb5.Config$1.run(Config.java:521) > at java.security.AccessController.doPrivileged(Native Method) > at sun.security.krb5.Config.loadConfigFile(Config.java:517) > {noformat} -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.