View Issue Details

IDProjectCategoryView StatusLast Update
0006677Talerspecificationpublic2021-09-02 18:23
ReporterFlorian Dold Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.8Fixed in Version0.8 
Summary0006677: consider not using 4xx status code when exchange gives 5xx
DescriptionThe merchant currently returns a 424 status code when the exchange reports some transient error, typically a DB conflict.

The status code 424 is a rather specific WebDAV status code, and the merchant should return something in the range of 5xx, as the error here is clearly not the *client*'s responsibility.
TagsNo tags attached.

Activities

Christian Grothoff

2021-01-07 09:50

manager   ~0017320

I think this was placed in the wrong category. Re-assigning.

Christian Grothoff

2021-01-07 21:00

manager   ~0017329

There were two places in the merchant code with HTTP status 424. One was already spec'ed in GANA to be 502, the other in GANA to be 400. I've fixed both, and also adjusted the handling in libtalermerchant (for two other 424s, which already could no longer be generated). api-merchant.rst already never specified 424.

Christian Grothoff

2021-09-02 18:23

manager   ~0018365

Fix committed to master branch.

Related Changesets

merchant: master 64667c6f

2021-01-07 21:58

Christian Grothoff


Details Diff
fix 0006677 Affected Issues
0006677
mod - src/backend/taler-merchant-httpd_post-orders-ID-pay.c Diff File
mod - src/backend/taler-merchant-httpd_post-tips-ID-pickup.c Diff File
mod - src/lib/merchant_api_post_order_abort.c Diff File
mod - src/lib/merchant_api_post_order_pay.c Diff File

Issue History

Date Modified Username Field Change
2021-01-06 16:32 Florian Dold New Issue
2021-01-06 16:32 Florian Dold Status new => assigned
2021-01-06 16:32 Florian Dold Assigned To => grote
2021-01-07 09:50 Christian Grothoff Note Added: 0017320
2021-01-07 09:50 Christian Grothoff Assigned To grote => Christian Grothoff
2021-01-07 09:51 Christian Grothoff Category cashier (Android App) => merchant backend API (HTTP specification)
2021-01-07 09:51 Christian Grothoff Product Version => git (master)
2021-01-07 09:51 Christian Grothoff Target Version => 0.8.1
2021-01-07 21:00 Christian Grothoff Status assigned => resolved
2021-01-07 21:00 Christian Grothoff Resolution open => fixed
2021-01-07 21:00 Christian Grothoff Fixed in Version => 0.9
2021-01-07 21:00 Christian Grothoff Note Added: 0017329
2021-01-07 21:00 Christian Grothoff Fixed in Version 0.9 => 0.8.1
2021-07-30 14:02 Christian Grothoff Fixed in Version 0.8.1 => 0.8
2021-07-30 14:02 Christian Grothoff Target Version 0.8.1 => 0.8
2021-08-24 16:23 Christian Grothoff Status resolved => closed
2021-09-02 18:22 Christian Grothoff Changeset attached => Taler-merchant master 64667c6f
2021-09-02 18:23 Christian Grothoff Note Added: 0018365
2024-01-12 14:02 Christian Grothoff Category merchant backend API (HTTP specification) => specification