Call to backend API appears to have been repeated

Hi! We are debugging a production issue where a single call to a non-idempotent API endpoint ended up calling the API twice.

As far as we can see, the client (using node-fetch, without any timeout) only did ONE call to Apigee. On the target API side, we see two calls with exactly (on the millisecond) 60s between them. The client got the result of the SECOND call back.

The two calls on the target API side have the exact same x-apigee.messageid header value.

The HTTPTargetConnection in Apigee has a timeout set to 62000. Incidentally the target API answered after 61.199s, in other words 1.199s after the second call but before the 62s timeout.

I found posts saying that auto retry is default when doing load balancing, but I cannot see that we have multiple target servers defined either.

Any ideas what could be causing this? Where do I look next? It feels like something times out after 60s, I just cannot figure out what. Does the messageid mean that it is indeed the same request from the client?

0 0 38
0 REPLIES 0