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

Hari Shreedharan commented on FLUME-1121:
-----------------------------------------

Brock:

I noticed more than one problem. One of the issues was that even though the 
source got exceptions when trying to write more events than the capacity of the 
channel(N), the source got exceptions(there was no sink attached), for the 
extra events(K). Later when I removed the source, and simply attached a sink, 
then the replay function would create a transaction for the internal memory 
channel to load all events from the file. Though this should only have been N, 
it tries to load N+K events, and fails right away. In the above example, N was 
100 and K was 7. K can be anything, the only thing that determines K is the 
time you stop sending events. 

I believe the replay function, and the way we load events from the file to 
memory channel need to be refactored. I think we should not accept new events 
from the source, until and unless we have replayed every event from the file 
and got commits from the sink for all those transactions. This way we can 
guarantee that all events will eventually be replayed and no events are 
lost(since the source would send failure back to the previous hop). 

That said, things seem to look OK if number of events put into the channel < 
total channel capacity. 
                
> Recoverable Memory Channel cannot recover data 
> -----------------------------------------------
>
>                 Key: FLUME-1121
>                 URL: https://issues.apache.org/jira/browse/FLUME-1121
>             Project: Flume
>          Issue Type: Bug
>          Components: Sinks+Sources
>    Affects Versions: v1.2.0
>            Reporter: Hari Shreedharan
>
> Run an agent with a source, like seq with a recoverable memory channel and no 
> sink. kill the process with ctrl-C. Run an agent now with no source, but 
> logger sink and the same recoverable memory channel. I expected the events 
> generated by the source earlier should be written to the sink, but no events 
> with picked up. 

--
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

        

Reply via email to