Difference between revisions of "Talk:Transaction Construction Algorithm (voting pools)"

From Open Transactions
Jump to navigation Jump to search
(what is the purpose of ntxid?)
 
(One intermediate revision by one other user not shown)
Line 22: Line 22:
  
 
[[User:Larshesel|Larshesel]] ([[User talk:Larshesel|talk]]) 08:32, 3 October 2014 (UTC)
 
[[User:Larshesel|Larshesel]] ([[User talk:Larshesel|talk]]) 08:32, 3 October 2014 (UTC)
 +
 +
==Output List Initialization==
  
 
In the 'Output List Initialization' I don't think it's specified how to keep track of the outputs that are removed if sum(inputs) < sum(outputs). I would assume that we need to mark the output status in the withdrawal status object so the caller can take appropriate action?
 
In the 'Output List Initialization' I don't think it's specified how to keep track of the outputs that are removed if sum(inputs) < sum(outputs). I would assume that we need to mark the output status in the withdrawal status object so the caller can take appropriate action?
 +
 +
[[User:Justusranvier|Justusranvier]] ([[User talk:Justusranvier|talk]]) 12:37, 3 October 2014 (UTC)
 +
 +
See the flowchart. It explains how to update the output status.
 +
 +
==Finalize Transaction==
  
 
[[User:Larshesel|Larshesel]] ([[User talk:Larshesel|talk]]) 09:23, 3 October 2014 (UTC)
 
[[User:Larshesel|Larshesel]] ([[User talk:Larshesel|talk]]) 09:23, 3 October 2014 (UTC)
  
In the 'Finalize Transaction' we create a ntxid which is used for tracking purposes. What kind of tracking purposes is that?
+
In the 'Finalize Transaction' we create a ntxid which is used for tracking purposes. What kind of tracking purposes is that? I see it is used later to update the outbailment status to split if the outbailment has more than one ntxid.
 +
 
 +
What is ntxid an abbreviation for? Does it have other roles?
 +
 
 +
[[User:Justusranvier|Justusranvier]] ([[User talk:Justusranvier|talk]]) 12:37, 3 October 2014 (UTC)
 +
 
 +
ntxid is a transaction hash (normalized transaction id) with the input scripts blanked out. It's a more reliable way to track unconfirmed transactions.
 +
 
 +
For other uses, see [[updatewithdrawal]]

Latest revision as of 12:37, 3 October 2014

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.

Larshesel (talk) 08:32, 3 October 2014 (UTC)

Output List Initialization

In the 'Output List Initialization' I don't think it's specified how to keep track of the outputs that are removed if sum(inputs) < sum(outputs). I would assume that we need to mark the output status in the withdrawal status object so the caller can take appropriate action?

Justusranvier (talk) 12:37, 3 October 2014 (UTC)

See the flowchart. It explains how to update the output status.

Finalize Transaction

Larshesel (talk) 09:23, 3 October 2014 (UTC)

In the 'Finalize Transaction' we create a ntxid which is used for tracking purposes. What kind of tracking purposes is that? I see it is used later to update the outbailment status to split if the outbailment has more than one ntxid.

What is ntxid an abbreviation for? Does it have other roles?

Justusranvier (talk) 12:37, 3 October 2014 (UTC)

ntxid is a transaction hash (normalized transaction id) with the input scripts blanked out. It's a more reliable way to track unconfirmed transactions.

For other uses, see updatewithdrawal