View Issue Details

IDProjectCategoryView StatusLast Update
0006904Talermerchant backend API (C)public2021-09-02 18:23
ReporterFlorian Dold Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.8Fixed in Version0.8 
Summary0006904: contract claiming fails with database error for certain contract terms
DescriptionWhen the salt for a forgettable field is specified as "true", the merchant backend is supposed to generate a salt. However, the contract claiming simply fails.

Here is the order specification I've used:

    {
      summary: "Buy me!",
      amount: "TESTKUDOS:5",
      fulfillment_url: "taler://fulfillment-success/thx",
      extra: {
        foo: { bar: "baz" },
        $forgettable: {
          foo: true,
        },
      },
    }
Steps To ReproduceFirst, make sure that a current version of the exchange is installed, as the forgettable fields implementation changed.

$ taler-wallet-cli testing run-integrationtests payment-forgettable
Additional Information{
  "type": "error",
  "operation": "preparePay",
  "id": "reqid-1",
  "error": {
    "code": 7005,
    "hint": "Error: WALLET_UNEXPECTED_REQUEST_ERROR",
    "details": {
      "requestUrl": "http://localhost:8083/orders/2021.167-G1ZAG5107XA0M/claim",
      "httpStatusCode": 500,
      "errorResponse": {
        "code": 54,
        "hint": "The service encountered an error event to commit the database transaction (hard, unrecoverable error).",
        "detail": null
      }
    },
    "message": "Unexpected error code in response"
  }
}
TagsNo tags attached.

Activities

Christian Grothoff

2021-06-16 22:39

manager   ~0017959

Forgettable 'true' to 'random' conversion was never implemented AFAIK.
23b4c5e..0f66ec8 modifies the code to notice bad 'salt' values, so that the test now fails during order creation.
Next: implement salt generation!

Christian Grothoff

2021-06-16 23:18

manager   ~0017960

Fixed in 0f66ec8..5a838bf

Christian Grothoff

2021-09-02 18:23

manager   ~0018345

Fix committed to master branch.

Related Changesets

merchant: master 5a838bfb

2021-06-16 23:15:18

Christian Grothoff

Details Diff
fix 0006904 Affected Issues
0006904
mod - src/backend/taler-merchant-httpd_private-post-orders.c Diff File

Issue History

Date Modified Username Field Change
2021-06-16 12:12 Florian Dold New Issue
2021-06-16 12:12 Florian Dold Status new => assigned
2021-06-16 12:12 Florian Dold Assigned To => Christian Grothoff
2021-06-16 22:39 Christian Grothoff Note Added: 0017959
2021-06-16 23:18 Christian Grothoff Note Added: 0017960
2021-06-16 23:18 Christian Grothoff Status assigned => resolved
2021-06-16 23:18 Christian Grothoff Resolution open => fixed
2021-06-16 23:18 Christian Grothoff Fixed in Version => 0.9
2021-06-16 23:18 Christian Grothoff Product Version => git (master)
2021-06-16 23:18 Christian Grothoff Target Version => 0.9
2021-07-30 13:57 Christian Grothoff Fixed in Version 0.9 => 0.8.1
2021-07-30 13:59 Christian Grothoff Target 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:22 Christian Grothoff Status resolved => closed
2021-09-02 18:22 Christian Grothoff Changeset attached => Taler-merchant master 5a838bfb
2021-09-02 18:23 Christian Grothoff Note Added: 0018345