You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/Executable.js
+31Lines changed: 31 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -800,6 +800,37 @@ export default class Executable {
800
800
// Determine by the executing state what we should do
801
801
switch(shouldRetry){
802
802
caseExecutionState.Retry:
803
+
// Special handling for INVALID_NODE_ACCOUNT: mark node as unusable
804
+
// and update network to get latest node account IDs
805
+
if(status===Status.InvalidNodeAccount){
806
+
if(this._logger){
807
+
this._logger.debug(
808
+
`[${this._getLogId()}] node with accountId: ${node.accountId.toString()} and proxy IP: ${node.address.toString()} has invalid node account ID, marking as unhealthy and updating network`,
809
+
);
810
+
}
811
+
812
+
// Mark the node as unusable by increasing its backoff and removing it from the healthy nodes list
813
+
client._network.increaseBackoff(node);
814
+
815
+
// Initiate addressbook query and update the client's network
816
+
// This will make the SDK client have the latest node account IDs for subsequent transactions
817
+
try{
818
+
awaitclient.updateNetwork();
819
+
console.log("VLIZAME W RETRAQ DGE");
820
+
console.log(client._network.network);
821
+
}catch(error){
822
+
if(this._logger){
823
+
consterrorMessage=
824
+
errorinstanceofError
825
+
? error.message
826
+
: String(error);
827
+
this._logger.trace(
828
+
`failed to update client address book after INVALID_NODE_ACCOUNT_ID: ${errorMessage}`,
0 commit comments