Duplicate order charges twice
Review this Java idempotent-order endpoint.
What a strong answer looks like
Separate real bugs from style. Rank issues by severity, point at the root cause rather than the symptom, and suggest a concrete fix, specific and kind.
0:00 of about 30 min
Mark a line and say what kind of problem it is.0 findings
1@PostMapping("/orders")
2public Order create(@RequestBody OrderReq req,
3 @RequestHeader("Idempotency-Key") String key) {
4 Order existing = repo.findByIdempotencyKey(key);
5 if (existing != null) {
6 return existing;
7 }
8 Order order = new Order(req);
9 order.setIdempotencyKey(key);
10 repo.save(order);
11 paymentService.charge(order);
12 return order;
13}
Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.
Run or narrate your approach, then ask the coach.