Stephen Chu created HDFS-6733: --------------------------------- Summary: Creating encryption zone results in NPE when KeyProvider is null Key: HDFS-6733 URL: https://issues.apache.org/jira/browse/HDFS-6733 Project: Hadoop HDFS Issue Type: Sub-task Components: security Affects Versions: fs-encryption (HADOOP-10150 and HDFS-6134) Reporter: Stephen Chu
When users try to create an encryption zone on a system that is not configured with a KeyProvider, they will run into a NullPointerException. For example: [hdfs@schu-enc2 ~]$ hdfs crypto -createZone -keyName abc123 -path /user/hdfs 2014-07-22 23:18:23,273 WARN [main] crypto.CryptoCodec (CryptoCodec.java:getInstance(70)) - Crypto codec org.apache.hadoop.crypto.OpensslAesCtrCryptoCodec is not available. RemoteException: java.lang.NullPointerException This error happens in FSNamesystem.createEncryptionZone(FSNamesystem.java:8456): {code} try { if (keyName == null || keyName.isEmpty()) { keyName = UUID.randomUUID().toString(); createNewKey(keyName, src); createdKey = true; } else { KeyVersion keyVersion = provider.getCurrentKey(keyName); if (keyVersion == null) { {code} provider can be null. An improvement would be to make the error message more specific/say that KeyProvider was not found. -- This message was sent by Atlassian JIRA (v6.2#6252)