X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/f10431fe2de1037c3c0d51d8238cecf6c1206703..fc880f7053c5fc5a669d92453f4fc293e0b514f1:/services/crunch-run/logging.go diff --git a/services/crunch-run/logging.go b/services/crunch-run/logging.go index 96feb5faab..0083f0999c 100644 --- a/services/crunch-run/logging.go +++ b/services/crunch-run/logging.go @@ -1,3 +1,7 @@ +// Copyright (C) The Arvados Authors. All rights reserved. +// +// SPDX-License-Identifier: AGPL-3.0 + package main import ( @@ -175,7 +179,7 @@ func ReadWriteLines(in io.Reader, writer io.Writer, done chan<- bool) { // at most once per "crunchLogSecondsBetweenEvents" seconds. func NewThrottledLogger(writer io.WriteCloser) *ThrottledLogger { tl := &ThrottledLogger{} - tl.flush = make(chan struct{}) + tl.flush = make(chan struct{}, 1) tl.stopped = make(chan struct{}) tl.stopping = make(chan struct{}) tl.writer = writer @@ -261,7 +265,7 @@ func (arvlog *ArvLogWriter) Write(p []byte) (n int, err error) { } } - if (int64(arvlog.bufToFlush.Len()) > crunchLogBytesPerEvent || + if (int64(arvlog.bufToFlush.Len()) >= crunchLogBytesPerEvent || (now.Sub(arvlog.bufFlushedAt) >= crunchLogSecondsBetweenEvents) || arvlog.closing) && (arvlog.bufToFlush.Len() > 0) { // write to API @@ -369,7 +373,7 @@ func (arvlog *ArvLogWriter) rateLimit(line []byte, now time.Time) (bool, []byte) } } -// load the rate limit discovery config paramters +// load the rate limit discovery config parameters func loadLogThrottleParams(clnt IArvadosClient) { param, err := clnt.Discovery("crunchLimitLogBytesPerJob") if err == nil {