diff --git a/storage/tsdb/tsdb.go b/storage/tsdb/tsdb.go index 7cc8294dd..18ada9792 100644 --- a/storage/tsdb/tsdb.go +++ b/storage/tsdb/tsdb.go @@ -126,6 +126,10 @@ type Options struct { // Open returns a new storage backed by a TSDB database that is configured for Prometheus. func Open(path string, l log.Logger, r prometheus.Registerer, opts *Options) (*tsdb.DB, error) { + if opts.MinBlockDuration > opts.MaxBlockDuration { + return nil, errors.Errorf("tsdb max block duration (%v) must be larger than min block duration (%v)", + opts.MaxBlockDuration, opts.MinBlockDuration) + } // Start with smallest block duration and create exponential buckets until the exceed the // configured maximum block duration. rngs := tsdb.ExponentialBlockRanges(int64(time.Duration(opts.MinBlockDuration).Seconds()*1000), 10, 3)