An effort to reduce the size of AppInitMain().
The removed code upgrades the location of the block files when upgrading to 0.8. 0.8 seems to be the oldest version still in use.
An effort to reduce the size of AppInitMain().
The removed code upgrades the location of the block files when upgrading to 0.8. 0.8 seems to be the oldest version still in use.
Upgrading to 0.8
, and according to https://bitnodes.21.co/nodes/, there is no Core node running older than that.
1378- {
1379- fReindex = true;
1380- }
1381- }
1382-
1383+ boost::filesystem::create_directories(GetDataDir() / "blocks");
An effort to reduce the size of AppInitMain().
The removed code upgrades the location of the block files when
upgrading to 0.8. 0.8 seems to be the oldest version still in use.
It was not unrelated, I needed it to cleanly remove the full block and not leave an
boost::filesystem::create_directories(GetDataDir() / "blocks");
In any case, I removed the second commit and will make a new PR for that :)
test/test_bitcoin
passes, and I am almost sure that the same version (but a previous commit) passed CI tests before. Might there be a problem with the CI?
We should include an upgrade compatibility note in the V0.15 release notes. Something like:
Upgrade to V0.15 is supported from V0.8 and higher. To upgrade from V0.7 and lower, you must first upgrade to V0.14, and then upgrade to V0.15.
To upgrade from V0.7 and lower, you must first upgrade to V0.14, and then upgrade to V0.15.
This is not required. Doing so has the only advantage that you don’t have to download the blockchain again and that there are no duplicate block files in the datadir after upgrade.
same version (but a previous commit) passed CI tests
If the same commit passed review and travis, you might want to force push that instead, to not invalidate the results.
On Wed, Feb 22, 2017 at 3:27 PM, Marco Falke marco.falke@tum.de wrote:
To upgrade from V0.7 and lower, you must first upgrade to V0.14, and then upgrade to V0.15.
This is not required. Doing so has the only advantage that you don’t have to download the blockchain again and that there are no duplicate block files in the datadir after upgrade.
Doing so has the only advantage that you don’t have to download the blockchain again and that there are no duplicate block files in the datadir after upgrade.
Which is currently >100GB of duplicate data that the user has no way of removing except for going into the datadir and manually deleting. Why not just add a note to the release notes saying “don’t upgrade directly from <=0.7 to >=0.15?
If the same commit passed review and travis, you might want to force push that instead, to not invalidate the results.
In that one I accidentally had some trailing whitespace. Wouldn’t force-pushing it again re-run the CI?
Can I retrigger CI (magic comment or a UI button somewhere)?
Which is currently >100GB of duplicate data that the user has no way of removing except for going into the datadir and manually deleting. Why not just add a note to the release notes saying “don’t upgrade directly from <=0.7 to >=0.15?
For such old releases, the procedure should be: backup the wallet and nuke the rest of the data directory. The configuration options changed, the layout of the data directory changed (multiple times), there can be no assumption of compatibility besides the wallet.
It should work but yes you’d be wasting some space. Not that much, mind you, as said 0.7 can’t sync that far up the chain before getting stuck anyway.
I don’t think this needs mentioning in the release notes: Realistically, no one is using such an old version anymore. Check the node stats.
there can be no assumption of compatibility besides the wallet.
My default expectation would be compatibility between upgrades. Any non-compatibility issues should be documented in release notes.
Realistically, no one is using such an old version anymore. Check the node stats.
We shouldn’t make decisions based on what we see in node stats. We have a limited view of what happens in the network and what users are doing.
I’m actually not that concerned about this particular issue. I just think it’s good practice (and good courtesy to users) to note upgrade compatibility issues in release notes.