Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-6232

OfflineEditsViewer throws a NPE on edits containing ACL modifications

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.4.0, 3.0.0-alpha1
    • Fix Version/s: 2.4.1
    • Component/s: tools
    • Labels:
      None

      Description

      The OfflineEditsViewer using the XML parser will through a NPE when using an edit with a SET_ACL op.

      [root@hdfs-nfs current]# hdfs oev -i edits_0000000000000000001-0000000000000000007 -o fsedits.out
      14/04/10 14:14:18 ERROR offlineEditsViewer.OfflineEditsBinaryLoader: Got RuntimeException at position 505
      Encountered exception. Exiting: null
      java.lang.NullPointerException
      	at org.apache.hadoop.hdfs.util.XMLUtils.mangleXmlString(XMLUtils.java:122)
      	at org.apache.hadoop.hdfs.util.XMLUtils.addSaxString(XMLUtils.java:193)
      	at org.apache.hadoop.hdfs.server.namenode.FSEditLogOp.appendAclEntriesToXml(FSEditLogOp.java:4085)
      	at org.apache.hadoop.hdfs.server.namenode.FSEditLogOp.access$3300(FSEditLogOp.java:132)
      	at org.apache.hadoop.hdfs.server.namenode.FSEditLogOp$SetAclOp.toXml(FSEditLogOp.java:3528)
      	at org.apache.hadoop.hdfs.server.namenode.FSEditLogOp.outputToXml(FSEditLogOp.java:3928)
      	at org.apache.hadoop.hdfs.tools.offlineEditsViewer.XmlEditsVisitor.visitOp(XmlEditsVisitor.java:116)
      	at org.apache.hadoop.hdfs.tools.offlineEditsViewer.OfflineEditsBinaryLoader.loadEdits(OfflineEditsBinaryLoader.java:80)
      	at org.apache.hadoop.hdfs.tools.offlineEditsViewer.OfflineEditsViewer.go(OfflineEditsViewer.java:142)
      	at org.apache.hadoop.hdfs.tools.offlineEditsViewer.OfflineEditsViewer.run(OfflineEditsViewer.java:228)
      	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
      	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
      	at org.apache.hadoop.hdfs.tools.offlineEditsViewer.OfflineEditsViewer.main(OfflineEditsViewer.java:237)
      [root@hdfs-nfs current]# 
      

      This is reproducible by setting an acl on a file and then running the OEV on the editsinprogress file.

      The stats and binary parsers run OK.

        Attachments

        1. HDFS-6232.2.patch
          4 kB
          Akira Ajisaka
        2. HDFS-6232.patch
          3 kB
          Akira Ajisaka

          Issue Links

            Activity

              People

              • Assignee:
                ajisakaa Akira Ajisaka
                Reporter:
                schu Stephen Chu
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: