Talk:Transaction Construction Algorithm (voting pools)

From Open Transactions
Revision as of 12:49, 29 September 2014 by Justusranvier (talk | contribs)
Jump to navigation Jump to search

Larshesel (talk) 14:57, 26 September 2014 (UTC)

In the preparation step it is mentioned that we create a withdrawal status object which is referenced throughout the algorithm.

We add the roundID to this object, but it does not seem to be used anywhere. Is it needed at all?

Justusranvier (talk) 15:41, 26 September 2014 (UTC)

It's needed to match up withdrawalstatus objects with siglist objects.

Larshesel (talk) 08:58, 29 September 2014 (UTC)

In the output list initialization procedure we may return an empty output list if the smallest output is bigger than the sum of the inputs. What should happen if we return an empty output list? The next step (transaction initialization) seems to assume that it is not empty.

As there are no longer any ouputs we cannot make a transaction. I don't seem to find any error code that reflects this situation.

Justusranvier (talk) 12:49, 29 September 2014 (UTC)

Transaction Initialization does not depend on the size of the output list. If the transaction skeleton ends up not being used, then Finalize Transaction will discard it (first step).

Easiest way to see what happens is to just follow the steps with an empty output list and you'll find all the checks that handle it.