0

So I have a case where we update user data in an external service in an asynchronous way. We have a table with users - each row gets a separate user with a separate request, is handled separately. We get the async responses from the external service by polling.

However, there can be a case where we don't get a response due to an error in the external service, however, it might have completed the request but just isn't responding properly to our polling which then results in a state where we don't know the actual state (did the data update or not).

Has anybody worked with such a situation and what would you do?

  • Just show the row as in error (red) state: timeout
  • Have a new state of "unknown/yellow" - request sent but response unknown;
  • Also ask the user to manually check and change the status to red or green?

2 Answers 2

0

It depends on the importance of the operation. You don't want to just warn the user and skip it for an important operation, e.g. salary-related matters or important invites.

Assuming it's an insignificant operation, in general, it should be displayed as unknown, briefly explaining what exactly could happen. It should also suggest retrying the operation only for the entries that result wasn't successful.

0

Unless you target persona is a very technical person knowing a lot about the inner workings of your system, they will not care nor understand the distinction you describe here:

where we don't know the actual state (did the data update or not).

To the user, the important question is whether the data updated. Whether your internal process takes long or fails, or whether the external service doesn't respond is not important to your user (I guess). So both situations can be visualized identically: After triggering the update, show it as "in progress" and only show it as "complete/updated" once the external system returned its answer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.