diff options
Diffstat (limited to 'cmd/praefect/main.go')
-rw-r--r-- | cmd/praefect/main.go | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/cmd/praefect/main.go b/cmd/praefect/main.go index 0e229b8fb..4daafd172 100644 --- a/cmd/praefect/main.go +++ b/cmd/praefect/main.go @@ -304,6 +304,7 @@ func run(cfgs []starter.Config, conf config.Config) error { healthChecker praefect.HealthChecker nodeSet praefect.NodeSet router praefect.Router + primaryGetter praefect.PrimaryGetter ) if conf.Failover.ElectionStrategy == config.ElectionStrategyPerRepository { nodeSet, err = praefect.DialNodes(ctx, conf.VirtualStorages, protoregistry.GitalyProtoPreregistered, errTracker) @@ -327,6 +328,7 @@ func run(cfgs []starter.Config, conf config.Config) error { } }() + primaryGetter = elector assignmentStore = datastore.NewAssignmentStore(db, conf.StorageNames()) router = praefect.NewPerRepositoryRouter( @@ -342,6 +344,7 @@ func run(cfgs []starter.Config, conf config.Config) error { healthChecker = praefect.HealthChecker(nodeManager) nodeSet = praefect.NodeSetFromNodeManager(nodeManager) router = praefect.NewNodeManagerRouter(nodeManager, rs) + primaryGetter = nodeManager nodeManager.Start(conf.Failover.BootstrapInterval.Duration(), conf.Failover.MonitorInterval.Duration()) } @@ -383,6 +386,8 @@ func run(cfgs []starter.Config, conf config.Config) error { rs, assignmentStore, protoregistry.GitalyProtoPreregistered, + nodeSet.Connections(), + primaryGetter, ) ) metricsCollectors = append(metricsCollectors, transactionManager, coordinator, repl) |