[
https://issues.apache.org/jira/browse/FLUME-2160?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13748731#comment-13748731
]
Ted Malaska commented on FLUME-2160:
------------------------------------
OK I've written the code to rename the file to a failed suffix. But before I
finished the Junits I notice that this error in this jira is related to the
close() function is being called on the currentFile.get().getDeserializer()
then a readnext call is being called.
>From looking at the current code I do not see how this could happen. Unless
>close() method on ReliableSpoolingFileEventReader from a different thread.
So Rob you may find that moving to the newest version of flume may solve your
problem.
My fix that I intend to add will not fix the core issue you are having. It
will only prevent it from repeating over and over.
I will submit that patch and I will close this bug with that. When you test
this on a new version of Flume let us know if this
"java.lang.IllegalStateException: Serializer has been closed" continues to
happen.
If if does we can make you a patch that will add some debugging to figure out
what is happening on your system.
> SpoolDirectorySource uncaught exception
> ---------------------------------------
>
> Key: FLUME-2160
> URL: https://issues.apache.org/jira/browse/FLUME-2160
> Project: Flume
> Issue Type: Bug
> Components: Sinks+Sources
> Affects Versions: v1.3.0
> Environment: Linux 2.6.32-358.14.1.el6.x86_64 #1 SMP Tue Jul 16
> 23:51:20 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
> Reporter: Rob
>
> Ive noticed some instabilities with Flume, of particular is this uncaught
> exception. One of the bigger challenges with this type of exception, is that
> the agent is now in a hung state repeating the same exception. The tooling
> for inspecting what file/event is causing the issue are lacking or
> non-existant, and architecturally there should be some functionality
> equivalant to the "dead-letter-queue". Here is the exception Im dealing with
> now:
> 13/08/14 15:37:05 ERROR source.SpoolDirectorySource: Uncaught exception in
> Runnable
> java.lang.IllegalStateException: Serializer has been closed
> at
> org.apache.flume.serialization.LineDeserializer.ensureOpen(LineDeserializer.java:124)
> at
> org.apache.flume.serialization.LineDeserializer.readEvents(LineDeserializer.java:88)
> at
> org.apache.flume.client.avro.ReliableSpoolingFileEventReader.readEvents(ReliableSpoolingFileEventReader.java:221)
> at
> org.apache.flume.source.SpoolDirectorySource$SpoolDirectoryRunnable.run(SpoolDirectorySource.java:154)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira