Mempool nie je jedna spoločná databáza
Keď uzol prijme nepotvrdenú transakciu, najprv ju overí. Potom ju môže uložiť do pamäťového fondu, skrátene mempoolu. Mempool je iba miestna čakáreň daného uzla. Neexistuje jeden centrálny mempool pre celú sieť.
Uzly dostávajú transakcie v inom čase a môžu mať odlišné limity. Pri zaplnení odstránia menej výhodné položky. Pravidlá prijatia a šírenia sa nazývajú politika uzla. Politika môže byť prísnejšia než konsenzus, ktorý určuje platnosť blokov.
Poplatok sa porovnáva podľa veľkosti
Ťažiara zaujíma, koľko poplatkov sa zmestí do obmedzeného priestoru bloku. Preto sleduje sadzbu poplatku, často v satoshi za virtuálny bajt. Virtuálny bajt, skrátene vB, vyjadruje váženú veľkosť transakcie po zohľadnení SegWitu.
Platba 10 miliónov satoshi môže byť malá a lacná, ak má málo vstupov. Platba 10 000 satoshi môže byť väčšia, ak spája veľa UTXO. Samotná posielaná suma teda neurčuje poplatok. Rozhoduje dátová veľkosť a aktuálna konkurencia o blokový priestor.
- celkový poplatok = súčet vstupov mínus súčet výstupov
- sadzba poplatku = poplatok delený virtuálnou veľkosťou
- vyššia sadzba zvyčajne zvyšuje šancu na skoršie potvrdenie
- žiadna sadzba negarantuje presný čas nasledujúceho bloku
Ťažiari netvoria poradie podľa príchodu
Ťažiar si z vlastného mempoolu skladá kandidátsky blok. Bežne vyberá transakcie a ich balíky podľa výnosu za priestor. Musí pritom rešpektovať závislosti. Dieťa nemôže byť v bloku pred rodičovskou transakciou, ktorej výstup míňa.
Dve transakcie môžu preto prísť v rovnakom čase a potvrdiť sa odlišne. Staršia s nízkou sadzbou môže čakať za novšou s vyššou sadzbou. Ťažiar môže použiť aj inú politiku. Stále však musí vytvoriť blok platný podľa konsenzuálnych pravidiel.
Čakajúcu transakciu možno niekedy urýchliť
RBF znamená replace by fee, teda nahradenie konfliktnej transakcie verziou s vyšším poplatkom. Uzly ju prepošlú iba vtedy, ak spĺňa ich pravidlá nahrádzania. Peňaženka musí zachovať správne vstupy a výstupy. Nejde o úpravu už potvrdenej transakcie.
CPFP znamená child pays for parent. Príjemca alebo vlastník výdavku minie čakajúci výstup v novej transakcii s vyšším poplatkom. Ťažiar posúdi výnos celého balíka rodiča a dieťaťa. Obe metódy závisia od peňaženky, politiky uzlov a podmienok siete.