View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0009303 | Taler | exchange | public | 2024-10-30 14:02 | 2024-12-13 18:15 |
| Reporter | Florian Dold | Assigned To | Florian Dold | Resolution deadline | |
| Implementer | Reviewer | ||||
| Release signed by | Deployed by | ||||
| Verifier | Communicator | ||||
| Data protection authority notification required | No | ||||
| CSIRT notification required | No | ||||
| Estimated effort (hours) | Actual effort (hours) | 0 | |||
| Fast-track | No | ||||
| Work package | none | ||||
| Priority | normal | Severity | minor | Reproducibility | have not tried |
| Status | closed | Resolution | fixed | ||
| Target Version | 0.14 | Fixed in Version | 0.14 | ||
| Summary | 0009303: exchange should track running aml programs in the database | ||||
| Description | That way we * can suspend the response to kyc-info so until the KYC program is finished * prevent two AML programs from running at the same time | ||||
| Tags | No tags attached. | ||||
| * AML programs should be run with a timeout and killed if the exceed it * locks should be given with that timeout (+ 100ms?) and auto-expire to handle cases where the exchange/server crashed | |
| We can probably add some logic for "begin" and "end" of AML programs into libtalerexchangedb (NOT the plugin!). I put some other shared DB-related logic into exchangedb_history.c already. Note that the shared logic on AML program conclusion should be called in taler-exchange-aggregator.c, which has a FIXME for that! | |
| => please ping me before starting on this one! | |
| Implemented in 53fe2cc9d..bc30273e1. Florian: can you easily do a test!??!? | |
| $ taler-harness run-integrationtests kyc-amp-timeout Currently the withdrawal just hangs in batch withdrawal, despite a configured AML program timeout of three seconds. | |
| There are 3 places in the code that run AML programs (maybe not yet optimally factored...). Only 1 has the timeout logic, you're triggering another one. Will fix. | |
| 550a9adee..e2b004b38 adds timeout handling for the remaining 2 cases, alas the test still fails (even though the timeout looks correct). Note that the exchange is *expected* to return you a 500 internal server on timeout. | |
| At least for failing AMPs, it seems that the exchange doesn't trigger the fallback measure. | |
| exchange fallback handling should be fixed, but now the tests fails due to an invalid configuration: 2024-12-13T01:48:21.350011+0100 taler-exchange-httpd-220649 INFO Parsing KYC measure KYC-MEASURE-M1 2024-12-13T01:48:21.350061+0100 taler-exchange-httpd-220649 ERROR Fallback measure `M2' used in AML program `NONE' has a check `C2' but fallbacks must have a check of type 'SKIP' 2024-12-13T01:48:21.350073+0100 taler-exchange-httpd-220649 ERROR Failed to load configuration `/tmp/taler-integrationtests-yrtc22/kyc-amp-timeout/exchange-testexchange-1.conf'. Exiting. As discussed, fallback measures must now have a "skip" check. Please fix the configuration ;-). | |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2024-10-30 14:02 | Florian Dold | New Issue | |
| 2024-10-30 14:02 | Florian Dold | Status | new => assigned |
| 2024-10-30 14:02 | Florian Dold | Assigned To | => Florian Dold |
| 2024-10-31 05:43 | Christian Grothoff | Note Added: 0023638 | |
| 2024-12-01 14:49 | Christian Grothoff | Note Added: 0023776 | |
| 2024-12-01 22:11 | Christian Grothoff | Note Added: 0023777 | |
| 2024-12-07 21:43 | Christian Grothoff | Assigned To | Florian Dold => Christian Grothoff |
| 2024-12-08 18:16 | Christian Grothoff | Note Added: 0023811 | |
| 2024-12-08 18:16 | Christian Grothoff | Assigned To | Christian Grothoff => Florian Dold |
| 2024-12-11 17:54 | Florian Dold | Assigned To | Florian Dold => Christian Grothoff |
| 2024-12-11 17:55 | Florian Dold | Note Added: 0023864 | |
| 2024-12-11 21:43 | Christian Grothoff | Note Added: 0023868 | |
| 2024-12-11 23:02 | Christian Grothoff | Note Added: 0023869 | |
| 2024-12-11 23:02 | Christian Grothoff | Assigned To | Christian Grothoff => Florian Dold |
| 2024-12-11 23:02 | Christian Grothoff | Status | assigned => feedback |
| 2024-12-12 18:04 | Florian Dold | Status | feedback => assigned |
| 2024-12-12 18:04 | Florian Dold | Note Added: 0023875 | |
| 2024-12-13 00:50 | Christian Grothoff | Note Added: 0023878 | |
| 2024-12-13 13:27 | Christian Grothoff | Status | assigned => informing |
| 2024-12-13 13:27 | Christian Grothoff | Resolution | open => fixed |
| 2024-12-13 13:27 | Christian Grothoff | Fixed in Version | => 0.14 |
| 2024-12-13 18:15 | Christian Grothoff | Status | informing => closed |