[
https://issues.apache.org/jira/browse/FLUME-3309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ralph Goers closed FLUME-3309.
------------------------------
> 多文件采集时,因inode重复,造成文件读取异常
> ------------------------
>
> Key: FLUME-3309
> URL: https://issues.apache.org/jira/browse/FLUME-3309
> Project: Flume
> Issue Type: Improvement
> Components: File Channel
> Affects Versions: 1.7.0, 1.8.0
> Environment: linux
> Reporter: daisy
> Priority: Major
> Labels: patch
> Original Estimate: 0.2h
> Remaining Estimate: 0.2h
>
> 1)前提
> 读取一个目录下的所有文件,文件名包含年月日时分秒,每天凌晨删除前一天文件。
> 2)现象
> 部分记录丢失,或者部分记录被截断,同时日志中不断出现Pos ** is larger than file size! Restarting from
> pos 0 信息。
> 3)问题分析
> 文件通过inode进行唯一标识,ReliableTaildirEventReader类中的tailFiles变量只有不断新增,没有删除。当文件从磁盘删除后,inode就会被重用,会出现同一个inode对应不同的文件。同一个inode第二次被使用时,如果当前文件小于已经删除的文件大小,pos被重置为0,,不存在问题;一旦当前文件大于已经删除的文件大小,就会按照老位置继续读取文件,信息就发生丢失。
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]