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 #791

Closed VenuReddy2103 closed 5 years ago

VenuReddy2103 commented 5 years ago

Fixes #792

  1. ClientPolicy.onRPC() of DefaultUpcallImpl.java swallowed 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.
VenuReddy2103 commented 5 years ago

Build log: build.log

quinton-hoole commented 5 years ago

I don't see any evidence of MultiDM integration tests passing in the logs you provided? I assume you tested those so, and will merge on that understanding. If that turns out not to be true, we can revert easily enough.