-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7115/
-----------------------------------------------------------
(Updated Sept. 14, 2012, 5:29 p.m.)
Review request for Flume.
Changes
-------
Updated patch and remove whitespace. Also do the replay logic regarding fast
replay right in log.
Description
-------
This patch addresses the issue by moving the logic of whether or not to use
fast full replay up to the Log class. The reason this is required is because
even for a non-existing checkpoint upon start, the file itself will be be
created when we create the BackingStore for FlumeEvent queue, which must be
done before we create the CheckpointBuilder.
This addresses bug FLUME-1583.
https://issues.apache.org/jira/browse/FLUME-1583
Diffs (updated)
-----
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/CheckpointRebuilder.java
6e1d2fc
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/Log.java
1d91460
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/ReplayHandler.java
7c32526
flume-ng-channels/flume-file-channel/src/test/java/org/apache/flume/channel/file/TestCheckpointRebuilder.java
PRE-CREATION
flume-ng-channels/flume-file-channel/src/test/java/org/apache/flume/channel/file/TestFileChannelRestart.java
4133573
flume-ng-channels/flume-file-channel/src/test/java/org/apache/flume/channel/file/TestUtils.java
2b88b96
Diff: https://reviews.apache.org/r/7115/diff/
Testing
-------
There is no automated way to test whether a fast full replay occurred. I have
added two tests
testFastReplayNegativeTestV1
testFastReplayNegativeTestV2
which can be used to manually verify the logic. When run you look for
Found NextFileID 0, from []
Not disabling fast full replay because checkpoint does not exists:
.../chkpt/checkpoint
Found NextFileID 3, from [....]
Disabling fast full replay because checkpoint exists: .../chkpt/checkpoint
in the debug output. I think we can remove the need for manual testing via
FLUME-1580.
Thanks,
Brock Noland