|
|
|
|
|
by stickfigure
38 days ago
|
|
> You still return 409 No no no no no. You have multiple clients submitting the same business operation simultaneously. One must succeed, the others must fail. If you're using the 409 approach ("notify client that request is redundant") you must not send a 409 code until the work is complete. The client must interpret 200 and 409 as success cases. 200 means "it was done" and 409 means "it was already done". Clients looping (say, processing durable queue messages) can stop when they receive these responses. If the work is not complete, you can't return 409, or clients will think the work is done. You will lose messages. |
|