Return-Path: Delivered-To: apmail-hadoop-common-issues-archive@minotaur.apache.org Received: (qmail 70828 invoked from network); 17 Sep 2009 18:30:20 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 17 Sep 2009 18:30:20 -0000 Received: (qmail 30240 invoked by uid 500); 17 Sep 2009 18:30:20 -0000 Delivered-To: apmail-hadoop-common-issues-archive@hadoop.apache.org Received: (qmail 30177 invoked by uid 500); 17 Sep 2009 18:30:20 -0000 Mailing-List: contact common-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: common-issues@hadoop.apache.org Delivered-To: mailing list common-issues@hadoop.apache.org Received: (qmail 30166 invoked by uid 99); 17 Sep 2009 18:30:20 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 17 Sep 2009 18:30:20 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 17 Sep 2009 18:30:18 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 7C563234C044 for ; Thu, 17 Sep 2009 11:29:57 -0700 (PDT) Message-ID: <1209790952.1253212197494.JavaMail.jira@brutus> Date: Thu, 17 Sep 2009 11:29:57 -0700 (PDT) From: "Sanjay Radia (JIRA)" To: common-issues@hadoop.apache.org Subject: [jira] Commented: (HADOOP-4952) Improved files system interface for the application writer. MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HADOOP-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12756678#action_12756678 ] Sanjay Radia commented on HADOOP-4952: -------------------------------------- > The primitiveCreate(), primitiveMkdir() methods seem to have there only for backward compatibility and would probably go away in a future release. Can it be marked as Deprecated? These are newly added protected methods to support FileContext on top of FileSystem (nothing to do with backward compatibility). Will be removed when the HADOOP-6223 completes. > Improved files system interface for the application writer. > ----------------------------------------------------------- > > Key: HADOOP-4952 > URL: https://issues.apache.org/jira/browse/HADOOP-4952 > Project: Hadoop Common > Issue Type: Improvement > Affects Versions: 0.21.0 > Reporter: Sanjay Radia > Assignee: Sanjay Radia > Attachments: FileContext-common10.patch, FileContext-common11.patch, FileContext-common12.patch, FileContext-common13.patch, FileContext-common14.patch, FileContext-common16.patch, FileContext-common18.patch, FileContext-common19.patch, FileContext-common21.patch, FileContext-common22.patch, FileContext-hdfs10.patch, FileContext-hdfs11.patch, FileContext3.patch, FileContext5.patch, FileContext6.patch, FileContext7.patch, FileContext9.patch, Files.java, Files.java, FilesContext1.patch, FilesContext2.patch > > > Currently the FIleSystem interface serves two purposes: > - an application writer's interface for using the Hadoop file system > - a file system implementer's interface (e.g. hdfs, local file system, kfs, etc) > This Jira proposes that we provide a simpler interfaces for the application writer and leave the FilsSystem interface for the implementer of a filesystem. > - Filesystem interface has a confusing set of methods for the application writer > - We could make it easier to take advantage of the URI file naming > ** Current approach is to get FileSystem instance by supplying the URI and then access that name space. It is consistent for the FileSystem instance to not accept URIs for other schemes, but we can do better. > ** The special copyFromLocalFIle can be generalized as a copyFile where the src or target can be generalized to any URI, including the local one. > ** The proposed scheme (below) simplifies this. > - The client side config can be simplified. > ** New config() by default uses the default config. Since this is the common usage pattern, one should not need to always pass the config as a parameter when accessing the file system. > - > ** It does not handle multiple file systems too well. Today a site.xml is derived from a single Hadoop cluster. This does not make sense for multiple Hadoop clusters which may have different defaults. > ** Further one should need very little to configure the client side: > *** Default files system. > *** Block size > *** Replication factor > *** Scheme to class mapping > ** It should be possible to take Blocksize and replication factors defaults from the target file system, rather then the client size config. I am not suggesting we don't allow setting client side defaults, but most clients do not care and would find it simpler to take the defaults for their systems from the target file system. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.