mirror of
https://github.com/prometheus/prometheus
synced 2025-01-13 02:14:08 +00:00
Unify LevelDB.*Options.
We have seven different types all called like LevelDB.*Options. One of them is the plain LevelDBOptions. All others are just wrapping that type without adding anything except clunkier handling. If there ever was a plan to add more specific options to the various LevelDB.*Options types, history has proven that nothing like that is going to happen anytime soon. To keep the code a bit shorter and more focused on the real (quite significant) complexities we have to deal with here, this commit reduces all uses of LevelDBOptions to the actual LevelDBOptions type. 1576 fewer characters to read... Change-Id: I3d7a2b7ffed78b337aa37f812c53c058329ecaa6
This commit is contained in:
parent
6bc083f38b
commit
e11e8c7a23
@ -46,11 +46,6 @@ type LevelDBFingerprintMetricIndex struct {
|
||||
*leveldb.LevelDBPersistence
|
||||
}
|
||||
|
||||
// LevelDBFingerprintMetricIndexOptions just wraps leveldb.LevelDBOptions.
|
||||
type LevelDBFingerprintMetricIndexOptions struct {
|
||||
leveldb.LevelDBOptions
|
||||
}
|
||||
|
||||
// IndexBatch implements FingerprintMetricIndex.
|
||||
func (i *LevelDBFingerprintMetricIndex) IndexBatch(mapping FingerprintMetricMapping) error {
|
||||
b := leveldb.NewBatch()
|
||||
@ -90,8 +85,8 @@ func (i *LevelDBFingerprintMetricIndex) Lookup(f *clientmodel.Fingerprint) (m cl
|
||||
|
||||
// NewLevelDBFingerprintMetricIndex returns a LevelDBFingerprintMetricIndex
|
||||
// object ready to use.
|
||||
func NewLevelDBFingerprintMetricIndex(o LevelDBFingerprintMetricIndexOptions) (*LevelDBFingerprintMetricIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o.LevelDBOptions)
|
||||
func NewLevelDBFingerprintMetricIndex(o leveldb.LevelDBOptions) (*LevelDBFingerprintMetricIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -175,15 +170,10 @@ func (i *LevelDBLabelNameFingerprintIndex) Has(l clientmodel.LabelName) (ok bool
|
||||
})
|
||||
}
|
||||
|
||||
// LevelDBLabelNameFingerprintIndexOptions just wraps leveldb.LevelDBOptions.
|
||||
type LevelDBLabelNameFingerprintIndexOptions struct {
|
||||
leveldb.LevelDBOptions
|
||||
}
|
||||
|
||||
// NewLevelLabelNameFingerprintIndex returns a LevelDBLabelNameFingerprintIndex
|
||||
// ready to use.
|
||||
func NewLevelLabelNameFingerprintIndex(o LevelDBLabelNameFingerprintIndexOptions) (*LevelDBLabelNameFingerprintIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o.LevelDBOptions)
|
||||
func NewLevelLabelNameFingerprintIndex(o leveldb.LevelDBOptions) (*LevelDBLabelNameFingerprintIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -215,11 +205,6 @@ type LevelDBLabelPairFingerprintIndex struct {
|
||||
*leveldb.LevelDBPersistence
|
||||
}
|
||||
|
||||
// LevelDBLabelSetFingerprintIndexOptions just wraps leveldb.LevelDBOptions.
|
||||
type LevelDBLabelSetFingerprintIndexOptions struct {
|
||||
leveldb.LevelDBOptions
|
||||
}
|
||||
|
||||
// IndexBatch implements LabelPairFingerprintMapping.
|
||||
func (i *LevelDBLabelPairFingerprintIndex) IndexBatch(m LabelPairFingerprintMapping) error {
|
||||
batch := leveldb.NewBatch()
|
||||
@ -283,8 +268,8 @@ func (i *LevelDBLabelPairFingerprintIndex) Has(p *LabelPair) (ok bool, err error
|
||||
|
||||
// NewLevelDBLabelSetFingerprintIndex returns a LevelDBLabelPairFingerprintIndex
|
||||
// object ready to use.
|
||||
func NewLevelDBLabelSetFingerprintIndex(o LevelDBLabelSetFingerprintIndexOptions) (*LevelDBLabelPairFingerprintIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o.LevelDBOptions)
|
||||
func NewLevelDBLabelSetFingerprintIndex(o leveldb.LevelDBOptions) (*LevelDBLabelPairFingerprintIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -332,15 +317,10 @@ func (i *LevelDBMetricMembershipIndex) Has(m clientmodel.Metric) (ok bool, err e
|
||||
return i.LevelDBPersistence.Has(k)
|
||||
}
|
||||
|
||||
// LevelDBMetricMembershipIndexOptions just wraps leveldb.LevelDBOptions
|
||||
type LevelDBMetricMembershipIndexOptions struct {
|
||||
leveldb.LevelDBOptions
|
||||
}
|
||||
|
||||
// NewLevelDBMetricMembershipIndex returns a LevelDBMetricMembershipIndex object
|
||||
// ready to use.
|
||||
func NewLevelDBMetricMembershipIndex(o LevelDBMetricMembershipIndexOptions) (*LevelDBMetricMembershipIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o.LevelDBOptions)
|
||||
func NewLevelDBMetricMembershipIndex(o leveldb.LevelDBOptions) (*LevelDBMetricMembershipIndex, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -122,14 +122,14 @@ func NewLevelDBMetricPersistence(baseDirectory string) (*LevelDBMetricPersistenc
|
||||
"Label Names and Value Pairs by Fingerprint",
|
||||
func() {
|
||||
var err error
|
||||
emission.FingerprintToMetrics, err = NewLevelDBFingerprintMetricIndex(LevelDBFingerprintMetricIndexOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
emission.FingerprintToMetrics, err = NewLevelDBFingerprintMetricIndex(
|
||||
leveldb.LevelDBOptions{
|
||||
Name: "Metrics by Fingerprint",
|
||||
Purpose: "Index",
|
||||
Path: baseDirectory + "/label_name_and_value_pairs_by_fingerprint",
|
||||
CacheSizeBytes: *fingerprintsToLabelPairCacheSize,
|
||||
},
|
||||
})
|
||||
)
|
||||
workers.MayFail(err)
|
||||
},
|
||||
},
|
||||
@ -150,13 +150,14 @@ func NewLevelDBMetricPersistence(baseDirectory string) (*LevelDBMetricPersistenc
|
||||
"High Watermarks by Fingerprint",
|
||||
func() {
|
||||
var err error
|
||||
emission.MetricHighWatermarks, err = NewLevelDBHighWatermarker(LevelDBHighWatermarkerOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
emission.MetricHighWatermarks, err = NewLevelDBHighWatermarker(
|
||||
leveldb.LevelDBOptions{
|
||||
Name: "High Watermarks",
|
||||
Purpose: "The youngest sample in the database per metric.",
|
||||
Path: baseDirectory + "/high_watermarks_by_fingerprint",
|
||||
CacheSizeBytes: *highWatermarkCacheSize,
|
||||
}})
|
||||
},
|
||||
)
|
||||
workers.MayFail(err)
|
||||
},
|
||||
},
|
||||
@ -164,14 +165,14 @@ func NewLevelDBMetricPersistence(baseDirectory string) (*LevelDBMetricPersistenc
|
||||
"Fingerprints by Label Name",
|
||||
func() {
|
||||
var err error
|
||||
emission.LabelNameToFingerprints, err = NewLevelLabelNameFingerprintIndex(LevelDBLabelNameFingerprintIndexOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
emission.LabelNameToFingerprints, err = NewLevelLabelNameFingerprintIndex(
|
||||
leveldb.LevelDBOptions{
|
||||
Name: "Fingerprints by Label Name",
|
||||
Purpose: "Index",
|
||||
Path: baseDirectory + "/fingerprints_by_label_name",
|
||||
CacheSizeBytes: *labelNameToFingerprintsCacheSize,
|
||||
},
|
||||
})
|
||||
)
|
||||
workers.MayFail(err)
|
||||
},
|
||||
},
|
||||
@ -179,14 +180,14 @@ func NewLevelDBMetricPersistence(baseDirectory string) (*LevelDBMetricPersistenc
|
||||
"Fingerprints by Label Name and Value Pair",
|
||||
func() {
|
||||
var err error
|
||||
emission.LabelPairToFingerprints, err = NewLevelDBLabelSetFingerprintIndex(LevelDBLabelSetFingerprintIndexOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
emission.LabelPairToFingerprints, err = NewLevelDBLabelSetFingerprintIndex(
|
||||
leveldb.LevelDBOptions{
|
||||
Name: "Fingerprints by Label Pair",
|
||||
Purpose: "Index",
|
||||
Path: baseDirectory + "/fingerprints_by_label_name_and_value_pair",
|
||||
CacheSizeBytes: *labelPairToFingerprintsCacheSize,
|
||||
},
|
||||
})
|
||||
)
|
||||
workers.MayFail(err)
|
||||
},
|
||||
},
|
||||
@ -195,14 +196,13 @@ func NewLevelDBMetricPersistence(baseDirectory string) (*LevelDBMetricPersistenc
|
||||
func() {
|
||||
var err error
|
||||
emission.MetricMembershipIndex, err = NewLevelDBMetricMembershipIndex(
|
||||
LevelDBMetricMembershipIndexOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
Name: "Metric Membership",
|
||||
Purpose: "Index",
|
||||
Path: baseDirectory + "/metric_membership_index",
|
||||
CacheSizeBytes: *metricMembershipIndexCacheSize,
|
||||
},
|
||||
})
|
||||
leveldb.LevelDBOptions{
|
||||
Name: "Metric Membership",
|
||||
Purpose: "Index",
|
||||
Path: baseDirectory + "/metric_membership_index",
|
||||
CacheSizeBytes: *metricMembershipIndexCacheSize,
|
||||
},
|
||||
)
|
||||
workers.MayFail(err)
|
||||
},
|
||||
},
|
||||
@ -210,14 +210,14 @@ func NewLevelDBMetricPersistence(baseDirectory string) (*LevelDBMetricPersistenc
|
||||
"Sample Curation Remarks",
|
||||
func() {
|
||||
var err error
|
||||
emission.CurationRemarks, err = NewLevelDBCurationRemarker(LevelDBCurationRemarkerOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
emission.CurationRemarks, err = NewLevelDBCurationRemarker(
|
||||
leveldb.LevelDBOptions{
|
||||
Name: "Sample Curation Remarks",
|
||||
Purpose: "Ledger of Progress for Various Curators",
|
||||
Path: baseDirectory + "/curation_remarks",
|
||||
CacheSizeBytes: *curationRemarksCacheSize,
|
||||
},
|
||||
})
|
||||
)
|
||||
workers.MayFail(err)
|
||||
},
|
||||
},
|
||||
|
@ -849,20 +849,20 @@ func TestCuratorCompactionProcessor(t *testing.T) {
|
||||
sampleDirectory := fixture.NewPreparer(t).Prepare("sample", fixture.NewCassetteFactory(scenario.in.sampleGroups))
|
||||
defer sampleDirectory.Close()
|
||||
|
||||
curatorStates, err := NewLevelDBCurationRemarker(LevelDBCurationRemarkerOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
curatorStates, err := NewLevelDBCurationRemarker(
|
||||
leveldb.LevelDBOptions{
|
||||
Path: curatorDirectory.Path(),
|
||||
},
|
||||
})
|
||||
)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
watermarkStates, err := NewLevelDBHighWatermarker(LevelDBHighWatermarkerOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
watermarkStates, err := NewLevelDBHighWatermarker(
|
||||
leveldb.LevelDBOptions{
|
||||
Path: watermarkDirectory.Path(),
|
||||
},
|
||||
})
|
||||
)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -1379,21 +1379,21 @@ func TestCuratorDeletionProcessor(t *testing.T) {
|
||||
sampleDirectory := fixture.NewPreparer(t).Prepare("sample", fixture.NewCassetteFactory(scenario.in.sampleGroups))
|
||||
defer sampleDirectory.Close()
|
||||
|
||||
curatorStates, err := NewLevelDBCurationRemarker(LevelDBCurationRemarkerOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
curatorStates, err := NewLevelDBCurationRemarker(
|
||||
leveldb.LevelDBOptions{
|
||||
Path: curatorDirectory.Path(),
|
||||
},
|
||||
})
|
||||
)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer curatorStates.Close()
|
||||
|
||||
watermarkStates, err := NewLevelDBHighWatermarker(LevelDBHighWatermarkerOptions{
|
||||
LevelDBOptions: leveldb.LevelDBOptions{
|
||||
watermarkStates, err := NewLevelDBHighWatermarker(
|
||||
leveldb.LevelDBOptions{
|
||||
Path: watermarkDirectory.Path(),
|
||||
},
|
||||
})
|
||||
)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
@ -104,14 +104,9 @@ func (w *LevelDBHighWatermarker) UpdateBatch(m FingerprintHighWatermarkMapping)
|
||||
return w.LevelDBPersistence.Commit(batch)
|
||||
}
|
||||
|
||||
// LevelDBHighWatermarkerOptions just wraps leveldb.LevelDBOptions.
|
||||
type LevelDBHighWatermarkerOptions struct {
|
||||
leveldb.LevelDBOptions
|
||||
}
|
||||
|
||||
// NewLevelDBHighWatermarker returns a LevelDBHighWatermarker ready to use.
|
||||
func NewLevelDBHighWatermarker(o LevelDBHighWatermarkerOptions) (*LevelDBHighWatermarker, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o.LevelDBOptions)
|
||||
func NewLevelDBHighWatermarker(o leveldb.LevelDBOptions) (*LevelDBHighWatermarker, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -136,11 +131,6 @@ type LevelDBCurationRemarker struct {
|
||||
*leveldb.LevelDBPersistence
|
||||
}
|
||||
|
||||
// LevelDBCurationRemarkerOptions just wraps leveldb.LevelDBOptions.
|
||||
type LevelDBCurationRemarkerOptions struct {
|
||||
leveldb.LevelDBOptions
|
||||
}
|
||||
|
||||
// Get implements CurationRemarker.
|
||||
func (w *LevelDBCurationRemarker) Get(c *curationKey) (t clientmodel.Timestamp, ok bool, err error) {
|
||||
k := &dto.CurationKey{}
|
||||
@ -166,8 +156,8 @@ func (w *LevelDBCurationRemarker) Update(pair *curationKey, t clientmodel.Timest
|
||||
}
|
||||
|
||||
// NewLevelDBCurationRemarker returns a LevelDBCurationRemarker ready to use.
|
||||
func NewLevelDBCurationRemarker(o LevelDBCurationRemarkerOptions) (*LevelDBCurationRemarker, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o.LevelDBOptions)
|
||||
func NewLevelDBCurationRemarker(o leveldb.LevelDBOptions) (*LevelDBCurationRemarker, error) {
|
||||
s, err := leveldb.NewLevelDBPersistence(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user