lbryio / lbry-sdk

The LBRY SDK for building decentralized, censorship resistant, monetized, digital content apps.
https://lbry.com
MIT License
7.19k stars 482 forks source link

ancestors issue when prefer_confirmed #3644

Closed tzarebczan closed 2 years ago

tzarebczan commented 2 years ago

Even with prefer confirmed and a bunch of UTXOs, you can run into this issue where it tries to spend utxos that are chained. This happened when updating a bunch of claims one after another from 0.002 LBC to 0.001 LBC, so it should have had enough funds just from the original claim.

"message": "(1, 'the transaction was rejected by network rules.\n\ntoo-long-mempool-chain, too many unconfirmed ancestors [limit: 25] (code 64)\n[01000000028a529c54f145fb4eaacce160cd2f41ecf7bfcce76bedc09c162269401160b26b000000006a47304402200d7034e5b69789d9c173877d1aba3daf7e5700a5fcf583d8f035f1cc3badee2d0220604b79f9c05c9c0791b5c778905036004d239ee680155a31140cfb466e909bc601210339a08101c8e299d2cb9e23395d86ab816ee9f906485e1c9d849bf97dff44b1e3ffffffff49a73b013dbcbb5ef0e314e41dd8ea2f765cf5d93289d978fecdffcff45ad1d8010000006b483045022100e6011df51a63bfc8d89b23706a8fb4715b2f57c9c38a42b66a7fd4590683beb7022055d40d85fa4bfc69db3e44434a0120dda834600456fe2d0fc21935799952bc84012102eb3b23ac92b3666f2f1e0b6809c681bec6b3eada418fc9c2ee3d9a8b0336120affffffff02a086010000000000fd2508b72070617175697374c3a36f2d706573736f61732d626c6f717565616461732d6e6114ec57bf33056c214375ea472eadc9f5045c209ab14dd007017c2bca8667b39ba0243adbec3c296915debf628c0c471b40589026a78d488e4e03866b1185e0c212d09896f0c895257b282d420277223b663397f461295b95aae3aa3edc2342fadb4e47e3c883e0de2c5a6f92800aca010a96010a30fdc7b7387907ca291fae80ec235114ad4779467b02fa337f98da800a24d1d3d730b111e1b7b6ff81ce6e537af14903fd1220706171756973742d6f2d706573736f61732d626c6f717565616461732e6d70341891e0ab0d2209766964656f2f6d70343230e7b4b423fbe52e2a5752fae15c77fd13639495b8b6e95257f75a5902d4f357094d122d59becbae4598968520ff5b52991a1f436f7079726967687465642028636f6e74616374207075626c6973686572292880f5bd87065a0808800f10b808183b424850617175697374c3a36f3a20706573736f617320626c6f71756561646173206e6120706173736167656d2064612066726f6e746569726120636f6d2041666567616e697374c3a36f4ac60b4f2054616c6962c3a320286f7267616e697a61c3a7c3a36f2070726f6962696461206e612052c3ba73736961206520656d2076c3a172696f73206f7574726f73207061c3ad73657329206465636c61726f752074657220746f6d61646f206f20636f6e74726f6c6520646120636964616465206465205370696e20426f6c64616b2c206e612066726f6e746569726120636f6d206f2050617175697374c3a36f2c20652073757370656e64657520746f6461732061732076696167656e73206174726176c3a97320646120706173736167656d2e204f2066656368616d656e746f20646120706173736167656d2066726f6e7465697269c3a76120646569786f752063656e74656e617320646520706573736f617320626c6f7175656164617320656d20616d626f73206f73206c61646f732e0a0a536520696e7363726576613a2068747470733a2f2f7777772e796f75747562652e636f6d2f632f537075746e696b42726173696c566964656f0a0a53696761206120537075746e696b2042726173696c2074616d62c3a96d20656d206f757472617320706c617461666f726d61733a0a50c3a167696e61206f66696369616c3a2068747470733a2f2f62722e737075746e696b6e6577732e636f6d2f200a46616365626f6f6b3a2068747470733a2f2f7777772e66616365626f6f6b2e636f6d2f4f6666696369616c537075746e696b42726173696c2f0a547769747465723a2068747470733a2f2f747769747465722e636f6d2f737075746e696b5f62726173696c0a54656c656772616d3a2068747470733a2f2f742e6d652f537075746e696b42726173696c0a0a4120537075746e696b20c3a920756d6120646173206d61696f726573206dc3ad6469617320696e7465726e6163696f6e6169732e20456c61207265c3ba6e65207369746573206e6120496e7465726e657420656d203332206964696f6d61732c2063656e747261646f7320656d2076c3a172696f73207061c3ad73657320652072656769c3b565732c20656d6973736f7261732064652072c3a164696f20616e616cc3b3676963612065206469676974616c20656d20727573736f2c20696e676cc3aa732065206672616e63c3aa73206520656d206f7574726f73206964696f6d617320656d203935206369646164657320646f206d756e646f2065206e6120496e7465726e65742e204f73206665656473206465206e6f74c3ad6369617320646120537075746e696b2074726162616c68616d2032342f37207061726120666f726e6563657220696e666f726d61c3a7c3a36f20656d20696e676cc3aa732c20c3a1726162652c20657370616e686f6c2c206368696ec3aa73206520706572736120c3a07320656469c3a7c3b56573206d61697320696d706f7274616e74657320646f206d756e646f2e204f2070c3ba626c69636f206c6569746f7220646120537075746e696b20737570657261203630206d696c68c3b5657320646520757375c3a172696f73206d656e736169732c206e6f20576569626f2c2073c3a36f2071756173652039206d696c68c3b5657320646520706573736f6173207175652073756273637265766572616d2d7365206e6120537075746e696b204368696e612e204d616973206465206d696c2066756e63696f6ec3a172696f732064652064657a656e6173206465206e6163696f6e616c6964616465732074726162616c68616d20656d2032322072656461c3a7c3b5657320646120537075746e696b20656d2076c3a172696f73207061c3ad73657320646f206d756e646f2c2064652050657175696d2061204d6f6e7465766964c3a9752e204120537075746e696b2066617a20706172746520646f20677275706f206d696469c3a17469636f20526f7373697961205365676f646e79612e2041207365646520646120537075746e696b20c3a9207369747561646120656d204d6f73636f752e0a2e2e2e0a68747470733a2f2f7777772e796f75747562652e636f6d2f77617463683f763d573344686775564852773452292a2768747470733a2f2f7468756d626e61696c732e6c6272792e636f6d2f57334468677556485277345a0c61666567616e697374c3a36f5a066368616d616e5a09636f6dc3a97263696f5a0966726f6e74656972615a096e6f74c3ad636961735a0a70617175697374c3a36f5a0b7370696e20626f6c64616b5a0774616c6962c3a35a0874616c6962c3a3735a0674726f70617362030883016d6d76a914034bc2877f63aead7ff4f8ee7244946a5aa2c3c188ac4d1a1400000000001976a914be5d9c9cd09260cb002f3a0798c913821f2bb57788ac00000000]')" } `

tzarebczan commented 2 years ago

utxos at that time: image

tzarebczan commented 2 years ago

Nevermind, those utxos were in another spending account. https://github.com/lbryio/lbry-sdk/issues/3170 would solve this.