amino-os / Amino.Run

Amino Distributed OS - Runtime Manager
Apache License 2.0
29 stars 12 forks source link

ClientPolicy.onRPC() of DefaultUpcallImpl.java swallows RemoteException and do not propagate this exception #792

Closed VenuReddy2103 closed 5 years ago

VenuReddy2103 commented 5 years ago
  1. ClientPolicy.onRPC() of DefaultUpcallImpl.java swallows RemoteException. So AtLeastOnceRPCPolicy retry doesn't work in case of RemoteException.
  2. Consensus DM client is throwing RemoteException upon LeaderException when leader is not elected. So when AtleastOnceRPC is chained with Consensus DM, and if Consensus DM client throws RemoteException, it is swallowed at DefaultUpcallImpl.ClientPolicy.onRPC() and AtLeastOnceRPCPolicy retry do not happen.