@@ -396,12 +396,6 @@ func (csm *ConsumerSessionManager) validatePairingListNotEmpty(addon string, ext
396
396
return numberOfResets
397
397
}
398
398
399
- func (csm * ConsumerSessionManager ) getValidAddressesLengthForExtensionOrAddon (addon string , extensions []string ) int {
400
- csm .lock .RLock ()
401
- defer csm .lock .RUnlock ()
402
- return len (csm .getValidAddresses (addon , extensions ))
403
- }
404
-
405
399
func (csm * ConsumerSessionManager ) getSessionWithProviderOrError (usedProviders UsedProvidersInf , tempIgnoredProviders * ignoredProviders , cuNeededForSession uint64 , requestedBlock int64 , addon string , extensionNames []string , stateful uint32 , virtualEpoch uint64 ) (sessionWithProviderMap SessionWithProviderMap , err error ) {
406
400
sessionWithProviderMap , err = csm .getValidConsumerSessionsWithProvider (tempIgnoredProviders , cuNeededForSession , requestedBlock , addon , extensionNames , stateful , virtualEpoch )
407
401
if err != nil {
@@ -448,10 +442,12 @@ func (csm *ConsumerSessionManager) GetSessions(ctx context.Context, cuNeededForS
448
442
providers : initUnwantedProviders ,
449
443
currentEpoch : csm .atomicReadCurrentEpoch (),
450
444
}
445
+ utils .LavaFormatTrace ("GetSessions tempIgnoredProviders" , utils .LogAttr ("tempIgnoredProviders" , tempIgnoredProviders ))
451
446
452
447
// Get a valid consumerSessionsWithProvider
453
448
sessionWithProviderMap , err := csm .getSessionWithProviderOrError (usedProviders , tempIgnoredProviders , cuNeededForSession , requestedBlock , addon , extensionNames , stateful , virtualEpoch )
454
449
if err != nil {
450
+ utils .LavaFormatTrace ("GetSessions error" , utils .LogAttr ("error" , err .Error ()))
455
451
return nil , err
456
452
}
457
453
@@ -466,7 +462,7 @@ func (csm *ConsumerSessionManager) GetSessions(ctx context.Context, cuNeededForS
466
462
sessionEpoch := sessionWithProvider .CurrentEpoch
467
463
468
464
// Get a valid Endpoint from the provider chosen
469
- connected , endpoints , _ , err := consumerSessionsWithProvider .fetchEndpointConnectionFromConsumerSessionWithProvider (ctx , false , false , addon , extensionNames )
465
+ connected , endpoints , _ , err := consumerSessionsWithProvider .fetchEndpointConnectionFromConsumerSessionWithProvider (ctx , sessionWithProvider . retryConnecting , false , addon , extensionNames )
470
466
if err != nil {
471
467
// verify err is AllProviderEndpointsDisabled and report.
472
468
if AllProviderEndpointsDisabledError .Is (err ) {
@@ -697,6 +693,7 @@ func (csm *ConsumerSessionManager) tryGetConsumerSessionWithProviderFromBlockedP
697
693
for _ , providerAddress := range csm .currentlyBlockedProviderAddresses {
698
694
// check if we have this provider already.
699
695
if _ , providerExistInIgnoredProviders := ignoredProviders .providers [providerAddress ]; providerExistInIgnoredProviders {
696
+ utils .LavaFormatTrace ("[continue] provider already in ignored providers" , utils .LogAttr ("providerAddress" , providerAddress ))
700
697
continue
701
698
}
702
699
consumerSessionsWithProvider := csm .pairing [providerAddress ]
@@ -707,11 +704,13 @@ func (csm *ConsumerSessionManager) tryGetConsumerSessionWithProviderFromBlockedP
707
704
// validate this provider has enough cu to be used
708
705
if err := consumerSessionsWithProvider .validateComputeUnits (cuNeededForSession , virtualEpoch ); err != nil {
709
706
// we already added to ignored we can just continue to the next provider
707
+ utils .LavaFormatTrace ("[continue] no compute units" , utils .LogAttr ("providerAddress" , providerAddress ))
710
708
continue
711
709
}
712
710
713
711
// validate this provider supports the required extension or addon
714
712
if ! consumerSessionsWithProvider .IsSupportingAddon (addon ) || ! consumerSessionsWithProvider .IsSupportingExtensions (extensions ) {
713
+ utils .LavaFormatTrace ("[continue] no addon or extensions" , utils .LogAttr ("providerAddress" , providerAddress ))
715
714
continue
716
715
}
717
716
@@ -721,6 +720,7 @@ func (csm *ConsumerSessionManager) tryGetConsumerSessionWithProviderFromBlockedP
721
720
providerAddress : & SessionWithProvider {
722
721
SessionsWithProvider : consumerSessionsWithProvider ,
723
722
CurrentEpoch : currentEpoch ,
723
+ retryConnecting : true ,
724
724
},
725
725
}, nil
726
726
}
0 commit comments