Skip to content

Commit

Permalink
perf(filter): Allow stale reads in filter
Browse files Browse the repository at this point in the history
Allow reading from slave replicas when fetching all patterns for
patterns index.
  • Loading branch information
kodmi committed Mar 16, 2020
1 parent 5c7304a commit 9865a0b
Show file tree
Hide file tree
Showing 4 changed files with 4 additions and 1 deletion.
1 change: 1 addition & 0 deletions cmd/checker/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ func main() {
defer telemetry.Stop()

databaseSettings := config.Redis.GetSettings()
databaseSettings.AllowSlaveReads = true
database := redis.NewDatabase(logger, databaseSettings, redis.Checker)

remoteConfig := config.Remote.GetRemoteSourceSettings()
Expand Down
2 changes: 1 addition & 1 deletion filter/patterns_storage.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func NewPatternStorage(database moira.Database, metrics *metrics.FilterMetrics,

// Refresh builds pattern's indexes from redis data
func (storage *PatternStorage) Refresh() error {
newPatterns, err := storage.database.GetPatterns()
newPatterns, err := storage.database.AllowStale().GetPatterns()
if err != nil {
return err
}
Expand Down
1 change: 1 addition & 0 deletions filter/patterns_storage_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ func TestProcessIncomingMetric(t *testing.T) {

mockCtrl := gomock.NewController(t)
database := mock_moira_alert.NewMockDatabase(mockCtrl)
database.EXPECT().AllowStale().AnyTimes().Return(database)
logger, _ := logging.GetLogger("Scheduler")

Convey("Create new pattern storage, GetPatterns returns error, should error", t, func() {
Expand Down
1 change: 1 addition & 0 deletions perfomance_tests/filter/filter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ func BenchmarkProcessIncomingMetric(b *testing.B) {

mockCtrl := gomock.NewController(b)
database := mock_moira_alert.NewMockDatabase(mockCtrl)
database.EXPECT().AllowStale().AnyTimes().Return(database)
logger, _ := logging.GetLogger("Benchmark")

database.EXPECT().GetPatterns().Return(patterns, nil)
Expand Down

0 comments on commit 9865a0b

Please sign in to comment.