You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Leif Hedstrom (JIRA)" <ji...@apache.org> on 2013/02/14 17:54:12 UTC

[jira] [Commented] (TS-1606) Log buffers are not flushed periodically when TS is launched with NO_REMOTE_MANAGEMENT flag

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

Leif Hedstrom commented on TS-1606:
-----------------------------------

Hi Yakov,

two comments on the patch:

1) Shouldn't it be:

+  if (!(init_status & PERIODIC_WAKEUP_SCHEDULED)) {
....

(I moved all the code into the if, to avoid the return)


2) Is it really necessary to call init_periodic_tasks() twice? I suspect it's enough to keep the one in init_when_enabled(), don't you think?



Cheers!

-- Leif

                
> Log buffers are not flushed periodically when TS is launched with NO_REMOTE_MANAGEMENT flag
> -------------------------------------------------------------------------------------------
>
>                 Key: TS-1606
>                 URL: https://issues.apache.org/jira/browse/TS-1606
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Logging
>    Affects Versions: 3.3.0, 3.2.0
>            Reporter: Yakov Markovitch
>            Assignee: Leif Hedstrom
>             Fix For: 3.3.1
>
>         Attachments: trafficserver-periodic-tasks.patch
>
>
> When TS binary is launched with NO_REMOTE_MANAGEMENT flag (e.g., when launched not as a daemon but directly - this is extremely convenient for debugging), the PeriodicWakeup event is not scheduled.
> As a result, Log::flush_thread_main() does not wake up periodically, but only on log buffer overflow. Coupled with a horribly wrong activation check in Log::flush_thread_main():
> {code}
> if (now > last_time) {
>   if ((now % PERIODIC_TASKS_INTERVAL) == 0) {
>   // We run only when waken up at the moment which is exact
>   // multiple of PERIODIC_TASKS_INTERVAL!
> {code}
> this leads to that probability of any log output is low.

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