Bitcoin Forum
May 14, 2024, 04:40:06 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 [29] 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 »
561  Bitcoin / Development & Technical Discussion / Re: Why does catching up with the blockchain hammer the disk so much? on: March 31, 2012, 04:02:21 PM
The fact that it's possible to download the whole thing onto a RAM disk, manually copy it to disk, and sync with orders of magnitude less of an IO hit suggests that the DB is doing something pedagogically.

Patches very welcome Smiley
562  Bitcoin / Bitcoin Discussion / Re: Version 0.6.0 released on: March 31, 2012, 03:47:10 PM
I see. Is it possible to get more than 8 connections on the initial download of the chain? The number of connections finally went past 8 when the download was very close to being finished. Maybe that had something to do with it?

There's no point in that: downloading the chain will not go faster with more connections - one good one suffices. In fact, incoming connections have a much larger chance of wanting to request your block chain, slowing your sync down further.
563  Bitcoin / Development & Technical Discussion / Re: Why does catching up with the blockchain hammer the disk so much? on: March 31, 2012, 03:45:11 PM
The hard part is not downloading or storing the block chain. It's building, maintaining and guaranteeing the on-disk consistency of the block and transaction index that is necessary for validation.

Well, I suppose you've given it a lot of thought already. But I still have a hard time believing downloading the block chain and creating an index requires all that disk hammering. On my computer, the .bitcoin directory is 1.6GB big. It's big, but not that big. It even fits in the memory of most computers! How can building it require hammering the disk for hours?

It takes about half an hour for me, when loading from a local file (a patch that will probably be in 0.7) instead of from the network.

If you have a lot of RAM, you can run it in a RAM drive (if your OS supports that) and watch it fly. Of course, you'll miss the one hard part: not losing or corrupting the on-disk index when your computer crashes.
564  Bitcoin / Development & Technical Discussion / Re: Why does catching up with the blockchain hammer the disk so much? on: March 31, 2012, 03:14:05 PM
Thanks for your answer. I do have version 0.6x

I wonder if the database commits are simply too close to each other? The blockchain is public information and can always be redownloaded in the even of a crash, there is really no reason to write to the disk several times per second to secure it.

The hard part is not downloading or storing the block chain. It's building, maintaining and guaranteeing the on-disk consistency of the block and transaction index that is necessary for validation.
565  Bitcoin / Bitcoin Discussion / Re: Version 0.6.0 released on: March 31, 2012, 03:12:51 PM
Same problem here. Getting stuck on 8 connections sometimes. uPnP doesn't seem to be working as well as it used to.

