chore(perf): Pre-allocate where possible (enable prealloc linter) (#88952)
* chore(perf): Pre-allocate where possible (enable prealloc linter) Signed-off-by: Dave Henderson <dave.henderson@grafana.com> * fix TestAlertManagers_buildRedactedAMs Signed-off-by: Dave Henderson <dave.henderson@grafana.com> * prealloc a slice that appeared after rebase Signed-off-by: Dave Henderson <dave.henderson@grafana.com> --------- Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
This commit is contained in:
@@ -332,12 +332,14 @@ func setupRedisLiveEngine(g *GrafanaLive, node *centrifuge.Node) error {
|
||||
redisShardConfigs := []centrifuge.RedisShardConfig{
|
||||
{Address: redisAddress, Password: redisPassword},
|
||||
}
|
||||
var redisShards []*centrifuge.RedisShard
|
||||
|
||||
redisShards := make([]*centrifuge.RedisShard, 0, len(redisShardConfigs))
|
||||
for _, redisConf := range redisShardConfigs {
|
||||
redisShard, err := centrifuge.NewRedisShard(node, redisConf)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error connecting to Live Redis: %v", err)
|
||||
}
|
||||
|
||||
redisShards = append(redisShards, redisShard)
|
||||
}
|
||||
|
||||
@@ -348,6 +350,7 @@ func setupRedisLiveEngine(g *GrafanaLive, node *centrifuge.Node) error {
|
||||
if err != nil {
|
||||
return fmt.Errorf("error creating Live Redis broker: %v", err)
|
||||
}
|
||||
|
||||
node.SetBroker(broker)
|
||||
|
||||
presenceManager, err := centrifuge.NewRedisPresenceManager(node, centrifuge.RedisPresenceManagerConfig{
|
||||
@@ -357,7 +360,9 @@ func setupRedisLiveEngine(g *GrafanaLive, node *centrifuge.Node) error {
|
||||
if err != nil {
|
||||
return fmt.Errorf("error creating Live Redis presence manager: %v", err)
|
||||
}
|
||||
|
||||
node.SetPresenceManager(presenceManager)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -116,17 +116,21 @@ func (s *Manager) handleDatasourceEvent(orgID int64, dsUID string, resubmit bool
|
||||
s.mu.RUnlock()
|
||||
return nil
|
||||
}
|
||||
var resubmitRequests []streamRequest
|
||||
var waitChannels []chan struct{}
|
||||
|
||||
resubmitRequests := make([]streamRequest, 0, len(dsStreams))
|
||||
waitChannels := make([]chan struct{}, 0, len(dsStreams))
|
||||
for channel := range dsStreams {
|
||||
streamCtx, ok := s.streams[channel]
|
||||
if !ok {
|
||||
continue
|
||||
}
|
||||
|
||||
streamCtx.cancelFn()
|
||||
|
||||
waitChannels = append(waitChannels, streamCtx.CloseCh)
|
||||
resubmitRequests = append(resubmitRequests, streamCtx.streamRequest)
|
||||
}
|
||||
|
||||
s.mu.RUnlock()
|
||||
|
||||
// Wait for all streams to stop.
|
||||
|
||||
Reference in New Issue
Block a user