What is differences of bitcoin mempool anchestor and descendant?

1

is there a specific explanation about the differences between mempool anchestor dan descendants?

there are RPC commmand for "getmempoolanchestors" and "getmempooldescendents". What is mempool anchestor and decendents it self?

each node may have a different mempool size, but what are the differences of the mempool anchestor dan descendants?

cocoklogi

Posted 2019-08-16T00:44:50.757

Reputation: 11

Please edit your question and add some context. I would guess you mean transactions that depend on each other, but it appears as if you assume the mempools themselves are anchestors or descendants.stefanwouldgo 2019-08-20T07:26:39.967

ok thanks, already edited the questions.cocoklogi 2019-09-04T12:42:44.820

Answers

2

Given a transaction, there are inputs to that transaction which are spent to new outputs. The inputs themselves are outputs from a previous transaction. E.g. in tx 1, person A sends BTC to person B. Then, in tx 2, person B uses those outputs to create another transaction to person C.

  1. A -> B
  2. B -> C

Transaction 1 is an ancestor of transaction 2, because without transaction 1, #2 is not valid (the outputs do not exist). Likewise, transaction 2 is a descendant of transaction 1.

The RPC commands let you list ancestors/descendants of any given transaction, which are in the mempool (have not been mined and included in a block yet).

getmempooldescendants "txid" ( verbose )

If txid is in the mempool, returns all in-mempool descendants.

See getmempooldescendants

getmempoolancestors "txid" ( verbose )

If txid is in the mempool, returns all in-mempool ancestors.

See getmempoolancestors

JBaczuk

Posted 2019-08-16T00:44:50.757

Reputation: 6 172