View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0007103 | Taler | mechant backend | public | 2021-11-23 12:25 | 2024-01-12 14:04 |
Reporter | Florian Dold | Assigned To | Florian Dold | ||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | closed | Resolution | no change required | ||
Product Version | git (master) | ||||
Target Version | 0.9 | Fixed in Version | 0.9 | ||
Summary | 0007103: merchant should generate better error message if exchange signkey of a /deposit response is not found | ||||
Description | Currently, if this happens, the merchant just logs a rather non-actionable SQL constraint violation. We should explicitly check if the merchant knows the exchange signing key *before* we do the insert (with an otherwise potentially failing select clause). | ||||
Tags | No tags attached. | ||||
|
I am very confused how this can happen. exchange_api_deposit.c::handle_deposit_finished() explicitly checks that the signing key used by the exchange is known in the /keys response. exchange_api_handle.c::keys_completed_cb() explicitly calls the merchant to tell it whenever it gets new /keys. taler-merchant-httpd_exchanges::keys_mgmt_cb() explicitly stores every exchange signing key in the database when it is called. So how _can_ we end up with that database constraint violation? Is there a good way to reproduce this? |
|
I think I reported this bug *before* I knew that there was a linker problem causing a weird API incompatibility. Probably the SQL statement can't fail now. It only failed because the exchange signing public key was set to NULL due to the linker issue. |
|
Ok, then let's just close this. No point in adding insane error handling for well-logged invariants. |
Date Modified | Username | Field | Change |
---|---|---|---|
2021-11-23 12:25 | Florian Dold | New Issue | |
2021-11-23 12:25 | Florian Dold | Status | new => assigned |
2021-11-23 12:25 | Florian Dold | Assigned To | => Christian Grothoff |
2021-11-25 23:22 | Christian Grothoff | Note Added: 0018548 | |
2021-11-25 23:22 | Christian Grothoff | Assigned To | Christian Grothoff => Florian Dold |
2021-11-25 23:22 | Christian Grothoff | Status | assigned => feedback |
2021-11-25 23:30 | Florian Dold | Note Added: 0018550 | |
2021-11-25 23:45 | Christian Grothoff | Note Added: 0018553 | |
2021-11-25 23:45 | Christian Grothoff | Status | feedback => resolved |
2021-11-25 23:45 | Christian Grothoff | Resolution | open => no change required |
2021-11-25 23:45 | Christian Grothoff | Fixed in Version | => 0.9 |
2021-11-25 23:45 | Christian Grothoff | Target Version | 0.9.1 => 0.9 |
2022-11-04 20:53 | Christian Grothoff | Status | resolved => closed |
2024-01-12 14:04 | Christian Grothoff | Category | merchant backend API (C) => mechant backend |