Remaining wallet backports for 0.13.2 release
Edit: Sorry for force pushing a few times. There were two conflicts, so would be nice if someone could look over the cherry-picks.
Remaining wallet backports for 0.13.2 release
Edit: Sorry for force pushing a few times. There were two conflicts, so would be nice if someone could look over the cherry-picks.
Github-Pull: #9295
Rebased-From: 1a6eacbf3b7e3d5941fec1154079bbc4678ce861
Github-Pull: #9295
Rebased-From: c24a4f5981d47d55aa9e4eb40294832a4d38fb80
Github-Pull: #9326
Rebased-From: bae1eef752dcecfd85fa482881e1dbe4d7e9f74c b05b1af10b9a5298bd90bea439f0fd6c636e0cfa
This resolves an issue where a wallet transaction which failed to
relay previously because it couldn't make it into the mempool
will not try again until restart, even though mempool conditions
may have changed.
Abandoned and known-conflicted transactions are skipped.
Some concern was expressed that there may be users with many
unknown conflicts would waste a lot of CPU time trying to
add them to their memory pools over and over again. But I am
doubtful these users exist in any number, if they do exist
they have worse problems, and they can mitigate any performance
issue this might have by abandoning the transactions in question.
Github-Pull: #9290
Rebased-From: f692fce8a49e05e25f1c767aae1e50db419caebe
Github-Pull: #9302
Rebased-From: b3a74100b86423c553ac327f3ea6fdbc2c50890a
1455+ if (!IsCoinBase() && !isAbandoned() && GetDepthInMainChain() == 0)
1456 {
1457- if (GetDepthInMainChain() == 0 && !isAbandoned() && InMempool()) {
1458+ CValidationState state;
1459+ /* GetDepthInMainChain already catches known conflicts. */
1460+ if (InMempool() || AcceptToMemoryPool(false, maxTxFee, state)) {
fLimitFree
should probably be true
to backport the behavior how it is in master, otoh the other places in wallet.cpp don’t apply the limit, so it should not be applied here for consistency either?
fLimitFree
.
Github-Pull: #9292
Rebased-From: 80d073c9bca4521d512ea14ff7919d4609647b6d
Github-Pull: #9322
Rebased-From: fa615d39b53a9309ef480c41ec073354c4371f40
Just verified that this fixes the OpenSSL issues on fedora rawhide as well:
782328660e6dc44c026d13fef4d069ad8cad4d42:
0wallet/test/crypto_tests.cpp:45:20: error: aggregate 'EVP_CIPHER_CTX ctx' has incomplete type and cannot be defined
1 EVP_CIPHER_CTX ctx;
2 ^~~
After fb987b364511291261b082d5d4206fc296455a3b and a0f7ececfd096df398fc5e4aad07f1a43760afb4, all is fine.