View Issue Details

IDProjectCategoryView StatusLast Update
0008209Talermerchant backendpublic2024-03-07 19:47
ReporterFlorian Dold Assigned ToChristian Grothoff Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PriorityurgentSeveritycrashReproducibilityhave not tried
Status closedResolutionfixed 
Target Version0.9.4Fixed in Version0.9.4 
Summary0008209: multi-currency payment crashes merchant backend
Description$ taler-harness run-integrationtests multi-exchange
Additional Information2024-01-22T21:40:01.242299+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) INFO Initiating batch deposit with 2 coins
2024-01-22T21:40:01.242458+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) WARNING External protocol violation detected at exchange_api_batch_deposit.c:552.
2024-01-22T21:40:01.242464+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) WARNING External protocol violation detected at taler-merchant-httpd_post-orders-ID-pay.c:1493.
2024-01-22T21:40:01.242475+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) INFO Returning key data for http://localhost:8081/ instantly
2024-01-22T21:40:01.242479+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) INFO Processing find operations for `http://localhost:8081/' (2)
2024-01-22T21:40:01.242483+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) INFO Processing payment with exchange http://localhost:8081/
2024-01-22T21:40:01.242488+0100 taler-merchant-httpd-474615(FJ0DS2FH2CYBM3X3N9E3YYBYN4) ERROR Assertion failed at taler-merchant-httpd_post-orders-ID-pay.c:1243. Aborting.
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2024-01-22 21:15

manager   ~0020968

76e52c4..366a222 comments out (!) my preliminary patch, as I fail to reproduce the original issue. Please first try to upgrade libeufin, exchange and merchant, as I think there are _other_ issues in the test (or your dependencies) which prevent me from reproducing the issue against Git master!

Florian Dold

2024-01-22 21:33

manager   ~0020970

Last edited: 2024-01-22 21:33

I did a "git pull" (gnunet, exchange, merchant) and install before testing it. Did you use the latest wallet-core commit? The old multi-exchange did not trigger this behavior (since it was slightly broken, which is fixed now).

Florian Dold

2024-01-22 21:38

manager   ~0020971

Last edited: 2024-01-22 21:40

The following versions allow me to reproduce:

fdold-work@sapota ~/r/t/wallet-core (master) [1]> taler-exchange-httpd --version
taler-exchange-httpd v0.9.3b-git-b1373d1c
fdold-work@sapota ~/r/t/wallet-core (master)> taler-merchant-httpd --version
taler-merchant-httpd v0.9.3a-git-c457a1cd
fdold-work@sapota ~/r/t/wallet-core (master)> libeufin-bank --version
libeufin-bank version v0.9.4-git-277c533b
fdold-work@sapota ~/r/t/wallet-core (master)> gnunet-arm --version
gnunet-arm v0.21.0-talerdev.2-97-gbd38b4957 git-bd38b4957
fdold-work@sapota ~/r/t/docs (master)> taler-harness --version
0.9.4-dev.8 6a4675267e00a5fd0eeb9b949e156510fc491602

Christian Grothoff

2024-01-22 21:53

manager   ~0020972

Your GNUnet (likely irrelevant), exchange, merchant and wallet (!) are all outdated...

Florian Dold

2024-01-23 01:01

manager   ~0020976

Next attempt, it *still* crashes (and I checked, the commit hashes are recent, except GNUnet, which does not update even if I do "make install" with 7787dcb checked out):

fdold-work@sapota ~/r/t/wallet-core (master)> taler-exchange-httpd --version
taler-exchange-httpd v0.9.4-git-635ae934
fdold-work@sapota ~/r/t/wallet-core (master)> taler-merchant-httpd --version
taler-merchant-httpd v0.9.4-git-366a2226
fdold-work@sapota ~/r/t/wallet-core (master)> libeufin-bank --version
libeufin-bank version v0.9.4-git-277c533b
fdold-work@sapota ~/r/t/wallet-core (master)> gnunet-arm --version
gnunet-arm v0.21.0-talerdev.2-97-gbd38b4957 git-bd38b4957
fdold-work@sapota ~/r/t/wallet-core (master)> taler-harness --version
0.9.4-dev.8 6a4675267e00a5fd0eeb9b949e156510fc491602
fdold-work@sapota ~/r/t/wallet-core (master)> taler-wallet-cli --version
0.9.4-dev.8 6a4675267e00a5fd0eeb9b949e156510fc491602

fdold-work@sapota ~/r/t/wallet-core (master)> taler-harness run-integrationtests multi-exchange
[...]
     "hint": "Error in HTTP request: socket hang up",
[...]

(And similar logs as I've already put in "Additional Information")

Florian Dold

2024-01-23 01:11

manager   ~0020977

After doing a "git clean -fdx" in all repos, I am not getting a slightly different error merchant log:

}2024-01-23T02:09:33.249400+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Handling payment for order `2024.023-01N0ENKMPM1JP' with contract hash `VM07PMFB'
2024-01-23T02:09:33.249421+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing /pay in phase 3
2024-01-23T02:09:33.249431+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Starting merchant DB transaction `run pay'
2024-01-23T02:09:33.250179+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Rolling back merchant DB transaction `run pay'
2024-01-23T02:09:33.250209+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing /pay in phase 6
2024-01-23T02:09:33.250214+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Getting /keys for http://localhost:8281/
2024-01-23T02:09:33.250219+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Trying to find chosen exchange `http://localhost:8281/'
2024-01-23T02:09:33.250224+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO The exchange `http://localhost:8281/' is ready
2024-01-23T02:09:33.250229+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Getting /keys for http://localhost:8081/
2024-01-23T02:09:33.250233+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Trying to find chosen exchange `http://localhost:8081/'
2024-01-23T02:09:33.250238+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO The exchange `http://localhost:8081/' is ready
2024-01-23T02:09:33.250246+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing /pay suspended in phase 6
2024-01-23T02:09:33.250254+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Returning key data for http://localhost:8281/ instantly
2024-01-23T02:09:33.250259+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing find operations for `http://localhost:8281/' (2)
2024-01-23T02:09:33.250268+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing payment with exchange http://localhost:8281/
2024-01-23T02:09:33.250273+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Got wire data for http://localhost:8281/
2024-01-23T02:09:33.250279+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Initiating batch deposit with 2 coins
2024-01-23T02:09:33.250421+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) WARNING External protocol violation detected at exchange_api_batch_deposit.c:552.
2024-01-23T02:09:33.250429+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) WARNING External protocol violation detected at taler-merchant-httpd_post-orders-ID-pay.c:1512.
2024-01-23T02:09:33.250439+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Returning key data for http://localhost:8081/ instantly
2024-01-23T02:09:33.250444+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing find operations for `http://localhost:8081/' (2)
2024-01-23T02:09:33.250449+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) INFO Processing payment with exchange http://localhost:8081/
2024-01-23T02:09:33.250454+0100 taler-merchant-httpd-869924(DQYEXZRVB7RF14EN88FYF3Z1AR) ERROR Assertion failed at taler-merchant-httpd_post-orders-ID-pay.c:1262. Aborting.

