View Issue Details

IDProjectCategoryView StatusLast Update
0006892Talermerchant backendpublic2021-09-02 16:23
Reportersebasjm 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
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.8Fixed in Version0.8 
Summary0006892: querying the tip with pickup return 404, expected: pickups empty
Descriptioncreate a reserve, authorize a tip, no pickup

returns 404, not found
expected 200, found, but pickups empty


$ curl 'http://localhost:9966/instances/default/private/tips/8TYTKTGSSFSK5AMHCA4REF6TN6003ETMFW5ZSMVRAZT3DTXD7B7DSGXTCSDAFH91P1K7MG1NJGHTNH78CP9SN82YDBEG2FBJ6EHWHDR' -H 'Authorization: Bearer secret-token:super_secret'
{
  "total_authorized": "COL:1",
  "total_picked_up": "COL:0",
  "reason": "asd",
  "expiration": {
    "t_ms": 1653505684000
  },
  "reserve_pub": "72HSY0ZVWPQP3AAHD9Q53A1P90W1BYVZQ8394VV7B28W9K9K8TW0",
  "pickups": null
}

$ curl 'http://localhost:9966/instances/default/private/tips/8TYTKTGSSFSK5AMHCA4REF6TN6003ETMFW5ZSMVRAZT3DTXD7B7DSGXTCSDAFH91P1K7MG1NJGHTNH78CP9SN82YDBEG2FBJ6EHWHDR?pickups=yes' -H 'Authorization: Bearer secret-token:super_secret'
{
  "code": 2007,
  "hint": "The tip ID is unknown. This could happen if the tip has expired.",
  "detail": null
}
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2021-05-27 10:27

manager   ~0017918

5dea2c7..a306448 should fix this. It would be good if you could write an automated test case for this and add it to the test suite (shell script).

sebasjm

2021-05-28 16:08

developer   ~0017929

added a test in dcaa1bb5..a91527bb

bonus track, i found that you could create a reserve with invalid currency. added that at the end

sebasjm

2021-05-28 19:10

developer   ~0017930

is worth to mention that sometimes running the test I get this error

Setting up auditor signatures ... OK
Configuring merchant instance ...OK
creating reserve ...OK
Wire transfering...OK
May 28 15:39:07-957727 taler-exchange-wirewatch-325 INFO wirewatch: requesting incoming history from http://localhost:8082/taler-wire-gateway/Exchange/
May 28 15:39:07-957803 taler-exchange-wirewatch-325 INFO Requesting credit history at `http://localhost:8082/taler-wire-gateway/Exchange/history/incoming?delta=1024'
May 28 15:39:08-211052 taler-exchange-wirewatch-325 INFO Adding wire transfer over TESTKUDOS:2 with (hashed) subject `205QW4AD'
May 28 15:39:08-211505 taler-exchange-wirewatch-325 INFO Creating reserve 205QW4AD with expiration in 28 days
May 28 15:39:08-211853 pq-325 INFO Query `reserve_create' failed with result: could not serialize access due to read/write dependencies among transactions/Reason code: Canceled on identification as a pivot, during write./ERROR: could not serialize access due to read/write dependencies among transactions
DETAIL: Reason code: Canceled on identification as a pivot, during write.
HINT: The transaction might succeed if retried.
/PGRES_FATAL_ERROR/ERROR: could not serialize access due to read/write dependencies among transactions
DETAIL: Reason code: Canceled on identification as a pivot, during write.
HINT: The transaction might succeed if retried.

May 28 15:39:08-211868 taler-exchange-wirewatch-325 WARNING Got DB soft error for reserves_in_insert. Rolling back.
May 28 15:39:08-212136 taler-exchange-wirewatch-325 INFO wirewatch: requesting incoming history from http://localhost:8082/taler-wire-gateway/Exchange/
May 28 15:39:08-212152 taler-exchange-wirewatch-325 INFO Requesting credit history at `http://localhost:8082/taler-wire-gateway/Exchange/history/incoming?delta=1024&start=1'
May 28 15:39:08-476086 taler-exchange-wirewatch-325 INFO Shutdown due to test mode!
authorizing tip ...OK


also I have added a sleep after the exchange takes a look into the wire transfers, without that wait (line 69) the reserve fails sometimes.
Is this expected?

Christian Grothoff

2021-05-29 20:58

manager   ~0017932

I fixed the rollback handling and now the tests pass on my system without problems.

Christian Grothoff

2021-09-02 16:23

manager   ~0018346

Fix committed to master branch.

Issue History

Date ModifiedUsernameFieldChange
2021-05-26 20:05sebasjmNew Issue
2021-05-26 20:05sebasjmStatusnew => assigned
2021-05-26 20:05sebasjmAssigned To => Christian Grothoff
2021-05-27 10:27Christian GrothoffNote Added: 0017918
2021-05-27 10:27Christian GrothoffAssigned ToChristian Grothoff => sebasjm
2021-05-27 10:27Christian GrothoffStatusassigned => feedback
2021-05-27 10:27Christian GrothoffTarget Versiongit (master) => 0.9
2021-05-28 16:08sebasjmNote Added: 0017929
2021-05-28 19:10sebasjmNote Added: 0017930
2021-05-29 20:58Christian GrothoffNote Added: 0017932
2021-05-29 20:59Christian GrothoffAssigned Tosebasjm => Christian Grothoff
2021-05-29 20:59Christian GrothoffStatusfeedback => informing
2021-05-29 20:59Christian GrothoffResolutionopen => fixed
2021-05-29 20:59Christian GrothoffFixed in Version => 0.9
2021-07-30 11:57Christian GrothoffFixed in Version0.9 => 0.8.1
2021-07-30 11:59Christian GrothoffTarget Version0.9 => 0.8.1
2021-07-30 12:01Christian GrothoffFixed in Version0.8.1 => 0.8
2021-07-30 12:02Christian GrothoffTarget Version0.8.1 => 0.8
2021-08-24 14:22Christian GrothoffStatusinforming => closed
2021-09-02 16:22Christian Grothoff
2021-09-02 16:23Christian GrothoffNote Added: 0018346
2025-03-22 13:09Christian GrothoffCategorymechant backend => merchant backend