Phase 3 PR 72 -- Multi-endpoint failover for OPC UA Client #71
Reference in New Issue
Block a user
Delete Branch "phase-3-pr72-opcua-client-failover"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds an ordered
EndpointUrlslist +PerEndpointConnectTimeout(default 3s).InitializeAsyncwalks the candidates in order; the first one that successfully connects wins. If all fail, throwsAggregateExceptionwhose message names every URL + its failure class — clean diag for hot-standby debugging.EndpointUrlretained as a one-URL shortcut. Empty/unsetEndpointUrlsfalls back to[EndpointUrl]._connectedEndpointUrl) instead of always returningopts.EndpointUrl— the Admin/hostsdashboard shows primary vs backup as they change.Validation
dotnet build: 0 errorsUse case
Hot-standby OPC UA pair:
EndpointUrls=[primary, backup]. Driver tries primary first; falls over on failure;AggregateExceptionif both are down lists each attempt's failure mode.Test plan
EndpointUrlstrumpsEndpointUrlHostNamerenders first candidate pre-connectAggregateExceptionnaming each URL + Faulted state