Christian Grothoff

2024-01-24 18:00

manager   ~0021034

Fixed in d004d4a..ee77c6f

Issue History

Date ModifiedUsernameFieldChange
2024-01-22 20:40Florian DoldNew Issue
2024-01-22 20:40Florian DoldStatusnew => assigned
2024-01-22 20:40Florian DoldAssigned To => Christian Grothoff
2024-01-22 20:52Christian GrothoffPrioritynormal => urgent
2024-01-22 20:52Christian GrothoffSeverityminor => crash
2024-01-22 21:15Christian GrothoffNote Added: 0020968
2024-01-22 21:15Christian GrothoffAssigned ToChristian Grothoff => Florian Dold
2024-01-22 21:33Florian DoldNote Added: 0020970
2024-01-22 21:33Florian DoldNote Edited: 0020970
2024-01-22 21:34Florian DoldAssigned ToFlorian Dold => Christian Grothoff
2024-01-22 21:38Florian DoldNote Added: 0020971
2024-01-22 21:38Florian DoldNote Edited: 0020971
2024-01-22 21:38Florian DoldNote Edited: 0020971
2024-01-22 21:40Florian DoldNote Edited: 0020971
2024-01-22 21:53Christian GrothoffNote Added: 0020972
2024-01-23 01:01Florian DoldNote Added: 0020976
2024-01-23 01:11Florian DoldNote Added: 0020977
2024-01-24 18:00Christian GrothoffStatusassigned => informing
2024-01-24 18:00Christian GrothoffResolutionopen => fixed
2024-01-24 18:00Christian GrothoffFixed in Version => 0.9.4
2024-01-24 18:00Christian GrothoffNote Added: 0021034
2024-03-07 19:47Christian GrothoffStatusinforming => closed
2025-03-22 13:09Christian GrothoffCategorymechant backend => merchant backend