Page MenuHomePhabricator

Create new wallet databases as directories rather than files
ClosedPublic

Authored by Fabien on Fri, May 24, 14:13.

Details

Summary
This change should make it easier for users to make complete backups of
wallets because they can now just back up the specified `-wallet=<path>`
path directly, instead of having to back up the specified path as well
as the transaction log directory (for incompletely flushed wallets).

Another advantage of this change is that if two wallets are located in
the same directory, they will now use their own BerkeleyDB environments
instead using a shared environment. Using a shared environment makes it
difficult to manage and back up wallets separately because transaction
log files will contain a mix of data from all wallets in the
environment.

Partial backport of core PR11687 (commit be8ab7d)
https://github.com/bitcoin/bitcoin/pull/11687/commits/be8ab7d082228d09ca529d1a08730d7d5aacb0ed

Depends on D3104
Fixes T651

Test Plan

Read the release notes

make check
./test/functional/test_runner.py wallet_* feature_config_args

Play around with the -wallet option.

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Fabien created this revision.Fri, May 24, 14:13
Herald added a reviewer: Restricted Project. · View Herald TranscriptFri, May 24, 14:13
Fabien updated this revision to Diff 8929.Mon, May 27, 16:00

Rebase

deadalnix accepted this revision.Mon, May 27, 21:40
This revision is now accepted and ready to land.Mon, May 27, 21:40
deadalnix resigned from this revision.Mon, May 27, 21:42
This comment was removed by deadalnix.
This revision now requires review to proceed.Mon, May 27, 21:42
deadalnix requested changes to this revision.Mon, May 27, 21:44
deadalnix added a subscriber: deadalnix.

The release notes are all wrong.

This revision now requires changes to proceed.Mon, May 27, 21:45
Fabien updated this revision to Diff 8953.Tue, May 28, 09:33

Restore the original PR release notes layout. Replace bitcoin with bitcoin-abc.

deadalnix requested changes to this revision.Tue, May 28, 15:23
deadalnix added inline comments.
doc/release-notes.md
43 ↗(On Diff #8953)

bitcoind

This revision now requires changes to proceed.Tue, May 28, 15:23
Fabien updated this revision to Diff 8971.Tue, May 28, 16:20

bitcoin-abc => bitcoind

deadalnix accepted this revision.Tue, May 28, 17:29
This revision is now accepted and ready to land.Tue, May 28, 17:29