You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Steve Loughran (JIRA)" <ji...@apache.org> on 2019/02/12 17:07:00 UTC

[jira] [Created] (HADOOP-16107) LocalFileSystem doesn't all create() or new builder calls

Steve Loughran created HADOOP-16107:
---------------------------------------

             Summary: LocalFileSystem doesn't all create() or new builder calls
                 Key: HADOOP-16107
                 URL: https://issues.apache.org/jira/browse/HADOOP-16107
             Project: Hadoop Common
          Issue Type: Bug
          Components: fs
    Affects Versions: 3.0.3, 3.3.0
            Reporter: Steve Loughran
            Assignee: Steve Loughran


LocalFS is a subclass of filterFS, but overrides create and open so that checksums are created and read. 

MAPREDUCE-7184 has thrown up that the new builder openFile() call is being forwarded to the innerFS without CRC checking. Reviewing/fixing that has shown that some of the create methods aren't being correctly wrapped, so not generating CRCs

* createFile() builder

The following create calls

{code}
  public FSDataOutputStream createNonRecursive(final Path f,
      final FsPermission permission,
      final EnumSet<CreateFlag> flags,
      final int bufferSize,
      final short replication,
      final long blockSize,
      final Progressable progress) throws IOException;

  public FSDataOutputStream create(final Path f,
      final FsPermission permission,
      final EnumSet<CreateFlag> flags,
      final int bufferSize,
      final short replication,
      final long blockSize,
      final Progressable progress,
      final Options.ChecksumOpt checksumOpt) throws IOException {
    return super.create(f, permission, flags, bufferSize, replication,
        blockSize, progress, checksumOpt);
  }
{code}

This means that applications using these methods, directly or indirectly to create files aren't actually generating checksums.

Fix: implement these methods & relay to local create calls, not to the inner FS.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-dev-help@hadoop.apache.org