Skip to content
Snippets Groups Projects

[bifrost] Keygen Retries and ChurnRetryInterval Mimir

Merged Ursa (9R) requested to merge ursa/keygen-retry into develop
6 files
+ 42
5
Compare changes
  • Side-by-side
  • Inline
Files
6
+ 11
1
@@ -363,7 +363,7 @@ func (s *Signer) scheduleRetry(keygenBlock ttypes.KeygenBlock) bool {
if churnRetryInterval <= 0 {
churnRetryInterval = constants.NewConstantValue().GetInt64Value(constants.ChurnRetryInterval)
}
keygenRetryInterval, err := s.thorchainBridge.GetMimir("KeygenRetryInterval")
keygenRetryInterval, err := s.thorchainBridge.GetMimir(constants.KeygenRetryInterval.String())
if err != nil {
s.logger.Error().Err(err).Msg("fail to get keygen retries mimir")
return false
@@ -372,6 +372,16 @@ func (s *Signer) scheduleRetry(keygenBlock ttypes.KeygenBlock) bool {
return false
}
// sanity check the retry interval is at least 1.5x the timeout
retryIntervalDuration := time.Duration(keygenRetryInterval) * constants.ThorchainBlockTime
if retryIntervalDuration <= s.cfg.KeygenTimeout*3/2 {
s.logger.Error().
Dur("retryInterval", retryIntervalDuration).
Dur("keygenTimeout", s.cfg.KeygenTimeout).
Msg("retry interval too short")
return false
}
height, err := s.thorchainBridge.GetBlockHeight()
if err != nil {
s.logger.Error().Err(err).Msg("fail to get last chain height")
Loading