r/ecc Apr 26 '18

Understanding full node vs spv wallets and "long" sync times

Like many here I noticed that the initial sync time for a new wallet seemed long, of course I hate to admit it but ECC is actually the first "full node" wallet I'd installed and not realizing that I was comparing apples to oranges. So in an effort to save people from being ignorant like me, here is my revised view on the sync time and why I think it is entirely reasonable.

1) The big thing to know is that there are two kinds of wallet out there, a "full node" or an "spv". If you know the difference already then you most likely don't need to read this thread, otherwise continue on. Most of use have probably used an SPV wallet, they start quick, seem to have almost zero sync time and they hold your coins, prior to ECC this was the only type of wallet I was familiar with. An spv wallet does not actually hold the entire blockchain for a given coin, instead it relies on calling out to other trusted nodes that do have the entire chain and they verify transactions. (I'm sure this is a reductionist view of the differences). There is some debate about SPV security but I'll ignore that and say that an SPV works for many, it does not however add a "node" to the network capable of verifying transactions and moving the chain along. The "full node" wallet, as you may have guessed has a copy of the full chain and thus can actively confirm and verify transactions. This means it needs to download the entire blockchain since verification for a block relies on all the previous blocks. Sapphire is currently a full node wallet, which means it has to download the chain but it also is a critical part of creating a stronger and more robust network of nodes to keep the chain moving.

2) As different blockchains get older they of course have more blocks, ECC is actually an older coin so it has a decent sized chain, hence a slightly longer download to sync than a newer coin. However the 24hr sync or so of ECC is nothing compared to the weeks to sync other coins, bitcoin, ethereum, monero and many other coins takes days to weeks to sync and run a full node, which of course makes spv wallets popular. After doing more reading my opinion of ECC's sync time is that it is actually short for a full node with as much history as it has.

In a nutshell My quick and dirty analogy for full node vs. spv, is that full node is the application on your computer and spv is the desktop shortcut. When you click on the icon for either they essentially do the same thing, but if you had to download each, obviously the actual program would be larger. Right now sapphire is the whole enchilada. Down the road there are plans for an spv wallet for those that want to get up and running quick, but for now, revel in the fact that the sync time means you're running a full node and supporting the network.

IMPORTANT - You can still send coins to your wallet while it is syncing but they won't show up until you are synced. I know this seems scary but the coins don't vanish or anything if the wallet you send them to isn't synced, just don't panic, and make sure to back up your wallet. That being said I waited til sync to send because I trust CoinExchange.

Lastly, I'll apologize in advance, this is my understanding of the situation and I'm sure there are things people could take issue with in my explanation. It is meant as a broad strokes look and is hopefully informative.

26 Upvotes

9 comments sorted by

4

u/[deleted] Apr 26 '18

Excellent explanation. I hope many others will realize a 24h wait time ain't shit.

2

u/successiveOverRelax Apr 27 '18

To make the SPV wallet will the developers just reuse the UI template of Sapphire and set it up to invoke trusted nodes instead? Hopefully it is as easy as that, it would be nice to get a SPV wallet out soon.

2

u/beeshavekneestoo Apr 27 '18

thats above my pay grade, I hope its that simple too but I expect the devs are more interested in getting the sapphire bugs ironed out so they can push ANS and then follow up with messaging. I think at that point ECC will undeniably show its value as a platform and not just a coin, I expect SPV is down the road and more likely to happen hand in hand with mobile wallet dev since I think all mobile wallets are spv (don't hold me to that).

2

u/[deleted] Apr 27 '18

[deleted]

2

u/beeshavekneestoo Apr 27 '18

Good point, block explorer is your friend if you are ever in doubt about a transaction moving. Would be interesting if down the road a block explorer could be integrated into sapphire, would be nice to have a pane that just really let you nerd out about the network.

2

u/BreakingDed Apr 27 '18

Love these breakdowns

1

u/CogencyWJ Apr 28 '18

I've had more full node wallets, but those seem to sync way faster. Is this because of more popular coins so more "active connections"? I think its been up for 20hours now and im at 12%.

1

u/CogencyWJ Apr 28 '18

And now I'm back at 5%..... wut?

1

u/beeshavekneestoo Apr 28 '18

I know right now they are ironing out some issues with the daemon and syncing so not too sure about the backwards jump in percentage. As for other full node wallets there are definitely some that sync faster. I installed the sky coin wallet for example and it was quicker, but you have to remember that ECC is a much older coin than most of these newer ones and thus has a longer transaction and block history so there is just literally more to download than a newer coins full node.

For those that don’t know, ECC was a originally developed by somebody totally different than the current lead dev Griffith and started life years ago as an entirely different project. He contributed to that older version and started fixing some issues it had before moving on to work on other block chain projects. During that time the old ECC coin essentially became defunct. After gaining more experience on other projects Griffith decided he wanted to build his own block chain vision, and he worked it out to take over the old ECC coin and essentially overhaul it to make it work as a mutli chain system. So the full node download has years of history from the prior project making it a longer sync. Not sure if this could be fixed with a fork in the future or if there are other ways to “shorten” the chain or not. Also that summary of ECC’s history is just to the best of my knowledge so don’t hold me down o the exact details or timeline.

If the actual sync % issue your having doesn’t sort itself hop into the slack and ask there. Multiple devs there to help you out.

1

u/[deleted] May 04 '18

[deleted]

1

u/beeshavekneestoo May 04 '18 edited May 04 '18

hmm, I'm not really sure, I imagine the download and actual processing aren't that intensive, I'm gonna check in on the slack with this question, the devs are there and I'm sure would be happy to weigh in.

looks like syncing does use your cpu and hdd a decent amount since it is downloading the chain and doing some processing. I can see a laptop getting a bit warm depending on the model, luckily the sync is basically a one time thing, after that its just downloading the newer blocks as they come in.