You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flume.apache.org by "Hari Shreedharan (JIRA)" <ji...@apache.org> on 2012/05/30 05:47:23 UTC
[jira] [Commented] (FLUME-1236) File channel has a race condition
between start and create transaction method
[ https://issues.apache.org/jira/browse/FLUME-1236?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13285367#comment-13285367 ]
Hari Shreedharan commented on FLUME-1236:
-----------------------------------------
This gets thrown continuously when this situation is encountered:
2012-05-29 20:45:56,064 ERROR source.PollableSourceRunner: Unhandled exception, logging and sleeping for 5000ms
java.lang.IllegalStateException: Channel closed
at com.google.common.base.Preconditions.checkState(Preconditions.java:145)
at org.apache.flume.channel.file.FileChannel.createTransaction(FileChannel.java:237)
at org.apache.flume.channel.BasicChannelSemantics.getTransaction(BasicChannelSemantics.java:118)
at org.apache.flume.channel.ChannelProcessor.processEvent(ChannelProcessor.java:248)
at org.apache.flume.source.SequenceGeneratorSource.process(SequenceGeneratorSource.java:48)
at org.apache.flume.source.PollableSourceRunner$PollingRunner.run(PollableSourceRunner.java:137)
at java.lang.Thread.run(Thread.java:680)
2012-05-29 20:46:01,063 ERROR flume.SinkRunner: Unhandled exception, logging and sleeping for 5000ms
java.lang.IllegalStateException: Channel closed
at com.google.common.base.Preconditions.checkState(Preconditions.java:145)
at org.apache.flume.channel.file.FileChannel.createTransaction(FileChannel.java:237)
at org.apache.flume.channel.BasicChannelSemantics.getTransaction(BasicChannelSemantics.java:118)
at org.apache.flume.sink.LoggerSink.process(LoggerSink.java:61)
at org.apache.flume.sink.DefaultSinkProcessor.process(DefaultSinkProcessor.java:68)
at org.apache.flume.SinkRunner$PollingRunner.run(SinkRunner.java:147)
at java.lang.Thread.run(Thread.java:680)
2012-05-29 20:46:01,065 ERROR source.PollableSourceRunner: Unhandled exception, logging and sleeping for 5000ms
java.lang.IllegalStateException: Channel closed
at com.google.common.base.Preconditions.checkState(Preconditions.java:145)
at org.apache.flume.channel.file.FileChannel.createTransaction(FileChannel.java:237)
at org.apache.flume.channel.BasicChannelSemantics.getTransaction(BasicChannelSemantics.java:118)
at org.apache.flume.channel.ChannelProcessor.processEvent(ChannelProcessor.java:248)
at org.apache.flume.source.SequenceGeneratorSource.process(SequenceGeneratorSource.java:48)
at org.apache.flume.source.PollableSourceRunner$PollingRunner.run(PollableSourceRunner.java:137)
at java.lang.Thread.run(Thread.java:680)
2012-05-29 20:46:06,064 ERROR flume.SinkRunner: Unhandled exception, logging and sleeping for 5000ms
java.lang.IllegalStateException: Channel closed
at com.google.common.base.Preconditions.checkState(Preconditions.java:145)
at org.apache.flume.channel.file.FileChannel.createTransaction(FileChannel.java:237)
at org.apache.flume.channel.BasicChannelSemantics.getTransaction(BasicChannelSemantics.java:118)
at org.apache.flume.sink.LoggerSink.process(LoggerSink.java:61)
at org.apache.flume.sink.DefaultSinkProcessor.process(DefaultSinkProcessor.java:68)
at org.apache.flume.SinkRunner$PollingRunner.run(SinkRunner.java:147)
at java.lang.Thread.run(Thread.java:680)
2012-05-29 20:46:06,066 ERROR source.PollableSourceRunner: Unhandled exception, logging and sleeping for 5000ms
java.lang.IllegalStateException: Channel closed
at com.google.common.base.Preconditions.checkState(Preconditions.java:145)
at org.apache.flume.channel.file.FileChannel.createTransaction(FileChannel.java:237)
at org.apache.flume.channel.BasicChannelSemantics.getTransaction(BasicChannelSemantics.java:118)
at org.apache.flume.channel.ChannelProcessor.processEvent(ChannelProcessor.java:248)
at org.apache.flume.source.SequenceGeneratorSource.process(SequenceGeneratorSource.java:48)
at org.apache.flume.source.PollableSourceRunner$PollingRunner.run(PollableSourceRunner.java:137)
at java.lang.Thread.run(Thread.java:680)
> File channel has a race condition between start and create transaction method
> -----------------------------------------------------------------------------
>
> Key: FLUME-1236
> URL: https://issues.apache.org/jira/browse/FLUME-1236
> Project: Flume
> Issue Type: Bug
> Components: Channel
> Affects Versions: v1.2.0
> Reporter: Hari Shreedharan
> Assignee: Hari Shreedharan
> Fix For: v1.2.0
>
>
> Lifecycle supervisor starts all components asynchronously. So the channel's replay() would not have returned before the createTxn() is called, since the sink could have started too. This causes a preconditions check failure, and logs errors.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira