7 ms·
Bitcoin: Soft block size limit reached
- tocomment 14y agoI'm not following this. Can someone dumb it down a bit?
- runn1ng 14y agoThere are too many bitcoin transactions, so the blocks are too big. The miners have to be run with different settings to account for that. I don't know what bitcoin proponents think will happen in the bitcoin future when everyone will be payibg with it; the size of the block will quickly get to megabytes. Yeah, bitcoin doesn't scale well.
- tocomment 14y agoBut Moores law
- simonh 14y agoSince the issue is disk storage, not transistor count, that should be Kryder's Law. http://en.wikipedia.org/wiki/Mark_Kryder http://en.wikipedia.org/wiki/Mark_Kryder Of course if bitcoin transaction volumes rise faster than that, there's a problem. Which, uh oh, they are. By a lot! http://blockchain.info/charts/n-transactions http://blockchain.info/charts/n-transactions http://blockchain.info/charts/blocks-size http://blockchain.info/charts/blocks-size
- Karunamon 14y ago>bitcoin doesn't scale well Meanwhile, average and available bandwidth and disk space goes up. By the time the block chain breaks into the terabytes range, storage and network technology will have advanced to the point where it's not a problem anymore.
- runn1ng 14y agoBut what if Bitcoin - and therefore blocks and blockchain - will rise more quickly than the technology?
- jere 14y agoYea. Everyone screaming Moore's law (a historical observation that isn't guaranteed to continue) must be also saying that the Bitcoin economy won't double from its current size every couple years.
- tocomment 14y agoDoes every new user have to download the entire blockchain? That's a point I'm not really clear on.
- Karunamon 14y agoWhen you first start up your client, yes. From then on it's just kept in sync with the network. It was around a gigabyte back in January.
- Rovanion 14y agoIf you are hosting your own wallet and not using an online solution yes.
- Tuna-Fish 14y agoIf you run a full client, yes. It is perfectly possible to not do this, but doing so requires that you trust someone (the one running the client for you).
- joezydeco 14y agoI just tried to fire up a new client last night and the whole thing just ground to a halt with about 18,000 blocks left to process. Is this why?
- CJefferson 14y agoReading the thread, the most interesting thing seems to be that this is a problem partly caused by the website satoshidice.com, and several people are adding special filtering to ignore any transactions performed by this website. This immediately raises a large number of very interesting questions. I was under the impression that the whole point of bitcoin was that it allowed anonymous transfer of funds with no central authority. If some group of large miner groups have the power to a) identify satoshidice, and then b) ignore it's transactions, then what is the point of bitcoin?
- aneth4 14y agoBased on my very elementary understanding of bitcoin, it seems to me it would undermine trust in the entire system, as the bitcoins lost on Satoshidice may still be spent elsewhere, and entire chains of transactions may be lost. Correct me if I'm wrong. Seems like this fundamental issue of every node needing to replicate all transactions is turning into a real problem. I expect there will be a system of supernodes at some point, and most nodes will only store hashes. Operators of the supernodes could then become targets of regulation, undermining the decentralized nature of bitcoin and eliminating it's primary purpose. I'd love to be wrong. Anyone?
- Nursie 14y agoSee parallel comment for my (shaky) understanding. As an analogy.... I can't think of a good analogy! Everyone still stores the hashes, some just don't use these transactions as hash input. May cause problems with satoshidice transaction processing and yes, could result in slow transactions and potential double spends if a large proportion of miners did this.
- lenazegher 14y agoAFAIK Satoshidice has some clever behind-the-scenes cross validation that makes a double spend impossible even without confirmations. That's how they're able to issue payments so quickly.
- tocomment 14y agoSo could a miner mine more coins by settings their max block size lower?? Or am I misunderstanding completely?
- redegg 14y agoNo. If they lowered their max block size, they would get less fees from transactions.
- Tuna-Fish 14y agoNo. Nearly all (99.9999% or thereabouts) of the work you need to do to mine bitcoins is independent of the size of the block you mine. You want to run large blocks to collect as much transaction fees as you want to.
- tocomment 14y agoUpon further reading, it sounds almost like a supply and demand issue that needs to be solved with an increase in transaction fees, no?
- muyuu 14y agoYes, one of the options is to let the market take care of it. But then you cannot advertise Bitcoin transactions as free any more, as free TXs will likely be lost at a non-negligible rate in the future. Blocking Satoshidice is a temporary fix to give time to the developer community to come up with a better plan. So is increasing the soft limit (we are currently at 1/4 of the hard limit, doubling the soft limit will put as at 50% of it, and it will double the blockchain bloating rate).
- tocomment 14y agoWhat type of solutions could developers come up with? Would most of the solutions involve a "hard fork" that I've been hearing about?
- muyuu 14y agoThere are a few things going on already, and some ideas floating. Another one is the integration of hybrid systems. For instance Ripple + Bitcoin (bulk of small transactions would move out of the block chain, basically things that wouldn't need to be register and/or have extra anonymity requirements). There are a couple ideas on alternative data structures to store the blockchain more efficiently. This would mitigate both bandwidth and storage requirements by potentially an order of magnitude. (Although not so much for miners or general users, but mostly nodes and users of the "standard client" which is still the most used one). So far nothing I've said requires a hard fork. Now, forking (some of these are far from definitive solutions, basically only fee requirement changes are a real solution from the following ones): Enforcement of a minimal but non-0 fee in the very protocol instead of by miner consensus. The way to go IMO. Higher hard limit for the block size (kicking the can, but this can be a very effective kick that would very likely allow for the previous things to happen over time) Equivalently, reduce avg. time per block. "Floating block size" - not a solution proper but a mitigation system to avoid translation volume instability. It would adjust in a similar way difficulty does. I don't know what's going to happen medium or long term, but the best plausible and likely scenario in my opinion is 1) some fee enforcement scheme 2) the bulk of small and local transactions to happen offline - both solving the latency problem and minimising blockchain bloat by orders of magnitude.
- tocomment 14y agoAnother curiosity I had. Has anyone considered storing files in the block chain? Obviously it wouldn't be practical but it might help with censored files.
- wereHamster 14y agoYou can store ASCII in the blockchain. Has been done before: http://news.ycombinator.com/item?id=2830084 http://news.ycombinator.com/item?id=2830084.
- eof 14y agoI am not a developer for bitcoin, but I have been following along in #bitcoin-dev and reading some of the forum threads. (most interesting conversation by far is on freenode) In pools/miners that are not blocking satoshi dice 70-95% of every block is filled with SD transactions. Further, SD has upped their fees to get higher priority. Interestingly, the sentiment of the devs and the sentiment of the users is vastly different. It seems that the users are overwhelmingly pro SD, anti filtering out SD transactions, and think this is just a nice test for bitcoin and this type of transaction volume is inevitable anyway. (plus, they are of the libertarian leaning in general). Sentiment amongst the devs varies, but it does seem they all agree that SD is abusing the blockchain. There is no reason SD can't remain provably fair and have the same flow without spamming the blockchain; and, since they are reusing addresses and acting in a such a way that their transactions can be trivailly tracked, there is no reason (in some of the devs' minds) to not treat them as spam and filter out their transactions. For their own part, the owners of SD have reportedly taken a "fix your shit" attitude when asked to change their methods. In any case, it has spurred a lot of discussion on "how" to raise the soft limit; which is completely arbitrary, and many pools have already raised it regardless. The real news is that the `hard` limit, which will create a fork is not even an order of magnitude away. No one wants to keep making hard forks, so there is a lot of debate on how to best determine future block limit size on a system wide scale. For my own part, it is hard not to see SD as spamming/abusing the blockchain. If I ran a mining pool or a hasher (I don't) I would block SD as Luke-jr does by not including addresses into blocks that start with `1dice`. It's note worthy that it would be essentially impossible (rather than trivial) to censor SD transactions if they followed best practices. It is also worth noting that there are whispers of SD transaction volume being something of a conspiracy. I have not done any analysis on this; but what I have heard is that the vast majority of SD transactions appear to be bots, playing losing bets 24 hours a day. SD has issued stock, which is publicly traded.
- eric_bullington 14y agoInteresting observation. Actually, I think most of the devs are against filtering SD, too. There is just one very vocal one against it. As far as I can tell, all of the long-time devs oppose any filtering, since SD is working within the limitations of the Bitcoin protocol as it is defined. Please correct me if I'm wrong. But I agree with you that SD could try to find some ways to reduce the quantity of spam. One simple but drastic solution would be to run their own block chain and use it as poker chips that players could easily buy with Bitcoins (once you're in the virtual currency system, exchanging currencies is trivial).
- tocomment 14y agoIn the case of a hard fork does an end user have to do anything to move their coins or is it transparent?
- eric_bullington 14y agoThe main complaint with Satoshi Dice is that most of their transactions are not actually transferring any value (actually, they are transferring a tiny bit of value if I understand correctly; I've never used SD). They're using the Bitcoin system as a secure message system to notify everyone who lost a bet (i.e., most betters). It seems to me that Satoshi Dice could very easily create their own block chain to do this and just use it as poker chips, which would take all the load of the Bitcoin system. Once you are "in" the virtual currency system, it's quite easy to exchange currencies. The hard part is getting your dollars in. But Bitcoin would have run up against the block size limit at some point anyway; the vast quantity of Satoshi Dice transactions have only accelerated the confrontation of this dilemma. I actually appreciate the fact that Satoshi Dice is effectively stress testing the system. Bitcoin block size is a serious impediment to scaling up. I wonder if Bitcoin core dev (and Google employee) Mike Hearn has consulted with Jeffrey Dean and Sanjay Ghemawat about this issue. I know that Bitcoin recently switched from Berkeley DB to leveldb for most of the client's bookkeeping, which would have been a good opportunity for Mike to approach them about this dilemma. However, I know that all the core Bitcoin devs are already very capable, so I'm not sure if a technological solution to this issue even exists. The answer may be more political (i.e., convincing all the miners to go along with an idea). <idlespeculation>On a related note, I wonder what the level of adoption of Bitcoin is among Google employees. As mentioned above, Mike Hearn is a Google employee and a long-term Bitcoin core dev. I would speculate that the level of adoption is relatively high, which makes me also speculate about when Google might start accepting Bitcoin. Anyone care to comment?</idlespeculation>
- muyuu 14y agoI doubt Google as an organisation would accept Bitcoin unless the adoption was overwhelming. Google Wallet is yet another data mining tool for them, and they won't give that up easily. Single reason I don't have a Nexus 4 is that I have to use Google Wallet and I won't give Google my real name to link it to my account no matter how hard they try.
- eric_bullington 14y agoUnfortunately, I think you're correct here. I guess I'm hoping a cabal of Bitcoin insiders will somehow convince the powers-that-be to start using btc, but your interpretation is much more likely.
- aneth4 14y agoOne can only imagine what ordinary folks who thought they'd be on the bleeding edge in accepting bitcoin think of all this. All this talk of spamming block chains, miners, soft-hard limits - word that mean nothing to your average cowboy - can't be good for bitcoin's near future.
- waterlesscloud 14y agoBitcoin lead dev addresses the issue- https://bitcoinfoundation.org/blog/?p=135 https://bitcoinfoundation.org/blog/?p=135