> On 七月 20, 2016, 3:55 a.m., Mike Percy wrote:
> > flume-ng-sources/flume-taildir-source/src/main/java/org/apache/flume/source/taildir/ReliableTaildirEventReader.java,
> >  line 206
> > <https://reviews.apache.org/r/50134/diff/3/?file=1447305#file1447305line206>
> >
> >     Can we put this if statement in the above loop, right under line 203, 
> > to avoid looping over all of the events twice?
> >     
> >     Hotspot should optimize-out the branches (and probably even the loop 
> > when everything is disabled) so I think we will get better performance in 
> > general.
> >     
> >     So it would look like:
> >     
> >     // Add headers to each event as needed.
> >     Map<String, String> headers = currentFile.getHeaders();
> >     for (Event event : events) {
> >       if (headers != null && !headers.isEmpty()) {
> >         event.getHeaders().putAll(headers);
> >       }
> >       if (annotateFileName) {
> >         String filename = currentFile.getPath();
> >         event.getHeaders().put(fileNameHeader, filename);
> >       }
> >     }

Thanks. If headers==null && annotateFileName==false, the program will execute 
events.size() times. So I think the following will get better performance:
  
    if (annotateFileName || (headers != null && !headers.isEmpty())) {
      for (Event event : events) {
        if (headers != null && !headers.isEmpty()) {
          event.getHeaders().putAll(headers);
        }
        if (annotateFileName) {
          event.getHeaders().put(fileNameHeader, currentFile.getPath());
        }
      }
    }


> On 七月 20, 2016, 3:55 a.m., Mike Percy wrote:
> > flume-ng-sources/flume-taildir-source/src/test/java/org/apache/flume/source/taildir/TestTaildirSource.java,
> >  line 49
> > <https://reviews.apache.org/r/50134/diff/3/?file=1447308#file1447308line49>
> >
> >     It is allowed to have long lines that are imports. No need to wrap this 
> > one. (Usually, though, you need to wrap long lines.)

In order to be consistent with the following import appeared before?I wrap that 
one.

import static 
org.apache.flume.source.taildir.TaildirSourceConfigurationConstants
                  .FILE_GROUPS_PREFIX;


- qiao


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/50134/#review142898
-----------------------------------------------------------


On 七月 19, 2016, 3:09 p.m., qiao wen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/50134/
> -----------------------------------------------------------
> 
> (Updated 七月 19, 2016, 3:09 p.m.)
> 
> 
> Review request for Flume.
> 
> 
> Bugs: FLUME-2955
>     https://issues.apache.org/jira/browse/FLUME-2955
> 
> 
> Repository: flume-git
> 
> 
> Description
> -------
> 
> Log file path is necessary to locate the log. Add a parameter PATH_HEADER in 
> the TaildirSourceConstants. If the parameter is true, the file path will be 
> added to the header of flume event. Defaut value is false.
> 
> 
> Diffs
> -----
> 
>   flume-ng-doc/sphinx/FlumeUserGuide.rst f9ca1b2 
>   
> flume-ng-sources/flume-taildir-source/src/main/java/org/apache/flume/source/taildir/ReliableTaildirEventReader.java
>  1409f25 
>   
> flume-ng-sources/flume-taildir-source/src/main/java/org/apache/flume/source/taildir/TaildirSource.java
>  eae1b1a 
>   
> flume-ng-sources/flume-taildir-source/src/main/java/org/apache/flume/source/taildir/TaildirSourceConfigurationConstants.java
>  2c49540 
>   
> flume-ng-sources/flume-taildir-source/src/test/java/org/apache/flume/source/taildir/TestTaildirSource.java
>  e090b74 
> 
> Diff: https://reviews.apache.org/r/50134/diff/
> 
> 
> Testing
> -------
> 
> mvn clean install -DskipTests -> built
> junit tests for flume-taildir-source module -> passed
> 
> 
> Thanks,
> 
> qiao wen
> 
>

Reply via email to