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

Remove guava usage in the hdfs-client module

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      The following classes in hdfs-client use Google's guava library:

      ./src/main/java/org/apache/hadoop/hdfs/BlockReaderFactory.java
      ./src/main/java/org/apache/hadoop/hdfs/BlockReaderLocal.java
      ./src/main/java/org/apache/hadoop/hdfs/ClientContext.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSClient.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSClientFaultInjector.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSInotifyEventInputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSInputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSStripedInputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSStripedOutputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/DFSUtilClient.java
      ./src/main/java/org/apache/hadoop/hdfs/DataStreamer.java
      ./src/main/java/org/apache/hadoop/hdfs/DistributedFileSystem.java
      ./src/main/java/org/apache/hadoop/hdfs/KeyProviderCache.java
      ./src/main/java/org/apache/hadoop/hdfs/NameNodeProxiesClient.java
      ./src/main/java/org/apache/hadoop/hdfs/PeerCache.java
      ./src/main/java/org/apache/hadoop/hdfs/RemoteBlockReader2.java
      ./src/main/java/org/apache/hadoop/hdfs/StripedDataStreamer.java
      ./src/main/java/org/apache/hadoop/hdfs/XAttrHelper.java
      ./src/main/java/org/apache/hadoop/hdfs/client/HdfsDataInputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/client/HdfsDataOutputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/client/impl/DfsClientConf.java
      ./src/main/java/org/apache/hadoop/hdfs/client/impl/LeaseRenewer.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/BlockStoragePolicy.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/CacheDirectiveInfo.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/CacheDirectiveIterator.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/DatanodeID.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/LocatedBlock.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/SnapshotDiffReport.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/datatransfer/PacketHeader.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/datatransfer/PacketReceiver.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/datatransfer/PipelineAck.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/datatransfer/sasl/DataTransferSaslUtil.java
      ./src/main/java/org/apache/hadoop/hdfs/protocol/datatransfer/sasl/SaslDataTransferClient.java
      ./src/main/java/org/apache/hadoop/hdfs/protocolPB/ClientDatanodeProtocolTranslatorPB.java
      ./src/main/java/org/apache/hadoop/hdfs/protocolPB/ClientNamenodeProtocolTranslatorPB.java
      ./src/main/java/org/apache/hadoop/hdfs/protocolPB/PBHelperClient.java
      ./src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockMetadataHeader.java
      ./src/main/java/org/apache/hadoop/hdfs/shortcircuit/DfsClientShm.java
      ./src/main/java/org/apache/hadoop/hdfs/shortcircuit/DfsClientShmManager.java
      ./src/main/java/org/apache/hadoop/hdfs/shortcircuit/DomainSocketFactory.java
      ./src/main/java/org/apache/hadoop/hdfs/shortcircuit/ShortCircuitCache.java
      ./src/main/java/org/apache/hadoop/hdfs/shortcircuit/ShortCircuitReplica.java
      ./src/main/java/org/apache/hadoop/hdfs/shortcircuit/ShortCircuitShm.java
      ./src/main/java/org/apache/hadoop/hdfs/util/ByteArrayManager.java
      ./src/main/java/org/apache/hadoop/hdfs/util/StripedBlockUtil.java
      ./src/main/java/org/apache/hadoop/hdfs/web/ByteRangeInputStream.java
      ./src/main/java/org/apache/hadoop/hdfs/web/JsonUtilClient.java
      ./src/main/java/org/apache/hadoop/hdfs/web/TokenAspect.java
      ./src/main/java/org/apache/hadoop/hdfs/web/URLConnectionFactory.java
      ./src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java
      ./src/main/java/org/apache/hadoop/hdfs/web/resources/UserParam.java
      ./src/test/java/org/apache/hadoop/hdfs/TestPeerCache.java
      ./src/test/java/org/apache/hadoop/hdfs/client/impl/TestLeaseRenewer.java
      ./src/test/java/org/apache/hadoop/hdfs/web/TestByteRangeInputStream.java
      ./src/test/java/org/apache/hadoop/hdfs/web/TestURLConnectionFactory.java
      

      Guava has created quite a few dependency headache for downstream, it would be nice to not using Guava code in the hdfs-client module.

      Attachments

        Activity

          People

            Unassigned Unassigned
            wheat9 Haohui Mai
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated: