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