💬 TheCharlatan commented on pull request "blockstorage: add an assert to avoid running oom with `-fastprune`":
(https://github.com/bitcoin/bitcoin/pull/27191#discussion_r1125565424)
Instead of asserting, how about setting the block file size dynamically in case the block to be written exceeds the limit? Something like:
```
- const unsigned int max_blockfile_size{gArgs.GetBoolArg("-fastprune", false) ? 0x10000 /* 64kb */ : MAX_BLOCKFILE_SIZE};
+ unsigned int max_blockfile_size = MAX_BLOCKFILE_SIZE;
+ if (gArgs.GetBoolArg("-fastprune", false)) {
+ max_blockfile_size = 0x10000; // 64kiB
+ if (nAddSize >= max_blockfile_size) {
+
...
(https://github.com/bitcoin/bitcoin/pull/27191#discussion_r1125565424)
Instead of asserting, how about setting the block file size dynamically in case the block to be written exceeds the limit? Something like:
```
- const unsigned int max_blockfile_size{gArgs.GetBoolArg("-fastprune", false) ? 0x10000 /* 64kb */ : MAX_BLOCKFILE_SIZE};
+ unsigned int max_blockfile_size = MAX_BLOCKFILE_SIZE;
+ if (gArgs.GetBoolArg("-fastprune", false)) {
+ max_blockfile_size = 0x10000; // 64kiB
+ if (nAddSize >= max_blockfile_size) {
+
...
📝 ishaanam opened a pull request: "test: fix race condition in encrypted wallet rescan tests"
(https://github.com/bitcoin/bitcoin/pull/27199)
This fixes https://github.com/bitcoin/bitcoin/pull/26347#discussion_r1123340738
(https://github.com/bitcoin/bitcoin/pull/27199)
This fixes https://github.com/bitcoin/bitcoin/pull/26347#discussion_r1123340738
💬 ishaanam commented on pull request "wallet: ensure the wallet is unlocked when needed for rescanning":
(https://github.com/bitcoin/bitcoin/pull/26347#discussion_r1125568137)
Ok, I think I understand what you mean now. I have implemented this using multi-threading in #27199. However, for me this no longer fails without the fix.
(https://github.com/bitcoin/bitcoin/pull/26347#discussion_r1125568137)
Ok, I think I understand what you mean now. I have implemented this using multi-threading in #27199. However, for me this no longer fails without the fix.
💬 kiminuo commented on pull request "Add feerate histogram to getmempoolinfo":
(https://github.com/bitcoin/bitcoin/pull/21422#discussion_r1125568212)
@0xB10C I modified
```cpp
for (const CTxMemPoolEntry& e : pool.mapTx) {
const CAmount fee{e.GetFee()};
const uint32_t size{uint32_t(e.GetTxSize())};
const CAmount fee_rate{CFeeRate{fee, size}.GetFee(1)};
// Distribute fee rates
for (size_t i = floors.size(); i-- > 0;) {
if (fee_rate >= floors[i]) {
sizes[i] += size;
++count[i];
fees[i] += fee;
break;
}
}
}
```
to
```cpp
std::vecto
...
(https://github.com/bitcoin/bitcoin/pull/21422#discussion_r1125568212)
@0xB10C I modified
```cpp
for (const CTxMemPoolEntry& e : pool.mapTx) {
const CAmount fee{e.GetFee()};
const uint32_t size{uint32_t(e.GetTxSize())};
const CAmount fee_rate{CFeeRate{fee, size}.GetFee(1)};
// Distribute fee rates
for (size_t i = floors.size(); i-- > 0;) {
if (fee_rate >= floors[i]) {
sizes[i] += size;
++count[i];
fees[i] += fee;
break;
}
}
}
```
to
```cpp
std::vecto
...
💬 LarryRuane commented on pull request "bench: update logging benchmarks":
(https://github.com/bitcoin/bitcoin/pull/26957#discussion_r1125575680)
Thanks, @MarcoFalke, good suggestion, [this branch](https://github.com/LarryRuane/bitcoin/commits/pr26957-1) changes that commit to not touch production code ([individual commit](https://github.com/LarryRuane/bitcoin/commit/a1cd3cc17b9fdce1d60d662c447f845a12063d81)) @jonatack, feel free to cherry-pick.
(https://github.com/bitcoin/bitcoin/pull/26957#discussion_r1125575680)
Thanks, @MarcoFalke, good suggestion, [this branch](https://github.com/LarryRuane/bitcoin/commits/pr26957-1) changes that commit to not touch production code ([individual commit](https://github.com/LarryRuane/bitcoin/commit/a1cd3cc17b9fdce1d60d662c447f845a12063d81)) @jonatack, feel free to cherry-pick.
✅ mraksoll4 closed an issue: "Release 0.24.0.1 File system error."
(https://github.com/bitcoin/bitcoin/issues/27198)
(https://github.com/bitcoin/bitcoin/issues/27198)
📝 theStack opened a pull request: "test: psbt: check non-witness UTXO removal for segwit v1 input"
(https://github.com/bitcoin/bitcoin/pull/27200)
This PR adds missing test coverage for dropping non-witness UTXOs from PSBTs for segwit v1+ inputs (see commit 103c6fd2791f7e73eeab7f3900fbedd5b550211d). The formerly [disabled](46004790588c24174a0bec49b540d158ce163ffd) method `test_utxo_conversion` is re-enabled and adapted to spend a Taproot (`bech32m`) instead of a wrapped SegWit (`p2sh-segwit`) output. Note that in contrast to the original test, we have to add the non-witness UTXO manually here using the test framework's PSBT module, since t
...
(https://github.com/bitcoin/bitcoin/pull/27200)
This PR adds missing test coverage for dropping non-witness UTXOs from PSBTs for segwit v1+ inputs (see commit 103c6fd2791f7e73eeab7f3900fbedd5b550211d). The formerly [disabled](46004790588c24174a0bec49b540d158ce163ffd) method `test_utxo_conversion` is re-enabled and adapted to spend a Taproot (`bech32m`) instead of a wrapped SegWit (`p2sh-segwit`) output. Note that in contrast to the original test, we have to add the non-witness UTXO manually here using the test framework's PSBT module, since t
...
💬 ishaanam commented on pull request "wallet: when a block is disconnected, update transactions that are no longer conflicted":
(https://github.com/bitcoin/bitcoin/pull/27145#issuecomment-1455001809)
@ryanofsky
> I think there is a potential problem with the implementation though because it isn't recursively marking conflicted transactions as unconfirmed, only marking the top level transactions without recursing.
Yes, I had forgotten about this, thanks for pointing it out!
> I think a good approach could be to steal from the previous implementation of this idea in commits https://github.com/bitcoin/bitcoin/commit/b8b4592d985fa36dd0dddfd0e2bc6daf8df6e79c and https://github.com/bitcoin/
...
(https://github.com/bitcoin/bitcoin/pull/27145#issuecomment-1455001809)
@ryanofsky
> I think there is a potential problem with the implementation though because it isn't recursively marking conflicted transactions as unconfirmed, only marking the top level transactions without recursing.
Yes, I had forgotten about this, thanks for pointing it out!
> I think a good approach could be to steal from the previous implementation of this idea in commits https://github.com/bitcoin/bitcoin/commit/b8b4592d985fa36dd0dddfd0e2bc6daf8df6e79c and https://github.com/bitcoin/
...
💬 fanquake commented on pull request "test: fix race condition in encrypted wallet rescan tests":
(https://github.com/bitcoin/bitcoin/pull/27199#issuecomment-1455040012)
Is this a draft because you haven't tested under Valgrind yet? Could add to the PR description what needs doing.
(https://github.com/bitcoin/bitcoin/pull/27199#issuecomment-1455040012)
Is this a draft because you haven't tested under Valgrind yet? Could add to the PR description what needs doing.
⚠️ da2ce7 opened an issue: "Full Support for Spending Untrusted Unconfirmed Outputs"
(https://github.com/bitcoin/bitcoin/issues/27202)
Spending untrusted unconfirmed outputs should be supported and robust.
Key feature:
1. Calculation of the appropriate fee based upon the transaction package.
2. When a dependent transaction is modified, (for example RBF increase), the dependent transaction should be updated appropriately. Users can optionally automate this process, and keep the appropriate signing keys online until the transaction package confirms (as this involves decreasing the transaction fee as the dependent transacti
...
(https://github.com/bitcoin/bitcoin/issues/27202)
Spending untrusted unconfirmed outputs should be supported and robust.
Key feature:
1. Calculation of the appropriate fee based upon the transaction package.
2. When a dependent transaction is modified, (for example RBF increase), the dependent transaction should be updated appropriately. Users can optionally automate this process, and keep the appropriate signing keys online until the transaction package confirms (as this involves decreasing the transaction fee as the dependent transacti
...
💬 fanquake commented on pull request "test: fix race condition in encrypted wallet rescan tests":
(https://github.com/bitcoin/bitcoin/pull/27199#issuecomment-1455216689)
Worked for me under a recent Valgrind run.
(https://github.com/bitcoin/bitcoin/pull/27199#issuecomment-1455216689)
Worked for me under a recent Valgrind run.
💬 fanquake commented on issue "Intermittent issue in p2p_ibd_stalling.py self.wait_until(lambda: self.total_bytes_recv_for_blocks() == 172761)":
(https://github.com/bitcoin/bitcoin/issues/27112#issuecomment-1455217136)
I've also just had `p2p_ibd_stalling.py` fail under Valgrind (40c6c85c05812ee8bf824b639307b1ac17a001c4):
```bash
test 2023-03-05T21:26:43.074000Z TestFramework.node0 (DEBUG): Connecting to 127.0.0.1:12173 outbound-full-relay
node0 2023-03-05T21:26:43.265731Z [msghand] [net_processing.cpp:5807] [SendMessages] [net] Requesting block 752405439cea869d584044084502582bc209e4ef97e4bf3b8c2ba3958acaf606 (21) peer=0
node0 2023-03-05T21:26:43.267295Z [msghand] [net.cpp:2816] [PushMessage] [net] s
...
(https://github.com/bitcoin/bitcoin/issues/27112#issuecomment-1455217136)
I've also just had `p2p_ibd_stalling.py` fail under Valgrind (40c6c85c05812ee8bf824b639307b1ac17a001c4):
```bash
test 2023-03-05T21:26:43.074000Z TestFramework.node0 (DEBUG): Connecting to 127.0.0.1:12173 outbound-full-relay
node0 2023-03-05T21:26:43.265731Z [msghand] [net_processing.cpp:5807] [SendMessages] [net] Requesting block 752405439cea869d584044084502582bc209e4ef97e4bf3b8c2ba3958acaf606 (21) peer=0
node0 2023-03-05T21:26:43.267295Z [msghand] [net.cpp:2816] [PushMessage] [net] s
...
⚠️ Victorcorreiaaraujo opened an issue: "Vahhh"
(https://github.com/bitcoin/bitcoin/issues/27204)
<!-- Needs the label "good first issue" assigned manually before or after opening -->
<!-- A good first issue is an uncontroversial issue, that has a relatively unique and obvious solution -->
<!-- Motivate the issue and explain the solution briefly -->
#### Useful skills:
<!-- (For example, “std::thread”, “Qt5 GUI and async GUI design” or “basic understanding of Bitcoin mining and the Bitcoin Core RPC interface”.) -->
#### Want to work on this issue?
For guidance on contributing, please r
...
(https://github.com/bitcoin/bitcoin/issues/27204)
<!-- Needs the label "good first issue" assigned manually before or after opening -->
<!-- A good first issue is an uncontroversial issue, that has a relatively unique and obvious solution -->
<!-- Motivate the issue and explain the solution briefly -->
#### Useful skills:
<!-- (For example, “std::thread”, “Qt5 GUI and async GUI design” or “basic understanding of Bitcoin mining and the Bitcoin Core RPC interface”.) -->
#### Want to work on this issue?
For guidance on contributing, please r
...
📝 TheCharlatan opened a pull request: "doc: Show how less noisy clang-tidy output can be achieved"
(https://github.com/bitcoin/bitcoin/pull/27205)
Adds a paragraph to the clang-tidy section explaining how to de-noise its output. By default clang-tidy will print errors arrising from included headers in leveldb and other dependencies. By passing `--enable-suppress-external-warnings` flag to configure, errors arising from external dependencies are suppressed. Additional errors arrising from internal dependencies such as leveldb are suppressed by passing the `src/.bear-tidy-config` configuration file to bear. This file includes exclusionary ru
...
(https://github.com/bitcoin/bitcoin/pull/27205)
Adds a paragraph to the clang-tidy section explaining how to de-noise its output. By default clang-tidy will print errors arrising from included headers in leveldb and other dependencies. By passing `--enable-suppress-external-warnings` flag to configure, errors arising from external dependencies are suppressed. Additional errors arrising from internal dependencies such as leveldb are suppressed by passing the `src/.bear-tidy-config` configuration file to bear. This file includes exclusionary ru
...
⚠️ Victorcorreiaaraujo opened an issue: "Hjik"
(https://github.com/bitcoin/bitcoin/issues/27206)
0x1dd6EAB101CAE27413440901B4A3854B4C797136
(https://github.com/bitcoin/bitcoin/issues/27206)
0x1dd6EAB101CAE27413440901B4A3854B4C797136
💬 ishaanam commented on pull request "test: fix race condition in encrypted wallet rescan tests":
(https://github.com/bitcoin/bitcoin/pull/27199#issuecomment-1455354602)
> Is this a draft because you haven't tested under Valgrind yet?
Yes, it was.
> Worked for me under a recent Valgrind run.
Great, I will mark it as ready for review.
(https://github.com/bitcoin/bitcoin/pull/27199#issuecomment-1455354602)
> Is this a draft because you haven't tested under Valgrind yet?
Yes, it was.
> Worked for me under a recent Valgrind run.
Great, I will mark it as ready for review.
👋 ishaanam's pull request is ready for review: "test: fix race condition in encrypted wallet rescan tests"
(https://github.com/bitcoin/bitcoin/pull/27199)
(https://github.com/bitcoin/bitcoin/pull/27199)
⚠️ YANGHONGEUN opened an issue: "79f0a3f1f42e0421e60cf9a57f6c70c6be9221a1"
(https://github.com/bitcoin/bitcoin/issues/27207)
<!-- Needs the label "good first issue" assigned manually before or after opening -->
<!-- A good first issue is an uncontroversial issue, that has a relatively unique and obvious solution -->
<!-- Motivate the issue and explain the solution briefly -->
#### Useful skills:
<!-- (For example, “std::thread”, “Qt5 GUI and async GUI design” or “basic understanding of Bitcoin mining and the Bitcoin Core RPC interface”.) -->
#### Want to work on this issue?
For guidance on contributing, please r
...
(https://github.com/bitcoin/bitcoin/issues/27207)
<!-- Needs the label "good first issue" assigned manually before or after opening -->
<!-- A good first issue is an uncontroversial issue, that has a relatively unique and obvious solution -->
<!-- Motivate the issue and explain the solution briefly -->
#### Useful skills:
<!-- (For example, “std::thread”, “Qt5 GUI and async GUI design” or “basic understanding of Bitcoin mining and the Bitcoin Core RPC interface”.) -->
#### Want to work on this issue?
For guidance on contributing, please r
...
✅ fanquake closed an issue: "79f0a3f1f42e0421e60cf9a57f6c70c6be9221a1"
(https://github.com/bitcoin/bitcoin/issues/27207)
(https://github.com/bitcoin/bitcoin/issues/27207)
:lock: fanquake locked an issue: "79f0a3f1f42e0421e60cf9a57f6c70c6be9221a1"
(https://github.com/bitcoin/bitcoin/issues/27207)
(https://github.com/bitcoin/bitcoin/issues/27207)