c0ldfusi0nz (OP)
Newbie
Offline
Activity: 52
Merit: 0
|
|
February 09, 2013, 08:15:03 PM |
|
I'd have posted in the developers forum by I'm constrained by my newbie status. Can anyone link me to documentation about the maximum / recommended max number of addresses you should have in a single wallet? The only documentation I've been able to find on the bitcoin wiki is "Running getnewaddress too often, however, will cause your wallet to become filled with many empty addresses. It is therefore recommended to in some way limit the number of unfunded addresses each user can request."
Is there a point at which you'd experience performance degradation?
|
|
|
|
DannyHamilton
Legendary
Offline
Activity: 3486
Merit: 4832
|
|
February 09, 2013, 10:38:55 PM |
|
I'm not aware of any specific limit or rule-of-thumb numbers. I believe it depends quite a bit on the capabilities of the particular cumpouter you happen to be using. There is probably also some dependency on the version of client software you are using. Do you expect to be needing to generate hundreds of thousands of addresses for some reason?
|
|
|
|
Stephen Gornick
Legendary
Offline
Activity: 2506
Merit: 1010
|
|
February 10, 2013, 02:22:06 AM |
|
Is there a point at which you'd experience performance degradation?
With versions of the client earlier than the yet unreleased v0.8 the Bitcoin.org client had to do a ton or work with each spend and used a database that wasn't a great fit for the job. With v0.8 the wallet.dat is still bdb, but a good chunk of the heavy lifting has been made easier by the switch to LevelDB. So this means the problem with having lots of addresses and transactions in the wallet experience with versions prior to v0.8 should drop significantly if not disappear entirely. I don't know if any benchmarks have been performed with v0.8 to know where the bounds are. Under versions prior to v0.8, having as few as a thousand addresses with transactions caused behavior to range from "sluggish" to "unacceptable", depending on your hardware. At some point in the future the Bitcoin.org client won't even use bdb whatsoever (not even for the wallet) anymore.
|
|
|
|
K1773R
Legendary
Offline
Activity: 1792
Merit: 1008
/dev/null
|
|
February 10, 2013, 02:36:32 AM |
|
so can i make now a wallet.dat with ~46M keys?
|
[GPG Public Key]BTC/DVC/TRC/FRC: 1 K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM A K1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: N K1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: L Ki773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: E K1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: b K1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
|
|
|
drakahn
|
|
February 10, 2013, 02:40:33 AM |
|
so can i make now a wallet.dat with ~46M keys?
I made one a while ago with keypool set to 100M I don't know how many it actually made but I stopped it at ~100MB of wallet.dat, it felt like it took a few extra seconds to open but seemed to work fine past that
|
14ga8dJ6NGpiwQkNTXg7KzwozasfaXNfEU
|
|
|
K1773R
Legendary
Offline
Activity: 1792
Merit: 1008
/dev/null
|
|
February 10, 2013, 03:48:02 AM |
|
so can i make now a wallet.dat with ~46M keys?
I made one a while ago with keypool set to 100M I don't know how many it actually made but I stopped it at ~100MB of wallet.dat, it felt like it took a few extra seconds to open but seemed to work fine past that is there a way to import a huge list of privkeys? pywallet dosnt work for that nor for the new wallets
|
[GPG Public Key]BTC/DVC/TRC/FRC: 1 K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM A K1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: N K1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: L Ki773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: E K1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: b K1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
|
|
|
drakahn
|
|
February 10, 2013, 04:31:32 AM |
|
so can i make now a wallet.dat with ~46M keys?
I made one a while ago with keypool set to 100M I don't know how many it actually made but I stopped it at ~100MB of wallet.dat, it felt like it took a few extra seconds to open but seemed to work fine past that is there a way to import a huge list of privkeys? pywallet dosnt work for that nor for the new wallets You could make a script that parses the list of private keys into separate importprivkey commands
|
14ga8dJ6NGpiwQkNTXg7KzwozasfaXNfEU
|
|
|
K1773R
Legendary
Offline
Activity: 1792
Merit: 1008
/dev/null
|
|
February 10, 2013, 04:41:39 AM |
|
so can i make now a wallet.dat with ~46M keys?
I made one a while ago with keypool set to 100M I don't know how many it actually made but I stopped it at ~100MB of wallet.dat, it felt like it took a few extra seconds to open but seemed to work fine past that is there a way to import a huge list of privkeys? pywallet dosnt work for that nor for the new wallets You could make a script that parses the list of private keys into separate importprivkey commands every import means chainrescan, maybe i should do this on a offline bitcoind, otherwise its going to take longer than im alife i guess
|
[GPG Public Key]BTC/DVC/TRC/FRC: 1 K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM A K1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: N K1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: L Ki773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: E K1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: b K1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
|
|
|
drakahn
|
|
February 10, 2013, 04:43:59 AM |
|
so can i make now a wallet.dat with ~46M keys?
I made one a while ago with keypool set to 100M I don't know how many it actually made but I stopped it at ~100MB of wallet.dat, it felt like it took a few extra seconds to open but seemed to work fine past that is there a way to import a huge list of privkeys? pywallet dosnt work for that nor for the new wallets You could make a script that parses the list of private keys into separate importprivkey commands every import means chainrescan, maybe i should do this on a offline bitcoind, otherwise its going to take longer than im alife i guess I did not know that, If offline doesn't work (still scanning the blocks you have), I guess you could set up a closed circuit of clients that only connect to each other and only have early blocks
|
14ga8dJ6NGpiwQkNTXg7KzwozasfaXNfEU
|
|
|
K1773R
Legendary
Offline
Activity: 1792
Merit: 1008
/dev/null
|
|
February 10, 2013, 04:45:43 AM |
|
so can i make now a wallet.dat with ~46M keys?
I made one a while ago with keypool set to 100M I don't know how many it actually made but I stopped it at ~100MB of wallet.dat, it felt like it took a few extra seconds to open but seemed to work fine past that is there a way to import a huge list of privkeys? pywallet dosnt work for that nor for the new wallets You could make a script that parses the list of private keys into separate importprivkey commands every import means chainrescan, maybe i should do this on a offline bitcoind, otherwise its going to take longer than im alife i guess I did not know that, If offline doesn't work (still scanning the blocks you have), I guess you could set up a closed circuit of clients that only connect to each other and only have early blocks nah was talking about a fresh (no blocks, beside the genesis one) and offline bitcoind, as soon everything is imported move the wallet to a online bitcoind or just let it sync.
|
[GPG Public Key]BTC/DVC/TRC/FRC: 1 K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM A K1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: N K1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: L Ki773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: E K1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: b K1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
|
|
|
c0ldfusi0nz (OP)
Newbie
Offline
Activity: 52
Merit: 0
|
|
February 20, 2013, 07:40:17 PM |
|
I'm planning on building a marketplace service, thus in order to be scalable I'd like to know how many addresses the wallet can support. Otherwise I suppose I should add in logic to reuse stagnant addresses.
|
|
|
|
gweedo
Legendary
Offline
Activity: 1498
Merit: 1000
|
|
February 20, 2013, 08:19:23 PM |
|
I'm planning on building a marketplace service, thus in order to be scalable I'd like to know how many addresses the wallet can support. Otherwise I suppose I should add in logic to reuse stagnant addresses.
I wouldn't even worry, worst cause if your wallet gets too big (which is in 100's of millions) then you just create a new wallet.dat and sweep your funds into one address in there.
|
|
|
|
toz
Newbie
Offline
Activity: 28
Merit: 0
|
|
February 20, 2013, 11:52:36 PM |
|
so can i make now a wallet.dat with ~46M keys?
Try it, and if it works badly, profile the code and see where it breaks. I doubt the client is optimized for millions of accounts.
|
|
|
|
Stephen Gornick
Legendary
Offline
Activity: 2506
Merit: 1010
|
|
February 22, 2013, 01:26:39 AM |
|
every import means chainrescan,
With the Bitcoin.org client v0.8, that is a configurable option so you can do multiple importprivkey with no rescan and then when you are done do the rescan.
|
|
|
|
buffett
Newbie
Offline
Activity: 59
Merit: 0
|
|
January 01, 2014, 04:48:50 PM |
|
i'm sorry to bring this old thread back.
any update with the latest bitcoind? any significant issue when bitcoind has 100k or more accounts/addresses? thanks
|
|
|
|
gweedo
Legendary
Offline
Activity: 1498
Merit: 1000
|
|
January 01, 2014, 04:56:09 PM |
|
i'm sorry to bring this old thread back.
any update with the latest bitcoind? any significant issue when bitcoind has 100k or more accounts/addresses? thanks
No issues, 100k addresses are nothing compare to most sites and people. So don't worry.
|
|
|
|
buffett
Newbie
Offline
Activity: 59
Merit: 0
|
|
January 01, 2014, 05:08:22 PM |
|
i'm sorry to bring this old thread back.
any update with the latest bitcoind? any significant issue when bitcoind has 100k or more accounts/addresses? thanks
No issues, 100k addresses are nothing compare to most sites and people. So don't worry. that is great. so what about 1M, 10M, 100M or even 1B addresses? has anyone did a benchmark of the performance? there is no way i could get 100M transactions (maybe only in my dream), though i'm still curious
|
|
|
|
|