HDFS-比赛条件

时间:2019-10-01 16:13:56

标签: java hadoop hdfs

如果我使用copyFromLocalFile()将文件放置在HDFS中,并且将覆盖设置为false,那么如果第二个进程调用copyFromLocalFile()写入HDFS上的相同位置,也会发生什么情况在第一个看跌期权完成之前覆盖设置为false的内容吗?

如果第二个呼叫将抛出IOException,我是否可以确定该异常是由于当前正在进行的现有放置操作而不是由于网络故障或其他问题引起的?

1 个答案:

答案 0 :(得分:1)

HDFS允许原子创建,因此第二次写入将失败。

(来源:作为活跃的HDFS开发人员的个人经验)

第二次呼叫将引发FileAlreadyExistsException in its Javadoc记录的ClientProtocol