The reason is IRC being deprecated and defaulting to off. This will indeed mean less very fast incoming connections, but better connectivity for longing-living listening nodes (as others don't rely on recently IRC-advertized nodes, but on the addresses propagated through the network).
566  Bitcoin / Bitcoin Discussion / Re: Version 0.6.0 released on: March 31, 2012, 01:13:25 PM
The new version downloads the blocks much faster now, but if that is still too slow you can download a nightly here: http://eu1.bitcoincharts.com/blockchain/

If you're going to suggest people to download the block chain database (bypassing all verification that bitcoin does when it fetches blocks from peers), it may be advisable to suggest using -checkblocks -checklevel=6 when starting up the first time. -checklevel is a new option that allows much more thorough verification.

Otherwise, if somehow such a download (by bad luck or malicious intent) gets corrupted, and many people download their chain from that point, a particular block could put them all at once on a block chain fork.
567  Bitcoin / Bitcoin Discussion / Re: A bit of nostalgia... How did you get your first Bitcoin? on: March 31, 2012, 12:43:53 PM
Mined in slush's pool a few days after it started (december 2010).
568  Bitcoin / Development & Technical Discussion / New command line options in 0.6.0 on: March 31, 2012, 11:39:30 AM
Hello all,

since some new options to bitcoind are considered more for debugging and tinkering than for end users, they did not make it into the release notes. Therefore, here is a more complete such list:
  • -upgradewallet: new wallets in 0.6.0 are created in the latest format, but old wallets are left untouched in order for them to remain compatible with external tools. -upgradewallet forces the wallet to upgrade to the latest format
  • -upgradewallet=<n>: allow (but do not force) an automatic upgrade to a wallet that is still compatible with client version n (for example -upgradewallet=50000 will make sure the wallet remains compatible with 0.5.0). One exception is when the user takes an explicit action that implies a wallet upgrade (encrypting it, for example), and the condition specified by -upgradewallet=N is not satisfiable. In that case, the wallet will still be upgraded to the latest format anyway.  You can also use this option to create a new wallet that is compatible with older versions.
  • -checkblocks=<n>: In addition to -checkblocks (which verifies the entire chain), or no argument at all (which verifies the last 2500 blocks), you can now specify how many blocks the to check. For example, -checkblocks=10 will only verify the last 10 blocks. The minimum is 1, specifying 0 will cause a check of the entire chain
  • -checklevel=<n>: specify how thorough the inital block validation algorithm is. The default is 1, and corresponds to the level of checking older versions did. In 0.6.0, any number between 0 and 6 is accepted, each significantly slower than the previous one. Checking the entire chain at level 6 will take at least 5 minutes if the blockchain is already loaded into the OS cache entirely.
  • -dbcache=<n>: Specify how many megabytes of memory to use for internal caching. The default in 0.6.0 is 25, and higher numbers will not gain you much more speed probably. Higher numbers mean slower startup and shutdown, though.
569  Bitcoin / Bitcoin Discussion / Re: Proposal: friendly addresses with enhanced privacy on: March 30, 2012, 12:07:01 AM
I see the point of this but I'm still weary of centralising a P2P solution. I think firstbits and btc.co are both valid ideas to resolve this.

But in most cases, there is no centrlalization. You are already communicating with the receiver via his website in many cases. There is no loss of privacy by also using this channel for requesting a payment address.

Do you consider e-mail a problem because it is centralized? You can switch to another mail provider if you don't like it. You could even run your own if you're paranoid. It's exactly the same here.
570  Bitcoin / Bitcoin Discussion / Re: Proposal: friendly addresses with enhanced privacy on: March 29, 2012, 11:35:46 PM
I like this idea very much - it's exactly the kind of evolution necessary for stepping away from seeing base58 strings as addresses (a word that implies some form of permanent connection to an identity).

I've proposed a more concrete proposal some time ago in the same light, a bit more specifically aimed for online merchants. You can read about it here.
571  Bitcoin / Bitcoin Discussion / Re: payment with a message on: March 29, 2012, 07:19:01 PM
@Meni: I could probably live with a hash of some message being attached to the transaction itself, but I'm still unconvinced it is necessary.
572  Bitcoin / Bitcoin Discussion / Re: payment with a message on: March 29, 2012, 12:18:55 PM
In my opinion, it is not the right solution to attach the message to the bitcoin transaction itself.

I'll explain why: everything you attach to the transaction is forever part of it, and will be stored forever (or at least until it can be pruned) by every single node in the system. Yes, this is the intended behaviour for transactions, but there is no need for them to be more than the bare minimum for the network to verify its validity.

When you want to attach a message to a transaction, this is essentially some private communication between you and the receiver of the transaction. Showing it to the world is both a burden, and a decrease of privacy. Indeed it would be possible to encrypt it, but that will not make it anymore necessary.

Realize that in most cases, you as sender of a transaction are already communicating with the receiver by other means. Be it a website, e-mail, instant messaging, real-life communication, .... There is no need to replace this existing communication with the blockchain, which is a very slow and expensive beast to maintain, and it would benefit us all not making it even more expensive than it already is.

Now, only the receiver actually cares about your transaction. In fact, he should be the one responsible for getting it into the block chain if he wants that, and not the sender. The current network and the architecture around it seem to have settled for using the blockchain both for confirming transactions as for getting them to their destination. This is not necessary, as you could easily envision prepared transactions being files that you can just send to someone (who will then verify it, and send it to the p2p network if he cares) via an http protocol, or via e-mail, ...; essentially reusing the communication channel you already had (imagine a merchant's website, you click "click here to pay", that opens your bitcoin client/ewallet, creates the transaction, and sends it directly to the merchant). In such a system, it would be easy to attach whatever message you or the merchant wants you to attach to it to that file. It would travel along with the transaction, and could be checked easily. However, it doesn't need to ever end up in the block chain itself. Nobody cares about it there.

Clearly this requires a different way of using bitcoin than we currently do, but it is closer to how Satoshi envisioned it (the currently deprecated send-to-IP system was how he intended transactions to take place, not via send-to-address). Still, I believe this is how transactions will happen at some point in the future.
573  Bitcoin / Development & Technical Discussion / Re: Unable to open RC5 on: March 28, 2012, 07:55:17 PM
Deleting addr.dat indeed works, and if no better solution is found, that will indeed be the advise for people who get stuck.

Still, it shouldn't happen, and it's not very compatible with the idea of decentralization: deleting your addr.dat makes you boot off dns seeds and built-in seeds. This works very well, currently, but I don't like the idea of people depending on it and not maintaining their own peer databases.
574  Bitcoin / Development & Technical Discussion / Re: Getting the chain faster - more than 8 outbound connections on: March 28, 2012, 07:53:30 PM
I think maybe it's an issue of network latency.  I send a request for a block, it takes a while to reach the server, the server sends the block, it takes a while to reach me.  Everything's spending lots of short amounts of time waiting for things to go through the network.

I say this because I see about half the download speed when connecting to the LAN wirelessly than I do when using an ethernet cable, even though in neither case is the network connection anywhere near saturated.  Maybe it's a question of ping time.
I think you're probably right. I wonder if it would help for the client to request a few blocks at a time. Is its current logic really just to request a single block and then not even request the next block until it has committed the previous?

It requests blocks in bulk with a getblock. The result is a large inv announcement of up to a few hundred blocks (corresponding to at most 5 MB at a time). The client responds with a getdata for all unknown blocks, which are sent one by one using block.

The data is really requested in groups of several blocks at a time, but only downloaded and processed one by one. There are several improvements possible here still, though.
575  Bitcoin / Development & Technical Discussion / Re: Unable to open RC5 on: March 28, 2012, 04:14:31 PM
0.6.0rc5 rewrites addr.dat completely, so it's likely to expose previously undetected corruptions it seems. We've seen several reports of such cases, and worked around some.

I can give you a build or the source code with a potential fix, but it seems unlikely to solve it. Would you like to try?

576  Bitcoin / Bitcoin Discussion / Re: Version 0.6 release candidate 5 binaries on: March 28, 2012, 11:59:45 AM
Heh. The Harddisk is still choking once it's past ~80-85%. Sad And there's still several gigabytes of free RAM that isn't being used. Perhaps the caching settings still need some tweaking?

You can use the new command-line/config option -dbcache=<N>, with N a number in megabytes. The default is 25, which should be quite good, but if you add more, speed may improve a bit still.
577  Bitcoin / Development & Technical Discussion / Re: How to do document timestamping with the block chain? on: March 28, 2012, 12:16:48 AM
  • Is it possible to import such a key pair into Bitcoin while bitcoind is running? I have no experience with the JSON API, but from what I read, it doesn't seem to support this.

In 0.6.0 this is possible via the "importprivkey" RPC call.
578  Bitcoin / Bitcoin Discussion / Re: URGENT: Windows Bitcoin-Qt update on: March 27, 2012, 02:20:12 PM
The numbers are chosen by an external advisory yes, but apparently it's just a number to identify the problem.

I think it'd be a little more useful if information about the issue could actually be found in online databases directly about it.
579  Bitcoin / Development & Technical Discussion / Re: Getting the chain faster - more than 8 outbound connections on: March 27, 2012, 11:31:09 AM
As I've said before in another thread, the initial synchronisation process consists of three steps:
  • Downloading the data: limited by your and your peer's network speed
  • Maintaining the database: mostly limited by disk latency
  • Verifying the chain: limited by CPU speed

Before 0.6.0, maintaining the database almost always outweighed the other two. With 0.6.0rc5 the caching settings have been tweaked, resulting in a remarkable speedup for the database. This means that now the downloading time may indeed become significant, and it may be worth looking at improving the download process, for example downloading from several peers at once.

Increasing the number of outgoing connections will not help you get the chain faster: even when you use 0.6.0rc5, the chain is still downloaded from a single peer, and frequently still not the slowest step. In fact, increasing this number is a bad idea for the network, as peers with open incoming ports are not too abundant.
580  Bitcoin / Bitcoin Technical Support / Re: MtGox: transfer happens but doesn't show up on blockexplorer on: March 27, 2012, 12:35:27 AM
uhh, because MtGox does fractional reserve banking?

Doing internal transactions directly instead of via the blockchain isn't fractional reserve banking.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 [29] 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!