electrs: adapt to version 0.9.0
- `waitfornewblock` was previously not included in the public RPC whitelist because it's reserved for testing and marked as hidden in bitcoind. - electrs changed its verbosity settings. `-vv` is now the best choice for normal usage. - bitcoind option `dataDirReadableByGroup` is now unused. Because it can be valuable for other use cases and implementing it is intricate, we're keeping it for now. - test: keep `nc` connection open because otherwise the electrs RPC server would now close the connection before sending a response.
This commit is contained in:
parent
6f42fa8181
commit
75b89f3957
9 changed files with 60 additions and 31 deletions
|
|
@ -138,6 +138,37 @@ let
|
|||
[1] https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/fidelity-bonds.md
|
||||
'';
|
||||
}
|
||||
{
|
||||
version = "0.0.53";
|
||||
condition = config.services.electrs.enable;
|
||||
message = let
|
||||
dbPath = "${config.services.electrs.dataDir}/mainnet";
|
||||
in ''
|
||||
Electrs 0.9.0 has switched to a new, more space efficient database format,
|
||||
reducing storage demands by ~60% [1].
|
||||
When started, electrs will automatically reindex the bitcoin blockchain.
|
||||
This can take a few hours, depending on your hardware. The electrs server is
|
||||
inactive during reindexing.
|
||||
|
||||
To upgrade, do the following:
|
||||
|
||||
- If you have less than 40 GB of free space [2] on the electrs data dir volume:
|
||||
1. Delete the database:
|
||||
systemctl stop electrs
|
||||
rm -r '${dbPath}'
|
||||
2. Deploy the new system config to your node
|
||||
|
||||
- Otherwise:
|
||||
1. Deploy the new system config to your node
|
||||
2. Check that electrs works as expected and delete the old database:
|
||||
rm -r '${dbPath}'
|
||||
|
||||
[1] https://github.com/romanz/electrs/blob/557911e3baf9a000f883a6f619f0518945a7678d/doc/usage.md#upgrading
|
||||
[2] This is based on the bitcoin blockchain size as of 2021-09.
|
||||
The general formula is, approximately, size_of(${dbPath}) * 0.6
|
||||
This includes the final database size (0.4) plus some extra storage (0.2).
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
mkOnionServiceChange = service: {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue