¿Por qué tengo más tx sin confirmar que los informes de información de getmempool?

Actualmente tengo 39 tx no confirmados que he enviado de acuerdo con mi bitcoind local:

$ bitcoin-cli listunspent 0 0  | grep account | wc -l
39

(nota: el comando anterior da la respuesta correcta porque los tx se enviaron a la misma billetera bitcoind).

Hice una secuencia de comandos para ver el tamaño de mempool a través de getmempoolinfo y registrar las cantidades altas y bajas. Aquí está la salida:

  size: 9359
  bytes: 9165998

  size_low: 16
  size_low_when: 2017-08-22T14:29:49-07:00

  size_hi: 71196
  size_hi_when: 2017-08-22T13:46:14-07:00

  bytes_low: 3063
  bytes_low_when: 2017-08-22T14:29:49-07:00

  bytes_hi: 53361196
  bytes_hi_when: 2017-08-22T13:46:14-07:00

  last_block_found: 2017-08-23T01:13:02-07:00

Tenga en cuenta que el tamaño más pequeño que se ha visto es 16. Esto proviene de la salida de "tamaño" de getmempool info, que según los documentos de ayuda indica el número de tx en el mempool.

Aparentemente entonces, getmempoolinfo estaba (al menos por un breve tiempo) informando menos tx en el mempool que el número de mis propios tx enviados que aún no están confirmados.

¿Cómo es eso posible? ¿Es esto un error de bitcoind, o estoy malinterpretando algo?

$ bitcoin-cli help getmempoolinfo
getmempoolinfo

Returns details on the active state of the TX memory pool.

Result:
{
  "size": xxxxx                (numeric) Current tx count
  "bytes": xxxxx               (numeric) Sum of all tx sizes
}
Hola George, parece que te has esforzado un poco para escribir tu pregunta. ¿Podría devolver la pregunta a su estado original y publicar su edición como respuesta? Quizás otras personas estén interesadas en leer sobre esto en el futuro.
@Curious George, estoy de acuerdo con Murch. Esta es una pregunta interesante, y podría ser un problema que alguien pueda tener en el futuro. Al responder a su propia pregunta, facilita que otra persona encuentre esta solución y es probable que sea recompensado con votos a favor.

Respuestas (1)

Estás malinterpretando cómo listunspentfunciona getmempoolinfo. listunspentes solo para su billetera y es un comando RPC solo para billetera. Solo mostrará cosas que pertenecen a su billetera. Sin embargo getmempoolinfoes un nodo RPC. Mostrará lo que ve su nodo, que casi siempre será algo más que las cosas en su billetera. Estos dos comandos no tienen ninguna relación y funcionan de forma independiente. No hay relación entre estos dos comandos.