BitShares Forum

Main => General Discussion => Topic started by: lucky331 on August 14, 2014, 12:55:54 am

Title: BTSX Seems Slow
Post by: lucky331 on August 14, 2014, 12:55:54 am
My BTSX wallet won't sync.  Is it the same for anybody else?
Title: Re: BTSX Seems Slow
Post by: onceuponatime on August 14, 2014, 01:06:37 am
My BTSX wallet won't sync.  Is it the same for anybody else?

Mine syncs.
Title: Re: BTSX Seems Slow
Post by: testz on August 14, 2014, 01:25:07 am
My synced without problems.
Title: Re: BTSX Seems Slow
Post by: lucky331 on August 14, 2014, 01:40:21 am
weird.  mine says "last block is synced 12 days old" and stays there.

 do i have to reinstall and download the whole block chain again?
Title: Re: BTSX Seems Slow
Post by: charleshoskinson on August 14, 2014, 02:02:12 am
Do you guys have a checkpointed torrent?
Title: Re: BTSX Seems Slow
Post by: toast on August 14, 2014, 02:04:07 am
Every once in a while the client will just stop syncing. The easiest solution is to kill the "chain" directory in the data directory and re-sync. I realize this is frustrating, we're working out little edge cases like this as fast as we can get to them.

@charles  No, the plan is to have checkpointed releases as soon as we have a way to pre-package the chain DB, at that point we can also make "official" checkpointed torrents but so can anybody else.
Title: Re: BTSX Seems Slow
Post by: charleshoskinson on August 14, 2014, 02:06:27 am
Quote
@charles  No, the plan is to have checkpointed releases as soon as we have a way to pre-package the chain DB, at that point we can also make "official" checkpointed torrents but so can anybody else.

How are you guys storing the data? Using LevelDB?
Title: Re: BTSX Seems Slow
Post by: toast on August 14, 2014, 02:07:23 am
Quote
@charles  No, the plan is to have checkpointed releases as soon as we have a way to pre-package the chain DB, at that point we can also make "official" checkpointed torrents but so can anybody else.

How are you guys storing the data? Using LevelDB?

yes
Title: Re: BTSX Seems Slow
Post by: toast on August 14, 2014, 02:10:45 am
though we are switching real soon
Title: Re: BTSX Seems Slow
Post by: charleshoskinson on August 14, 2014, 02:12:38 am
What are you thinking for a checkpoint? Something like Tx metadata on bitcoin with SHA256(blockchain@timeXYZ) || checkpoint# and then indexing the blockID on some trusted bootstrap server?

Quote
though we are switching real soon

Moving to Riak or something more exotic like Redis?
Title: Re: BTSX Seems Slow
Post by: toast on August 14, 2014, 02:21:37 am
checkpoint is as simple as map from block num to block hash hard-coded in the client

we're looking at moving to a completely in-memory DB... I don't want to say much b/c vikram/dan/nathan are the brains behind this part
Title: Re: BTSX Seems Slow
Post by: charleshoskinson on August 14, 2014, 02:31:39 am
Quote
checkpoint is as simple as map from block num to block hash hard-coded in the client

Something like {:0 -> SHA256(block0), :1 -> SHA256(block1) ... :n -> SHA256(blockn)}? I must be mistaken because your growth rate given a 15 second blocktime would be around a 1 KB per minute. Just signing a single monthly checkpoint embedded both in the client and on the bitcoin blockchain seems more space efficient.
Title: Re: BTSX Seems Slow
Post by: toast on August 14, 2014, 02:39:55 am
In DPOS the block # is implicitly timestamped (genesis timestamp is hard-coded + block interval is constant). So you only need one block num + block hash to get the equivalent of blocknum -> blockhashhash+timestamp to get a checkpoint for full state up to a certain point.
Title: Re: BTSX Seems Slow
Post by: toast on August 14, 2014, 02:42:48 am
actually in any case all you need is blocknum -> blockhash   for the last block you are "sure" of. I'm not sure what we're discusssing TBH
Title: Re: BTSX Seems Slow
Post by: charleshoskinson on August 14, 2014, 02:44:13 am
Quote
actually in any case all you need is blocknum -> blockhash   for the last block you are "sure" of. I'm not sure what we're discusssing TBH
Ah that's right because the last state ought to record all of the prior states. For a moment I was considering the data to be independent from block to block.