64: слишком длинная цепочка мемпулов

Я использую bitcoind json rpc api для отправки биткойнов на несколько биткойн-адресов. Я использую sendrawtransaction. Когда с моей учетной записи отправлено 24 неподтвержденных платежа, я больше не могу отправлять, потому что получаю эту ошибку:

64: слишком длинная цепочка мемпулов

Я увеличил maxmempool до 1500, но это все равно не исправляет.

root@B2:~# bitcoin-cli getmempoolinfo

    {
      "size": 3946,
      "bytes": 1789073,
      "usage": 6043088,
      "maxmempool": 1500000000,
      "mempoolminfee": 0.00000000
    }

Я использую Ubuntu на сервере с 32 ГБ ОЗУ и жестким диском на 4 ТБ.

Любые идеи о том, как это исправить? Я хочу иметь возможность создать, например, 300 неподтвержденных транзакций и не получать эту ошибку.

Вы пробовали -limitancestorcountи/или -limitdescedantcount?
Нет. Должен ли я помещать это в bitcoin.conf? Спасибо
Либо в bitcoin.conf, либо в командной строке. Это параметры типа отладки/тестирования, поэтому, если вы хотите узнать больше, вам, вероятно, придется прочитать исходный код.

Ответы (2)

Вы не сможете создать неподтвержденную цепочку на 300 транзакций. Ограничение ядра биткойна по умолчанию составляет 25 транзакций. Если вы измените этот параметр на своем локальном узле, сеть не будет принимать цепочку транзакций длиннее 25 транзакций. Вы должны повторно транслировать транзакции после того, как ваша первая партия (25) будет подтверждена.

-limitancestorcount

Не принимать транзакции, если количество предков в мемпуле равно n или больше

и

-limitdescendantcount

Не принимать транзакции, если какой-либо предок будет иметь n или более потомков в мемпуле

Это решило мою проблему. Спасибо, Нейт Элдридж.