View Issue Details

IDProjectCategoryView StatusLast Update
0010183Talerexchangepublic2025-07-14 22:49
ReporterFlorian Dold Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Target Version1.0 stretch goalsFixed in Version1.0 stretch goals 
Summary0010183: large batch deposit causes exchange to crash
Description$ taler-harness run-integrationtests deposit-large

*Only* works in wallet-core commit 9c0fc4565460544a4f377d62bc5e18182e3ed7ca.

Later versions will not use large batches, but instead split them up. We should consider adding a separate taler-harness test that does a manual deposit to test that the exchange handles it properly.
Additional Information#0 TALER_denom_sig_free (denom_sig=0x88) at denom.c:215
215 if (NULL != denom_sig->unblinded_sig)
(gdb) bt
#0 TALER_denom_sig_free (denom_sig=0x88) at denom.c:215
#1 0x000000000040b7eb in bdc_cleaner (rc=<optimized out>) at taler-exchange-httpd_batch-deposit.c:1114
#2 0x00000000004026d9 in handle_mhd_completion_callback (cls=<optimized out>, connection=0x3b798960, con_cls=0x3b798a18, toe=MHD_REQUEST_TERMINATED_COMPLETED_OK) at taler-exchange-httpd.c:1028
#3 0x00007f58ec6dbeb8 in connection_reset (connection=0x3b798960, reuse=true) at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/connection.c:7123
#4 MHD_connection_handle_idle (connection=connection@entry=0x3b798960) at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/connection.c:7508
#5 0x00007f58ec6ddee3 in call_handlers (con=con@entry=0x3b798960, read_ready=<optimized out>, read_ready@entry=false, write_ready=<optimized out>, force_close=<optimized out>)
    at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/daemon.c:1333
#6 0x00007f58ec6de332 in internal_run_from_select.isra.0 (daemon=0x3b7982f0, read_fd_set=0x7ffc76e75300, write_fd_set=0x7ffc76e75280, except_fd_set=0x7ffc76e75200, fd_setsize=1024)
    at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/daemon.c:4578
#7 0x00007f58ec6e85a5 in MHD_select (daemon=0x3b7982f0, millisec=<optimized out>) at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/daemon.c:4953
#8 0x00007f58ec6e96ae in MHD_run_wait (daemon=<optimized out>, millisec=millisec@entry=0) at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/daemon.c:5922
#9 0x00007f58ec6e96fb in MHD_run (daemon=<optimized out>) at /usr/src/debug/libmicrohttpd-1.0.1-3.fc42.x86_64/src/microhttpd/daemon.c:5830
#10 0x00007f58ecc856fd in run_daemon (cls=0x3b7982c0) at mhd_run.c:99
#11 0x00007f58ec66c206 in GNUNET_SCHEDULER_do_work (sh=0x3b77ad60) at ../src/lib/util/scheduler.c:2144
#12 0x00007f58ec66cff2 in select_loop (sh=0x3b77ad60, context=0x7ffc76e754f0) at ../src/lib/util/scheduler.c:2443
#13 0x00007f58ec667410 in GNUNET_SCHEDULER_run (task=0x7f58ec660e62 <program_main>, task_cls=0x7ffc76e75700) at ../src/lib/util/scheduler.c:743
#14 0x00007f58ec661f1b in GNUNET_PROGRAM_run2 (pd=0x7f58ecc32ca0 <exchange_pd>, argc=4, argv=0x7ffc76e75bf8, binaryName=0x454071 "taler-exchange-httpd", binaryHelp=0x454055 "Taler exchange HTTP service", options=0x7ffc76e75830,
    task=0x405660 <run>, task_cls=0x0, run_without_scheduler=0) at ../src/lib/util/program.c:388
#15 0x00007f58ec66205f in GNUNET_PROGRAM_run (pd=0x7f58ecc32ca0 <exchange_pd>, argc=4, argv=0x7ffc76e75bf8, binaryName=0x454071 "taler-exchange-httpd", binaryHelp=0x454055 "Taler exchange HTTP service", options=0x7ffc76e75830,
    task=0x405660 <run>, task_cls=0x0) at ../src/lib/util/program.c:416
#16 0x0000000000402183 in main (argc=4, argv=0x7ffc76e75bf8) at taler-exchange-httpd.c:2943
TagsNo tags attached.

Activities

Florian Dold

2025-07-14 22:35

manager   ~0025499

I've now added a separate test that will also trigger the large deposit in the future, even when the wallet slices up batches properly:

$ taler-harness run-integrationtests deposit-too-large

Christian Grothoff

2025-07-14 22:49

manager   ~0025500

Fix committed to master branch.

Christian Grothoff

2025-07-14 22:49

manager   ~0025501

Fixed in c02d69f08..7dbff77be

Related Changesets

exchange: master 7dbff77b

2025-07-15 00:49

Christian Grothoff


Details Diff
fix 0010183 Affected Issues
0010183
mod - src/exchange/taler-exchange-httpd_batch-deposit.c Diff File

Issue History

Date Modified Username Field Change
2025-07-14 22:23 Florian Dold New Issue
2025-07-14 22:23 Florian Dold Status new => assigned
2025-07-14 22:23 Florian Dold Assigned To => Christian Grothoff
2025-07-14 22:35 Florian Dold Note Added: 0025499
2025-07-14 22:49 Christian Grothoff Changeset attached => exchange master 7dbff77b
2025-07-14 22:49 Christian Grothoff Note Added: 0025500
2025-07-14 22:49 Christian Grothoff Status assigned => resolved
2025-07-14 22:49 Christian Grothoff Resolution open => fixed
2025-07-14 22:49 Christian Grothoff Fixed in Version => 1.0 stretch goals
2025-07-14 22:49 Christian Grothoff Note Added: 0025501