chukwa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sourygna Luangsay (JIRA)" <>
Subject [jira] [Commented] (CHUKWA-668) Infinite loop in FileTailingAdaptor
Date Thu, 01 Nov 2012 19:33:12 GMT


Sourygna Luangsay commented on CHUKWA-668:

The patch I submit fix the loop problem.

It also covers 2 other small bugs:
- In LWFTAdaptor#tailFile(), return value hasMoreData was never updated, causing some problem
  if the length of the data appended is greater than MAX_READ_SIZE_OPT.
- In FileTailingAdaptor#tailFile(), I think we shouldn't call slurp if len == fileReadOffset
  fixedNameLastModified <= lastSlurpTime (the file just stopped receiving more logs) so
  I moved the slurp call in the "if (fixedNameLastModified > lastSlurpTime)" condition.

> Infinite loop in FileTailingAdaptor
> -----------------------------------
>                 Key: CHUKWA-668
>                 URL:
>             Project: Chukwa
>          Issue Type: Bug
>          Components: Data Collection
>    Affects Versions: 0.6.0
>            Reporter: Sourygna Luangsay
>             Fix For: 0.6.0
>         Attachments: chukwa-668.patch
> In, lastSlurpTime is never updated, triggering an infinite loop if we
use the
> adaptor FileTailingAdaptor and subclass adaptors.
> Loop occurs like this:
> 1) lastSlurpTime is never changed and thus always 0.
> 2) we append some data to the log file and we do a normal slurp
> 3) after this slurp, we have: len == fileReadOffset && fixedNameLastModified
> lastSlurpTime
>    thus we think log file has rotated when it hasn't: fileReadOffset is reset to 0
> 4) we get: len > fileReadOffset and so we do a slurp of len bytes.
> 5) we are in the same situation as 3)  -> infinite loop: the agent never stops sending
>    to the collector although log files does not change.
> It seems like this bug comes from CHUKWA-646. The first patch tailfile.patch seemed to
do it
> right but in the second patch, the line "lastSlurpTime = System.currentTimeMillis();"
> disapeared from

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:

View raw message