diff --git a/cmd/cortex/main.go b/cmd/cortex/main.go index e317d7b6fa2..e6af811e474 100644 --- a/cmd/cortex/main.go +++ b/cmd/cortex/main.go @@ -92,7 +92,7 @@ func main() { flag.DurationVar(&cfg.remoteTimeout, "remote.timeout", 5*time.Second, "Timeout for downstream ingesters.") flag.DurationVar(&cfg.ingesterConfig.FlushCheckPeriod, "ingester.flush-period", 1*time.Minute, "Period with which to attempt to flush chunks.") flag.DurationVar(&cfg.ingesterConfig.RateUpdatePeriod, "ingester.rate-update-period", 15*time.Second, "Period with which to update the per-user ingestion rates.") - flag.DurationVar(&cfg.ingesterConfig.MaxChunkAge, "ingester.max-chunk-age", 10*time.Minute, "Maximum chunk age before flushing.") + flag.DurationVar(&cfg.ingesterConfig.MaxChunkAge, "ingester.max-chunk-age", 1*time.Hour, "Maximum chunk age before flushing.") flag.IntVar(&cfg.numTokens, "ingester.num-tokens", 128, "Number of tokens for each ingester.") flag.IntVar(&cfg.distributorConfig.ReplicationFactor, "distributor.replication-factor", 3, "The number of ingesters to write to and read from.") flag.IntVar(&cfg.distributorConfig.MinReadSuccesses, "distributor.min-read-successes", 2, "The minimum number of ingesters from which a read must succeed.") diff --git a/ingester/ingester.go b/ingester/ingester.go index 15334625718..6e6c6e1bb74 100644 --- a/ingester/ingester.go +++ b/ingester/ingester.go @@ -515,7 +515,7 @@ func (i *Ingester) flushSeries(u *userState, fp model.Fingerprint, series *memor } firstTime := series.chunkDescs[0].FirstTime() - flush := immediate || model.Now().Sub(firstTime) > i.cfg.MaxChunkAge + flush := immediate || len(series.chunkDescs) > 1 || model.Now().Sub(firstTime) > i.cfg.MaxChunkAge u.fpLocker.Unlock(fp) if flush {