Skip to content
This repository has been archived by the owner on Nov 2, 2018. It is now read-only.

bolt.DB.meta(): invalid meta pages #2318

Open
LtBasco opened this issue Sep 13, 2017 · 6 comments
Open

bolt.DB.meta(): invalid meta pages #2318

LtBasco opened this issue Sep 13, 2017 · 6 comments
Assignees
Labels

Comments

@LtBasco
Copy link

LtBasco commented Sep 13, 2017

First time syncing... When I open the "Sia-UI" program it works until it attempts to synchronize, then I get the error...

Loading...
(0/6) Loading siad...
(1/6) Loading gateway...
(2/6) Loading consensus...
(3/6) Loading transaction pool...
(4/6) Loading wallet...
(5/6) Loading host...
(6/6) Loading renter...
Finished loading in 1.5528778 seconds
panic: bolt.DB.meta(): invalid meta pages

goroutine 471 [running]:
github.com/NebulousLabs/bolt.(*DB).meta(0xc042104780, 0xc048862300)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:830 +0xed
github.com/NebulousLabs/bolt.(*Tx).init(0xc04b2100e0, 0xc042104780)
/home/luke/go/src/github.com/NebulousLabs/bolt/tx.go:50 +0xc1
github.com/NebulousLabs/bolt.(*DB).beginTx(0xc042104780, 0x43e77b, 0xc042137d44, 0x3)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:491 +0xa1
github.com/NebulousLabs/bolt.(*DB).Begin(0xc042104780, 0xc000000000, 0xc0446cb600, 0x46d9c4, 0x7b5a27)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:468 +0x75
github.com/NebulousLabs/bolt.(*DB).View(0xc042104780, 0xc04906fc50, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:618 +0x4d
github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).CurrentBlock(0xc042137b80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/consensusset.go:263 +0x11d
github.com/NebulousLabs/Sia/api.(*API).consensusHandler(0xc04ac18c60, 0xde0b20, 0xc04a6b61c0, 0xc04203c500, 0x0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/consensus.go:24 +0x52
github.com/NebulousLabs/Sia/api.(*API).(github.com/NebulousLabs/Sia/api.consensusHandler)-fm(0xde0b20, 0xc04a6b61c0, 0xc04203c500, 0x0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:194 +0x6d
github.com/julienschmidt/httprouter.(*Router).ServeHTTP(0xc0489c7ac0, 0xde0b20, 0xc04a6b61c0, 0xc04203c500)
/home/luke/go/src/github.com/julienschmidt/httprouter/router.go:344 +0x81a
github.com/NebulousLabs/Sia/api.RequireUserAgent.func1(0xde0b20, 0xc04a6b61c0, 0xc04203c500)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:99 +0xc1
net/http.HandlerFunc.ServeHTTP(0xc046da3cb0, 0xde0b20, 0xc04a6b61c0, 0xc04203c500)
/usr/local/go/src/net/http/server.go:1942 +0x4b
github.com/NebulousLabs/Sia/api.cleanCloseHandler.func1.1(0xc04afec660, 0xddbfe0, 0xc046da3cb0, 0xde0b20, 0xc04a6b61c0, 0xc04203c500)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:132 +0x80
created by github.com/NebulousLabs/Sia/api.cleanCloseHandler.func1
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:133 +0xc3
panic: bolt.DB.meta(): invalid meta pages
panic: bolt.DB.meta(): invalid meta pages

goroutine 27 [running]:
github.com/NebulousLabs/bolt.(*DB).meta(0xc042104780, 0x106e)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:830 +0xed
github.com/NebulousLabs/bolt.(*Tx).rollback(0xc0477970a0)
/home/luke/go/src/github.com/NebulousLabs/bolt/tx.go:255 +0x88
github.com/NebulousLabs/bolt.(*DB).Update.func1(0xc0477970a0)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:595 +0x45
panic(0x9f3160, 0xc04d6f5510)
/usr/local/go/src/runtime/panic.go:489 +0x2dd
github.com/NebulousLabs/bolt.(*DB).meta(0xc042104780, 0x106e)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:830 +0xed
github.com/NebulousLabs/bolt.(*Tx).rollback(0xc0477970a0)
/home/luke/go/src/github.com/NebulousLabs/bolt/tx.go:255 +0x88
github.com/NebulousLabs/bolt.(*Tx).Commit(0xc0477970a0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/bolt/tx.go:164 +0x8a0
github.com/NebulousLabs/bolt.(*DB).Update(0xc042104780, 0xc0491172e8, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/bolt/db.go:610 +0xfe
github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).managedAcceptBlocks(0xc042137b80, 0xc04815a800, 0xa, 0xa, 0x0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/accept.go:283 +0x520
github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).managedReceiveBlocks(0xc042137b80, 0xde41c0, 0xc04844a440, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:225 +0x5be
github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).(github.com/NebulousLabs/Sia/modules/consensus.managedReceiveBlocks)-fm(0xde41c0, 0xc04844a440, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:445 +0x45
github.com/NebulousLabs/Sia/modules/gateway.(*Gateway).managedRPC(0xc042076c60, 0xc042189320, 0x12, 0xaddb78, 0xa, 0xc0478de2b0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/gateway/rpc.go:66 +0x339
github.com/NebulousLabs/Sia/modules/gateway.(*Gateway).RPC(0xc042076c60, 0xc042189320, 0x12, 0xaddb78, 0xa, 0xc0478de2b0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/gateway/rpc.go:76 +0xd8
github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).threadedInitialBlockchainDownload.func1(0xc042137b80, 0xc049461ef0, 0xc049461eb0, 0xc049461eb8, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:580 +0x133
github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).threadedInitialBlockchainDownload(0xc042137b80, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:601 +0x30e
github.com/NebulousLabs/Sia/modules/consensus.New.func1(0x1, 0xc04222a830, 0xc042137b80, 0xde4440, 0xc042076c60)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/consensusset.go:151 +0x404
created by github.com/NebulousLabs/Sia/modules/consensus.New
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/consensusset.go:182 +0x641

Which prompts me to push a button labelled "Start Siad", when I do I get...

Loading...
(0/6) Loading siad...
(1/6) Loading gateway...
(2/6) Loading consensus...
(3/6) Loading transaction pool...
(4/6) Loading wallet...
(5/6) Loading host...
(6/6) Loading renter...
Finished loading in 1.4484082 seconds

Which prompts me to push a button labelled "Start Siad", when I do I get...

Loading...
(0/6) Loading siad...
(1/6) Loading gateway...
(2/6) Loading consensus...
(3/6) Loading transaction pool...
(4/6) Loading wallet...
(5/6) Loading host...
(6/6) Loading renter...
Finished loading in 1.8412698 seconds

When I attempt to move to the "Wallet" tab I get...

Loading...
(0/6) Loading siad...
listen tcp 127.0.0.1:9980: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted

I then press "Start Siad"...

Loading...
(0/6) Loading siad...
(1/6) Loading gateway...
(2/6) Loading consensus...
(3/6) Loading transaction pool...
(4/6) Loading wallet...
(5/6) Loading host...
(6/6) Loading renter...
Finished loading in 1.4337079 seconds

Et cetera.

@jaaneh
Copy link

jaaneh commented Sep 16, 2017

Also getting this exact error.

@meggie32
Copy link

me too

@tbenz9
Copy link
Collaborator

tbenz9 commented Oct 6, 2017

Possible duplicate of issue #2349.

The listen tcp 127.0.0.1:9980: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted error means something is already listening on port 9980. You probably still have a siad process running.

@lukechampine the panic: bolt.DB.meta invalid meta pages error is showing up a lot lately, you may need to take a look at those.

@jaaneh
Copy link

jaaneh commented Oct 6, 2017

@tbenz9 Nope, happened several times as first open for the day.

The issue was fixed with a clean re-install and re-download of the .db.

@lukechampine
Copy link
Member

This is likely related to etcd-io/bbolt#58
I'm going to work with the bbolt maintainer to implement a more robust fix, which should hopefully solve multiple bolt issues.

@tbenz9
Copy link
Collaborator

tbenz9 commented Oct 12, 2017

@LtBasco or @lukechampine Would you mind changing the title to be more descriptive of the bug? Make finding duplicates much easier!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

5 participants