I was testing the new implementation and I expect a message to be pushed to the return queue with the err field filled with a proper error in cases like:
the twin address can't be resolved.
the twin address is resolved but can't be reached.
the twin can be reached but responded with an error.
The second and third cases can be verified, but for the first case, it seems the error is not handled properly, it just shows in the debug log but no message would be returned to the client. so the client would wait unnecessarily till it timed out and won't have proper feedback about what goes wrong.
2022-05-31T21:19:12.548Z DEBUG [rmb_rs::http_workers::work_runner] can not retrieve twin from substrate for this id '90090' because of twin id is not found
I was testing the new implementation and I expect a message to be pushed to the return queue with the
err
field filled with a proper error in cases like:The second and third cases can be verified, but for the first case, it seems the error is not handled properly, it just shows in the debug log but no message would be returned to the client. so the client would wait unnecessarily till it timed out and won't have proper feedback about what goes wrong.