View Issue Details

IDProjectCategoryView StatusLast Update
0005389Talerexchangepublic2019-12-20 19:12
ReporterChristian Grothoff Assigned ToMarcello Stanisci  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product Versiongit (master) 
Target Version0.6Fixed in Version0.6 
Summary0005389: taler-exchange-benchmark fails to run
DescriptionSeems some of the steps in the interpreter it uses are borked / were not maintained:

Jul 04 00:43:59-998781 taler-exchange-httpd-60464 INFO Handling request for URL '/keys'

Jul 04 00:44:00-003771 taler-exchange-httpd-60464 INFO Handling request for URL '/keys'
taler-exchange-wirewatch: invalid option -- t
Use --help to get a list of options.
Jul 04 00:44:00-116025 taler-exchange-httpd-60464 INFO Handling request for URL '/reserve/withdraw'
Jul 04 00:44:00-116063 taler-exchange-httpd-60464 INFO Handling request for URL '/reserve/withdraw'
Jul 04 00:44:00-116079 taler-exchange-httpd-60464 INFO Handling request for URL '/reserve/withdraw'
{"error": "unknown entity referenced", "code": 1101, "parameter": "reserve_pub"}Jul 04 00:44:00-136890 taler-exchange-benchmark-60459 ERROR At least one coin has not correctly been withdrawn
Sorry, no results, benchmark did not get warm!
Steps To ReproduceYou may first have to
$ unset XDG_CONFIG_HOME
$ unset XDG_DATA_HOME

Then in src/benchmark/:

taler-exchange-benchmark -a -l 10000 -s 20 -c taler-exchange-benchmark.conf
TagsNo tags attached.

Activities

Marcello Stanisci

2018-07-04 14:36

reporter   ~0013135

Yes, it's been a long time this component's left untouched. A reasonable thing is to refactor it by using the new "traits-based" style we've been using for all the other tests and benchmarks.

Christian Grothoff

2018-07-04 16:16

manager   ~0013136

Yes, please do that refactoring.

Marcello Stanisci

2018-07-24 15:41

reporter   ~0013144

That refactoring brings up something to consider:

1) We will lose the fact to keep coins into a array. Each command
  has its own data where a coin is kept. Should not hurt.

2) We won't be able to measure time progressively: the current benchmark
  can print how much time was spent every 50 runs. With such a refactoring
  we can't go in between CMDs to measure time, we can simply take the time at
  the beginning of execution and at the very end. Again not a hard problem in
  my opinion.

3) We can't decide if CMD+1 will be a refresh or not as we do in the
  current version; this happens because CMDs do not take custom callbacks.
  However, we _might_ be able to dynamically construct those CMDs lists
  and insert refresh CMDs in them in a random fashion, but this is theory for now.

Christian Grothoff

2018-07-24 21:38

manager   ~0013145

(1): agree, (2) agree, (3) also agree.

Marcello Stanisci

2018-07-25 10:41

reporter   ~0013146

94602067 batches all the CMDs together. Time measuring missing.

Marcello Stanisci

2018-07-25 13:40

reporter   ~0013147

3af3a9fdc374bbbb8f6f includes time measurement; however _sometimes_, and likely when a high number of iteration is specified, the tool fails with:

Jul 25 13:37:33-607011 taler-exchange-benchmark-23768 ERROR Assertion failed at amount.c:361. Aborting.

The 'benchmark' directory should also be cleaned by old files related to the old tool.

Marcello Stanisci

2018-07-25 15:45

reporter   ~0013148

953a2bd3 includes a example config file. `taler-exchange-wire' should be run from within the benchmark.

Marcello Stanisci

2018-07-25 16:42

reporter   ~0013149

Last edited: 2018-07-25 16:43

fixed at 880ce0bd, a updated example config file suitable for running benchmarks has also been added in the 'benchmark' folder.

Issue History

Date Modified Username Field Change
2018-07-04 00:46 Christian Grothoff New Issue
2018-07-04 00:46 Christian Grothoff Status new => assigned
2018-07-04 00:46 Christian Grothoff Assigned To => Marcello Stanisci
2018-07-04 14:36 Marcello Stanisci Note Added: 0013135
2018-07-04 16:16 Christian Grothoff Note Added: 0013136
2018-07-24 15:41 Marcello Stanisci Note Added: 0013144
2018-07-24 21:38 Christian Grothoff Note Added: 0013145
2018-07-25 10:41 Marcello Stanisci Note Added: 0013146
2018-07-25 13:40 Marcello Stanisci Note Added: 0013147
2018-07-25 15:45 Marcello Stanisci Note Added: 0013148
2018-07-25 16:42 Marcello Stanisci Note Added: 0013149
2018-07-25 16:42 Marcello Stanisci Status assigned => resolved
2018-07-25 16:42 Marcello Stanisci Resolution open => fixed
2018-07-25 16:43 Marcello Stanisci Note Edited: 0013149
2018-09-15 11:06 Christian Grothoff Fixed in Version => 0.6
2019-12-20 19:12 Christian Grothoff Status resolved => closed