Remote services are partly out of sync with the real implementations

Steps to reproduce

In a distributed installation, the remote services are making HTTP requests to the REST endpoints of their real counterparts. To ease implementation, there is a RemoteBase that can be used to make these calls. Upon calling, a list of expected status codes can be handed to the remote base, each of which will make the remote base return the code to the caller. Any other status code will keep the call in the remote base and trigger round robin to the next available implementation.

In short, this means that if a service returns a status code that is not expected by the remote implementation, that remote implementation is caught in an endless loop. In order to overcome this issue, every remote implementation needs to be carefully examined to make sure it is expecting (and declaring to expect) all possible status codes. Then those codes should be processed in a switch (statusCode) {...} statement, with a "default" clause logging an error condition (remote base returned with an unexpected status code).

Status

Assignee

Lukas Rohner

Reporter

Tobias Wunden

Severity

Non Functioning

Tags (folksonomy)

Components

Fix versions

Affects versions

1.4.0

Priority

Blocker