View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0009150 | Taler | wallet-core | public | 2024-08-30 17:50 | 2024-10-07 16:35 |
Reporter | mikolai | Assigned To | mikolai | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 0.12 | ||||
Target Version | 0.14 | Fixed in Version | 0.14 | ||
Summary | 0009150: Polling problem on wallet-initiated withdrawal | ||||
Description | Wallet-initiated withdrawals show a error message as long as the wire-transfer to the exchange is not completed. As soon as it is, the withdrawal is completed successfully. The root cause might well be in wallet-core or at the exchange's side, but I don't have further insights myself. | ||||
Steps To Reproduce | 1. Open Android app 2. click "receive" 3. input an arbitrary amount 4. click "withdraw from bank account" 5. confirm withdrawal 6. go back to transaction list 7. wait some time 8. see the following error in red: "Error response did not even contain JSON. The request URL might be wrong or the service might be unavailable" 9. debug mode shows: { "code": 7002, "hint": "Error response did not even contain JSON. The request URL might be wrong or the service might be unavailable.", "message": null, "when": { "t_ms": 1725032753355 }, "requestUrl": "https://exchange.demo.taler.net/reserves/3MRZWS3Z9G6R9Y1KDPB310Q3C12YHD0AXJJXFNBZHEJVKBJAZ73G?timeout_ms=30000", "requestMethod": "GET", "httpStatusCode": 404, "contentType": "[application/json]" } 10. manually transfer the money via the bank UI at bank.demo.taler.net (using the payto:// URI shown in the wallet) 11. see a successful withdrawal | ||||
Additional Information | On our local setup, we face a similar problem, but a different error message: { "id": "req-1034", "when": { "t_ms": 1725027465082 }, "type": "http-fetch-finish-error", "url": "https://exchange.taler.datenspuren.de/reserves/4YT7XASRHRN1341BMAAQC2X16PB46VEYPWRY8VMZJ6S65K7E3W6G?timeout_ms=30000", "error": { "code": 7001, "when": { "t_ms": 1725027465082 }, "hint": "unexpected exception (message: unexpected end of stream on https://exchange.taler.datenspuren.de/...)", "stack": " at fetch (<compiled_js>:9314)\n" } } After successful wire transfer, the withdrawal succeeds here, too. | ||||
Tags | No tags attached. | ||||
|
You should configure your nginx with longer timeouts. Basically, your nginx terminates the connection with a gateway timeout, returning HTML. That's what makes the wallet unhappy. Just tell nginx: proxy_send_timeout 3000s; or similar ;-). |
|
Such timeouts are already part of the regional-currency deployment, so no need to change anything there. I think the problem comes from the C3D2 infrastructure with another proxy in front of our Taler server that probably terminates connections too early. Will try to increase the timeouts there. Is there a maximum value that should be allowed / will be requested by the wallet? |
|
But maybe wallet-core could handle an empty response after a certain amount of time a little more gracefully and decrease the polling timeout for further requests to that server. URL to test with (for now, until timeouts are adapted): https://exchange.taler.datenspuren.de/reserves/BDW8G51HVR6BSN6VZSTRVQDJJCBSQH5R4XY55A82NTR6V6BWCTR0?timeout_ms=40000 |
|
The typical long-polling timeout is 30s. In some circumstances it's lower, but currently never higher. |
|
@mikolai can we close this? The weird "contentType": "[application/json]" (note the brackets) has been fixed on Android, it was an Android native networking specific problem. AFAICT, this has caused the weird error message in this case. |
|
Sure, thanks for your help. |
Date Modified | Username | Field | Change |
---|---|---|---|
2024-08-30 17:50 | mikolai | New Issue | |
2024-08-30 17:50 | mikolai | Status | new => assigned |
2024-08-30 17:50 | mikolai | Assigned To | => Florian Dold |
2024-08-30 21:03 | Christian Grothoff | Note Added: 0023121 | |
2024-09-02 11:22 | mikolai | Note Added: 0023130 | |
2024-09-02 11:27 | mikolai | Note Added: 0023131 | |
2024-09-02 11:28 | mikolai | Category | wallet (Android App) => wallet-core |
2024-09-02 13:28 | Florian Dold | Note Added: 0023136 | |
2024-10-04 15:43 | Florian Dold | Assigned To | Florian Dold => mikolai |
2024-10-04 15:45 | Florian Dold | Note Added: 0023442 | |
2024-10-04 15:47 | mikolai | Status | assigned => resolved |
2024-10-04 15:47 | mikolai | Resolution | open => fixed |
2024-10-04 15:47 | mikolai | Note Added: 0023443 | |
2024-10-07 16:35 | Christian Grothoff | Fixed in Version | => 0.14 |
2024-10-07 16:35 | Christian Grothoff | Target Version | => 0.14 |