[ 
https://issues.apache.org/jira/browse/FLUME-2376?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994690#comment-13994690
 ] 

Hari Shreedharan commented on FLUME-2376:
-----------------------------------------

This seems to have been caused by actual data corruption or a full disk. Is it 
either of the two? If the disk is not full, run the file channel tool to get 
rid of the corrupt events.

> File Channel corrupted - java.io.IOException: Unable to read next Transaction 
> from log file
> -------------------------------------------------------------------------------------------
>
>                 Key: FLUME-2376
>                 URL: https://issues.apache.org/jira/browse/FLUME-2376
>             Project: Flume
>          Issue Type: Bug
>          Components: File Channel
>    Affects Versions: v1.5.0
>         Environment: windows
>            Reporter: Arun
>
> I am using filechannel with dual checkpoint enabled. 
> getting below error when I restart my agent.
> earlier process was abruptly killed. filechannel can not be recovered from 
> state.
> Actually i am using version 1.4.0 with patch for 
> https://issues.apache.org/jira/browse/FLUME-2307
> is there way to recover filechannel data.
> --------- stack trace -----------
> ERROR: Failed to initialize Log on [channel=c2]
> java.io.IOException: Unable to read next Transaction from log file 
> /data1/collection/data/c2/flume-data/log-198 at offset 69616
>       at 
> org.apache.flume.channel.file.LogFile$SequentialReader.next(LogFile.java:629) 
> ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.ReplayHandler.next(ReplayHandler.java:383) 
> ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.ReplayHandler.replayLog(ReplayHandler.java:280) 
> ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at org.apache.flume.channel.file.Log.doReplay(Log.java:480) 
> ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at org.apache.flume.channel.file.Log.replay(Log.java:407) 
> ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.FileChannel.start(FileChannel.java:273) 
> [my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.lifecycle.LifecycleSupervisor$MonitorRunnable.run(LifecycleSupervisor.java:251)
>  [my-agent-1.0-SNAPSHOT.jar:na]
>       at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
> [na:1.7.0_45]
>       at java.util.concurrent.FutureTask.runAndReset(Unknown Source) 
> [na:1.7.0_45]
>       at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown
>  Source) [na:1.7.0_45]
>       at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown
>  Source) [na:1.7.0_45]
>       at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
> [na:1.7.0_45]
>       at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
> [na:1.7.0_45]
>       at java.lang.Thread.run(Unknown Source) [na:1.7.0_45]
> Caused by: com.google.protobuf.InvalidProtocolBufferException: Message 
> missing required fields: type, transactionID, writeOrderID
>       at 
> com.google.protobuf.UninitializedMessageException.asInvalidProtocolBufferException(UninitializedMessageException.java:81)
>  ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.proto.ProtosFactory$TransactionEventHeader$Builder.buildParsed(ProtosFactory.java:2912)
>  ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.proto.ProtosFactory$TransactionEventHeader$Builder.access$5200(ProtosFactory.java:2846)
>  ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.proto.ProtosFactory$TransactionEventHeader.parseDelimitedFrom(ProtosFactory.java:2804)
>  ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.TransactionEventRecord.fromByteArray(TransactionEventRecord.java:196)
>  ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.LogFileV3$SequentialReader.doNext(LogFileV3.java:359)
>  ~[my-agent-1.0-SNAPSHOT.jar:na]
>       at 
> org.apache.flume.channel.file.LogFile$SequentialReader.next(LogFile.java:625) 
> ~[my-agent-1.0-SNAPSHOT.jar:na]
>       ... 13 common frames omitted
> Apr 28, 2014 11:43:02 PM org.apache.flume.channel.file.FileChannel 
> start():284 
> ERROR: Failed to start the file channel [channel=c2]



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to