Skip to content

Commit 995cfd4

Browse files
committed
Add safemode for channel DB
1 parent f780b0f commit 995cfd4

File tree

6 files changed

+33
-7
lines changed

6 files changed

+33
-7
lines changed

cmd/chantools/chanbackup.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,10 @@ func (c *chanBackupCommand) Execute(_ []string) error {
4747
if c.ChannelDB == "" {
4848
return fmt.Errorf("channel DB is required")
4949
}
50-
db, err := channeldb.Open(path.Dir(c.ChannelDB))
50+
db, err := channeldb.Open(
51+
path.Dir(c.ChannelDB), channeldb.OptionSetSyncFreelist(true),
52+
channeldb.OptionReadOnly(true),
53+
)
5154
if err != nil {
5255
return fmt.Errorf("error opening rescue DB: %v", err)
5356
}

cmd/chantools/dumpchannels.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,10 @@ func (c *dumpChannelsCommand) Execute(_ []string) error {
2323
if c.ChannelDB == "" {
2424
return fmt.Errorf("channel DB is required")
2525
}
26-
db, err := channeldb.Open(path.Dir(c.ChannelDB))
26+
db, err := channeldb.Open(
27+
path.Dir(c.ChannelDB), channeldb.OptionSetSyncFreelist(true),
28+
channeldb.OptionReadOnly(true),
29+
)
2730
if err != nil {
2831
return fmt.Errorf("error opening rescue DB: %v", err)
2932
}

cmd/chantools/main.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,11 @@ func parseInputType(cfg *config) ([]*dataformat.SummaryEntry, error) {
147147
target = &dataformat.SummaryEntryFile{}
148148

149149
case cfg.FromChannelDB != "":
150-
db, err := channeldb.Open(cfg.FromChannelDB)
150+
db, err := channeldb.Open(
151+
cfg.FromChannelDB,
152+
channeldb.OptionSetSyncFreelist(true),
153+
channeldb.OptionReadOnly(true),
154+
)
151155
if err != nil {
152156
return nil, fmt.Errorf("error opening channel DB: %v",
153157
err)

cmd/chantools/rescueclosed.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,10 @@ func (c *rescueClosedCommand) Execute(_ []string) error {
6060
if c.ChannelDB == "" {
6161
return fmt.Errorf("rescue DB is required")
6262
}
63-
db, err := channeldb.Open(path.Dir(c.ChannelDB))
63+
db, err := channeldb.Open(
64+
path.Dir(c.ChannelDB), channeldb.OptionSetSyncFreelist(true),
65+
channeldb.OptionReadOnly(true),
66+
)
6467
if err != nil {
6568
return fmt.Errorf("error opening rescue DB: %v", err)
6669
}

go.mod

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ require (
66
github.com/btcsuite/btcd v0.20.1-beta
77
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f
88
github.com/btcsuite/btcutil v0.0.0-20191219182022-e17c9730c422
9-
github.com/btcsuite/btcwallet v0.11.0
10-
github.com/btcsuite/btcwallet/walletdb v1.1.0
9+
github.com/btcsuite/btcwallet v0.11.1-0.20200219004649-ae9416ad7623
10+
github.com/btcsuite/btcwallet/walletdb v1.2.0
1111
github.com/davecgh/go-spew v1.1.1
1212
github.com/golang/protobuf v1.3.2 // indirect
1313
github.com/jessevdk/go-flags v1.4.0
@@ -16,9 +16,10 @@ require (
1616
github.com/miekg/dns v1.1.26 // indirect
1717
golang.org/x/crypto v0.0.0-20191227163750-53104e6ec876
1818
golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553 // indirect
19-
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e // indirect
2019
golang.org/x/sys v0.0.0-20191224085550-c709ea063b76 // indirect
2120
gopkg.in/yaml.v2 v2.2.3 // indirect
2221
)
2322

23+
replace github.com/lightningnetwork/lnd => github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307101759-2650bff06031
24+
2425
go 1.13

go.sum

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ github.com/btcsuite/btcutil v0.0.0-20191219182022-e17c9730c422 h1:EqnrgSSg0SFWRl
3636
github.com/btcsuite/btcutil v0.0.0-20191219182022-e17c9730c422/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg=
3737
github.com/btcsuite/btcwallet v0.11.0 h1:XhwqdhEchy5a0q6R+y3F82roD2hYycPCHovgNyJS08w=
3838
github.com/btcsuite/btcwallet v0.11.0/go.mod h1:qtPAohN1ioo0pvJt/j7bZM8ANBWlYWVCVFL0kkijs7s=
39+
github.com/btcsuite/btcwallet v0.11.1-0.20200219004649-ae9416ad7623 h1:ZuJRjucNsTmlrbZncsqzD0z3EaXrOobCx2I4lc12R4g=
40+
github.com/btcsuite/btcwallet v0.11.1-0.20200219004649-ae9416ad7623/go.mod h1:1O1uRHMPXHdwA4/od8nqYqrgclVKp+wtfXUAqHmeRvE=
3941
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0 h1:KGHMW5sd7yDdDMkCZ/JpP0KltolFsQcB973brBnfj4c=
4042
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0/go.mod h1:VufDts7bd/zs3GV13f/lXc/0lXrPnvxD/NvmpG/FEKU=
4143
github.com/btcsuite/btcwallet/wallet/txrules v1.0.0 h1:2VsfS0sBedcM5KmDzRMT3+b6xobqWveZGvjb+jFez5w=
@@ -45,6 +47,8 @@ github.com/btcsuite/btcwallet/wallet/txsizes v1.0.0/go.mod h1:pauEU8UuMFiThe5PB3
4547
github.com/btcsuite/btcwallet/walletdb v1.0.0/go.mod h1:bZTy9RyYZh9fLnSua+/CD48TJtYJSHjjYcSaszuxCCk=
4648
github.com/btcsuite/btcwallet/walletdb v1.1.0 h1:JHAL7wZ8pX4SULabeAv/wPO9sseRWMGzE80lfVmRw6Y=
4749
github.com/btcsuite/btcwallet/walletdb v1.1.0/go.mod h1:bZTy9RyYZh9fLnSua+/CD48TJtYJSHjjYcSaszuxCCk=
50+
github.com/btcsuite/btcwallet/walletdb v1.2.0 h1:E0+M4jHOToAvGWZ27ew5AaDAHDi6fUiXkjUJUnoEOD0=
51+
github.com/btcsuite/btcwallet/walletdb v1.2.0/go.mod h1:9cwc1Yyg4uvd4ZdfdoMnALji+V9gfWSMfxEdLdR5Vwc=
4852
github.com/btcsuite/btcwallet/wtxmgr v1.0.0 h1:aIHgViEmZmZfe0tQQqF1xyd2qBqFWxX5vZXkkbjtbeA=
4953
github.com/btcsuite/btcwallet/wtxmgr v1.0.0/go.mod h1:vc4gBprll6BP0UJ+AIGDaySoc7MdAmZf8kelfNb8CFY=
5054
github.com/btcsuite/fastsha256 v0.0.0-20160815193821-637e65642941 h1:kij1x2aL7VE6gtx8KMIt8PGPgI5GV9LgtHFG5KaEMPY=
@@ -97,6 +101,12 @@ github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92Bcuy
97101
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
98102
github.com/grpc-ecosystem/grpc-gateway v1.8.6 h1:XvND7+MPP7Jp+JpqSZ7naSl5nVZf6k0LbL1V3EKh0zc=
99103
github.com/grpc-ecosystem/grpc-gateway v1.8.6/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=
104+
github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307100932-44bc5edfb7ff h1:IkvTEtay7QShH/g4XHMKMHMXFVdOAs39UjoGxDV/q10=
105+
github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307100932-44bc5edfb7ff/go.mod h1:bMBXSbO0hwk9HmZSbI04SDTHxTK/iEOvzfzQkNSIJmU=
106+
github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307101515-9e007e24ff31 h1:ohlZ5DgcJIMwQ/7grewh9lVb8zDIjUz4ctBHz61LARg=
107+
github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307101515-9e007e24ff31/go.mod h1:bMBXSbO0hwk9HmZSbI04SDTHxTK/iEOvzfzQkNSIJmU=
108+
github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307101759-2650bff06031 h1:G7UpjWLXdmFi1gYVidq6c/EJaH/eX0HixAOVxxAT/K0=
109+
github.com/guggero/lnd v0.9.0-beta-rc1.0.20200307101759-2650bff06031/go.mod h1:bMBXSbO0hwk9HmZSbI04SDTHxTK/iEOvzfzQkNSIJmU=
100110
github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI=
101111
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
102112
github.com/jackpal/gateway v1.0.5 h1:qzXWUJfuMdlLMtt0a3Dgt+xkWQiA5itDEITVJtuSwMc=
@@ -137,6 +147,8 @@ github.com/lightninglabs/neutrino v0.11.0/go.mod h1:CuhF0iuzg9Sp2HO6ZgXgayviFTn1
137147
github.com/lightninglabs/protobuf-hex-display v1.3.3-0.20191212020323-b444784ce75d/go.mod h1:KDb67YMzoh4eudnzClmvs2FbiLG9vxISmLApUkCa4uI=
138148
github.com/lightningnetwork/lightning-onion v0.0.0-20191214001659-f34e9dc1651d h1:U50MHOOeL6gR3Ee/l0eMvZMpmRo+ydzmlQuIruCyCsA=
139149
github.com/lightningnetwork/lightning-onion v0.0.0-20191214001659-f34e9dc1651d/go.mod h1:rigfi6Af/KqsF7Za0hOgcyq2PNH4AN70AaMRxcJkff4=
150+
github.com/lightningnetwork/lightning-onion v1.0.1 h1:qChGgS5+aPxFeR6JiUsGvanei1bn6WJpYbvosw/1604=
151+
github.com/lightningnetwork/lightning-onion v1.0.1/go.mod h1:rigfi6Af/KqsF7Za0hOgcyq2PNH4AN70AaMRxcJkff4=
140152
github.com/lightningnetwork/lnd v0.8.0-beta-rc3.0.20191224233846-f289a39c1a00 h1:kncvRXZdtDGQfSJcPfFngiFiwPXfbVLor82KzlMel/s=
141153
github.com/lightningnetwork/lnd v0.8.0-beta-rc3.0.20191224233846-f289a39c1a00/go.mod h1:WHK90FD3m2n6OyWzondS7ho0Uhtgfp30Nxvj24lQYX4=
142154
github.com/lightningnetwork/lnd/cert v1.0.0 h1:J0gtf2UNQX2U+/j5cXnX2wIMSTuJuwrXv7m9qJr2wtw=

0 commit comments

Comments
 (0)