Just some observation, which can be interesting for some testnet3 users: there are many transactions, displayed on
https://mempool.space/testnet which stay unconfirmed for days, even though some blocks, mined by some miners, are far from being full, and these transactions could easily be included by them (because they already include transactions with lower fee rates).
So, why a lot of blocks are empty? Because a lot of users just send their transactions once, and close their clients.
And, what happens, when their nodes are offline? Well, these transactions are never re-broadcasted by anyone. So, when new miners come in, then they don't receive those transactions. They don't include them in their block templates, and they are waiting longer and longer, until some old miner include it in some block.
Some example:
https://mempool.space/testnet/tx/882cf91eb089fd83ae26f6f557dc0d5ff4a670b07b405282200c5fd963267329#vin=0This transaction was unconfirmed for 4 days. And it would probably stay unconfirmed for much longer than that. However:
$ ./bitcoin-cli -testnet sendrawtransaction 020000000001016e8cdd2c2715e1c9453929489182ab9af4cd8d74241518155a000faa29e96d920200000000fdffffff0242d813000000000022512043d25bc290142d1031a0b22367991bfe1a9f1334c2b232e230377bcf11cdcec642d8130000000000225120d7e7bc85cc1012351c33fc2211ce46a8edba5aa204d75334643a1210f65020da0140853bf59989a9e3a21ec7af6f558626287f14c1e7e48bd590bc22310f09811758044191b7f23c300e8d98cd23fe2f07941e6e49766261ddf762cf4ee3c565c1e700000000
882cf91eb089fd83ae26f6f557dc0d5ff4a670b07b405282200c5fd963267329
And, just one minute later, it is confirmed! (the same was true for more than this one transaction, so I am sure, that it is not just some coincidence; everything I rebroadcasted, was confirmed in minutes, even if it was first seen days ago)
Conclusions: it is a good idea to run a full node (even in pruning mode), if you want to get your transactions confirmed sooner than later. You can have "fee rate" of 856 sat/vB, and "effective fee rate" of 3,048 sat/vB, and wait days for a single confirmation. However, if you just run a full node, and it will re-broadcast your transactions periodically, then not only you can get it confirmed sooner, but also you can make it cheaper, when you hit a miner, who just joined, and don't have fully filled mempool yet (not to mention about full-RBF potential, where you can replace more expensive transaction with some cheaper version, if some miner does not have the properly synchronized mempool state).
Also, it is an interesting observation, when you notice, that people are shouting about Ordinals as "not a spam", but they don't even care about re-broadcasting their own transactions, and they end their journey, when their transactions are displayed in block explorers.