[ https://issues.apache.org/jira/browse/HIVE-1852?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12971991#action_12971991 ]
Joydeep Sen Sarma commented on HIVE-1852: ----------------------------------------- what happens when there are multiple srcs: srcs = fs.listStatus(srcf); for (FileStatus src : srcs) { if (!fs.rename(src.getPath(), tmppath)) { we can't rename multiple sources to the same target. this happens when the input path is a glob (which i think the load command allows). can we special case this optimization (apply only when srcs.length == 1)? > Reduce unnecessary DFSClient.rename() calls > ------------------------------------------- > > Key: HIVE-1852 > URL: https://issues.apache.org/jira/browse/HIVE-1852 > Project: Hive > Issue Type: Improvement > Reporter: Ning Zhang > Assignee: Ning Zhang > Attachments: HIVE-1852.2.patch, HIVE-1852.patch > > > In Hive client side (MoveTask etc), DFSCleint.rename() is called for every > file inside a directory. It is very expensive for a large directory in a busy > DFS namenode. We should replace it with a single rename() call on the whole > directory. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.