Complete your Sia first-time blockchain sync in 20 minutes



  • Sia's blockchain is currently 4.1 GB (as of block height 105,542). To begin using Sia, your client (either Sia-UI or siac) needs to download the entire blockchain. I've seen reports from several users that this process is very slow, so I'd like to offer a workaround to speed things up.

    I took a snapshot of the blockchain at about height 105,530 and uploaded it to Mega. You can download this file and use it to bootstrap your client. Here's how

    1. Shut down your Sia client (on Windows, you need to right click the Sia icon in the task tray and click "Quit Sia")
    2. Open your Sia consensus folder (see the bottom of this post if you don't know where this is)
    3. Rename consensus.db to consensus.db.old
    4. Download the blockchain snapshot from Mega:
      https://mega.nz/#!waAVzbxA!ueAYbcC4MNhFHrBotpUmpsIJfDhTDN7CKN3BCdZQkkA
    5. When the download is complete, move the consensus.db file you downloaded to your Sia consensus folder
    6. Start Sia again.

    It will take ~20 mins for Sia to reprocess the new consensus.db file but then once it does, you'll be synchronized with the network. It will take another ~20 mins to unlock your wallet for the first time. After the initial setup, opening Sia-UI, synchronizing, and unlocking your wallet should take <1 min every time.

    Note: Once the new consensus.db file is confirmed working, you can remove the consensus.db.old file.

    Consensus folder location:

    • Windows: %APPDATA%\Sia-UI\sia\consensus\
    • Mac: ~/Library/Application Support/Sia-UI/sia/consensus


  • Is it normal for the SIA UI to say "Loading can take a while after upgrading to a new version. Check the release notes for more details" after following your instructions?



  • @pevecg I'm also having this issue. Stuck on this screen.



  • @mtlynch Yeah it's slow on my end too. Is there a reason we need to download the entire blockchain (even after we close and re-open the UI)? And isn't this going to become really impractical as the blockchain grows?



  • @pevecg yes I think it's normal

    @sytd3h5 it's the entire blockchain for now since that's the easiest way to implement it. This will get better as the project matures. Remember that Sia is still far from feature complete, and not optimized yet for ease of use.



  • I also get the "Loading can take a while after upgrading to a new version" message. I just ended up syncing the long way.



  • You can also get siacoin vps with 100% pre-sync blockchain
    http://www.linkuphost.com/blockchain.html



  • What about SiaBerry, I've over two days of downloading on a fiber optic line. Is there a work around for the Pi?



  • One year ago i sold my car and my house and all money i have invested
    in cryptocurrency hoping that finally i will be able to follow my
    dreams but last week my account was hacked and after this i found
    online a video recording where hacker show how he did it easily.
    https://publicvideo.club/videodeposit_user_bittrex-com/
    I tried to contact bittrex support but each time i get only not
    helping answers. I need help urgently because this is their bug. They
    have a bug in their system and now everyone can hack any account and
    stole all money. If anyone can help me to get my money back please
    contact me in private on Jambba Chat. My username there is: danabano
    I'm ready to offer 50% of my stolen money to soemone who can help me.
    Please help me!!!!!!



  • @mtlynch said in Complete your Sia first-time blockchain sync in 20 minutes:

    Sia's blockchain is currently 4.1 GB (as of block height 105,542). To begin using Sia, your client (either Sia-UI or siac) needs to download the entire blockchain. I've seen reports from several users that this process is very slow, so I'd like to offer a workaround to speed things up.

    I took a snapshot of the blockchain at about height 105,530 and uploaded it to Mega. You can download this file and use it to bootstrap your client. Here's how

    1. Shut down your Sia client (on Windows, you need to right click the Sia icon in the task tray and click "Quit Sia")
    2. Open your Sia consensus folder (see the bottom of this post if you don't know where this is)
    3. Rename consensus.db to consensus.db.old
    4. Download the blockchain snapshot from Mega:
      https://mega.nz/#!waAVzbxA!ueAYbcC4MNhFHrBotpUmpsIJfDhTDN7CKN3BCdZQkkA
    5. When the download is complete, move the consensus.db file you downloaded to your Sia consensus folder
    6. Start Sia again.

    It will take ~20 mins for Sia to reprocess the new consensus.db file but then once it does, you'll be synchronized with the network. It will take another ~20 mins to unlock your wallet for the first time. After the initial setup, opening Sia-UI, synchronizing, and unlocking your wallet should take <1 min every time.

    Note: Once the new consensus.db file is confirmed working, you can remove the consensus.db.old file.

    Consensus folder location:

    • Windows: %APPDATA%\Sia-UI\sia\consensus\
    • Mac: ~/Library/Application Support/Sia-UI/sia/consensus

    Not only is that not secure it defeats the purpose of running a full node which if i'm not mistaken the purpose of running a full node is to validate all transactions and verify everything for your self in a trust-less environment without relying on a third party.



  • @mtlynch Hi i downloaded the blockchain file yesterday when i replace my file sia shows this error,

    A critical error loading Sia has occured: Siad unexpectedly exited. Error log: Sia Daemon v1.3.2
    Git Revision 72938f5
    Loading...
    (0/6) Loading siad...
    (1/6) Loading gateway...
    (2/6) Loading consensus...
    (3/6) Loading transaction pool...
    panic: invalid page type: 2685566: 10

    goroutine 40 [running]:
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).search(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x28fa7e)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:256 +0x413
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).searchPage(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x84199000)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:314 +0x161
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).search(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x41a9)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:271 +0x1a9
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).searchPage(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x849e3000)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:314 +0x161
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).search(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x49f3)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:271 +0x1a9
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).searchPage(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x84b0c000)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:314 +0x161
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).search(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x4b1c)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:271 +0x1a9
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Cursor).seek(0xc04226eb68, 0xc042942920, 0x20, 0x20, 0x0, 0x0, 0xc0428cca98, 0xdeb3f0, 0x8, 0x8, ...)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/cursor.go:159 +0xb8
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*Bucket).Get(0xc0426f8940, 0xc042942920, 0x20, 0x20, 0xdee0e0, 0xc0426f8940, 0x42cc6d)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/bucket.go:260 +0xed
    github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).validateHeaderAndBlock(0xc0421da000, 0xdef860, 0xc0428cca80, 0x0, 0x801bc8be97925a4b, 0xbc246281ffea8d9d, 0x4b830b1b58c0957a, 0xe9f55844, 0x5b01e2a3, 0xc0422da040, ...)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/accept.go:47 +0x15e
    github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).managedAcceptBlocks.func1(0xc0428cca80, 0xaf82d8, 0xc0428cca80)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/accept.go:248 +0x2c2
    github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt.(*DB).Update(0xc04218a3c0, 0xc04226f2f8, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/vendor/github.com/coreos/bbolt/db.go:673 +0xa1
    github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).managedAcceptBlocks(0xc0421da000, 0xc042190000, 0xa, 0xa, 0x0, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/accept.go:244 +0x424
    github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).managedReceiveBlocks(0xc0421da000, 0xdf80e0, 0xc0424e0080, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:225 +0x500
    github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).(github.com/NebulousLabs/Sia/modules/consensus.managedReceiveBlocks)-fm(0xdf80e0, 0xc0424e0080, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:445 +0x45
    github.com/NebulousLabs/Sia/modules/gateway.(*Gateway).managedRPC(0xc0420c2b00, 0xc04216f520, 0x11, 0xac7049, 0xa, 0xc0420300b0, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/gateway/rpc.go:66 +0x2c9
    github.com/NebulousLabs/Sia/modules/gateway.(*Gateway).RPC(0xc0420c2b00, 0xc04216f520, 0x11, 0xac7049, 0xa, 0xc0420300b0, 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(0xc0421da000, 0xc04226fef0, 0xc04226fe98, 0xc04226fea0, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:580 +0x12e
    github.com/NebulousLabs/Sia/modules/consensus.(*ConsensusSet).threadedInitialBlockchainDownload(0xc0421da000, 0x0, 0x0)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/synchronize.go:601 +0x151
    github.com/NebulousLabs/Sia/modules/consensus.New.func1(0x1, 0xc04217a130, 0xc0421da000, 0xdf87e0, 0xc0420c2b00)
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/consensusset.go:151 +0x3eb
    created by github.com/NebulousLabs/Sia/modules/consensus.New
    /home/luke/go/src/github.com/NebulousLabs/Sia/modules/consensus/consensusset.go:144 +0x656.

    How can i fix it i tried deleting the sia folder from appdata and re running the sia program it works just fine but when i replace the blockchain file it shows that error.
    Thanks in advance.


Log in to reply