vuce
|
|
June 24, 2012, 11:57:50 PM Last edit: June 25, 2012, 01:03:03 AM by vuce |
|
Is there a way of getting "blockchain.address.get_history" from a certain block hash onwards only? I'd imagine downloading full history of some addresses with a lot of traffic might be somewhat resource-consuming. Maybe something like: { "id": 0, "method": "blockchain.address.get_history", "params": [ "17Su3J2RWnm2WLqf8pfpgj4hFUf6MFH9SZ", "000000000000077b2195a0c9db6f4179cb98ef579f300943b3a69357ac9e2028" ] }
With the block hash from subscribe this could be very useful.
|
|
|
|
Red Emerald
|
|
June 25, 2012, 04:13:18 AM |
|
I should have another server up again soon. I ran one for a little bit, but then Abe died and I haven't bothered since.
|
|
|
|
bitfoo
Donator
Sr. Member
Offline
Activity: 289
Merit: 250
|
|
June 25, 2012, 04:30:47 AM |
|
I'm now running a server as well to hopefully provide some redundancy for users.
|
|
|
|
ThomasV (OP)
Moderator
Legendary
Offline
Activity: 1896
Merit: 1353
|
|
June 25, 2012, 06:15:27 AM |
|
Is there a way of getting "blockchain.address.get_history" from a certain block hash onwards only? I'd imagine downloading full history of some addresses with a lot of traffic might be somewhat resource-consuming. Maybe something like: { "id": 0, "method": "blockchain.address.get_history", "params": [ "17Su3J2RWnm2WLqf8pfpgj4hFUf6MFH9SZ", "000000000000077b2195a0c9db6f4179cb98ef579f300943b3a69357ac9e2028" ] }
With the block hash from subscribe this could be very useful. yes, I am planning something like that. get_status will be deprecated, and the client will send a hash of its current history
|
Electrum: the convenience of a web wallet, without the risks
|
|
|
ThomasV (OP)
Moderator
Legendary
Offline
Activity: 1896
Merit: 1353
|
|
June 26, 2012, 02:32:22 PM |
|
Can I ask you what kind of resources a electrum server uses or rather what kind of resources I should dedicate to it to have it running stable.
post scriptum: * make sure you use a 64-bit OS * the first time you import the blockchain in abe, stop bitcoind during the import, it will go much faster. * I do not currently use a SSD for ecdsa.org, but I would pick a VPS with SSD if I had to redo this
|
Electrum: the convenience of a web wallet, without the risks
|
|
|
vuce
|
|
June 27, 2012, 05:09:19 PM |
|
Thomas, is there any specification for the server commands? I have trouble with some of the "methods" (namely "blockchain.address.subscribe"), but it might be due to me not understanding what it actually does. I've looked at the stratum protocol draft (I'm assuming electrum uses this or is at least based on it?) but it doesn't seem to have any real info either.
|
|
|
|
ThomasV (OP)
Moderator
Legendary
Offline
Activity: 1896
Merit: 1353
|
|
June 27, 2012, 05:10:48 PM |
|
Thomas, is there any specification for the server commands? I have trouble with some of the "methods" (namely "blockchain.address.subscribe"), but it might be due to me not understanding what it actually does. I've looked at the stratum protocol draft (I'm assuming electrum uses this or is at least based on it?) but it doesn't seem to have any real info either.
the specs are hosted on the bitcoinconsultancy wiki. that wiki is down atm. there is no ETA afaik
|
Electrum: the convenience of a web wallet, without the risks
|
|
|
genjix
Legendary
Offline
Activity: 1232
Merit: 1076
|
|
June 27, 2012, 05:19:53 PM |
|
vuce, i made an implementation of the server backend and created the server frontend so i can help you out. you should come to #electrum on Freenode.
|
|
|
|
vuce
|
|
June 27, 2012, 08:37:15 PM |
|
vuce, i made an implementation of the server backend and created the server frontend so i can help you out. you should come to #electrum on Freenode.
Managed to figure it out, but I'll drop by if I have any more questions, thanks genjix!
|
|
|
|
bitfoo
Donator
Sr. Member
Offline
Activity: 289
Merit: 250
|
|
July 08, 2012, 06:28:18 AM |
|
Here's a note about running the electrum server on a 32-bit machine. The issue is that abe tries to mmap the blk000x.dat file, which may be too large to fit in 32-bit virtual memory. I use a patch for bitcoin that reduces the max size of each dat file to ~500MB: diff -ur bitcoin-0.6.2_orig/src/main.cpp bitcoin-0.6.2/src/main.cpp --- bitcoin-0.6.2_orig/src/main.cpp 2012-07-07 23:18:28.365376724 -0700 +++ bitcoin-0.6.2/src/main.cpp 2012-06-19 18:40:45.842931405 -0700 @@ -1865,7 +1865,7 @@ if (fseek(file, 0, SEEK_END) != 0) return NULL; // FAT32 filesize max 4GB, fseek and ftell max 2GB, so we must stay under 2GB - if (ftell(file) < 0x7F000000 - MAX_SIZE) + if (ftell(file) < 0x1F000000 - MAX_SIZE) { nFileRet = nCurrentBlockFile; return file;
The idea for this patch comes from this post by John Tobey. The "right" way to do this may be to fix abe to only mmap the file partially, but until then, this little hack works.
|
|
|
|
wabber
Member
Offline
Activity: 85
Merit: 10
|
|
July 12, 2012, 01:54:26 PM |
|
I've set up an electrum server some time ago for me and my friends because we didn't want to download the blockchain. I've made it public now, it doesn't have a domain but the IP should show up in the server list: 176.9.206.164
|
|
|
|
marcus_of_augustus
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
|
July 13, 2012, 09:58:04 PM |
|
So I notice there are currently 6 servers the Electrum client is aware of ... just wondering if the servers can be made aware of other servers in the same way that the client is?
|
|
|
|
wabber
Member
Offline
Activity: 85
Merit: 10
|
|
July 13, 2012, 11:42:20 PM |
|
So I notice there are currently 6 servers the Electrum client is aware of ... just wondering if the servers can be made aware of other servers in the same way that the client is?
I didn't take a closer look to the source but i think electrum uses irc to find servers, so yeah it wouldn't be a problem for the server to be aware of other servers. But why would you need that?
|
|
|
|
marcus_of_augustus
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
|
July 15, 2012, 08:41:45 AM |
|
So I notice there are currently 6 servers the Electrum client is aware of ... just wondering if the servers can be made aware of other servers in the same way that the client is?
I didn't take a closer look to the source but i think electrum uses irc to find servers, so yeah it wouldn't be a problem for the server to be aware of other servers. But why would you need that? It makes possible the linking of servers into groups for auditing, cross-checking, etc. It offers other possibilities like a stratum network on top of bitcoin, a server-to-server network, or even just groupings of servers that electrum clients could log into and be ambivalent about which precise server they are referencing just that it is one of a trusted group, etc ... it may be easier for electrum servers to get blockchain update information directly from other electrum servers (in addition to the bitcoin network) since they share db architecture ... ... and lots of other reasons Basically a network of servers is stronger and less centralised than nodes of lone, isolated servers.
|
|
|
|
unclemantis
Member
Offline
Activity: 98
Merit: 10
(:firstbits => "1mantis")
|
|
July 15, 2012, 12:08:55 PM |
|
do the electrum servers have the available to be connected using rpcjson? I am currently using blockchain.info but I would like to be able to use an electrum server.
|
|
|
|
duncant
Jr. Member
Offline
Activity: 53
Merit: 2
|
|
July 25, 2012, 06:29:45 AM |
|
Hi! I just upgraded my server to the lastest git version. I'm getting the following error when I try to run the server Starting Electrum server on uncle-enzo.info Traceback (most recent call last): File "/var/bitcoin/bin/electrum-server", line 122, in <module> chain_proc = backend.BlockchainProcessor(config) File "/var/bitcoin/src/electrum/server/backends/abe/__init__.py", line 452, in __init__ self.store = AbeStore(config) File "/var/bitcoin/src/electrum/server/backends/abe/__init__.py", line 39, in __init__ print 'Coin chain_id = %d' % self.chain_id TypeError: %d format: a number is required, not NoneType
Is there a setting that I need to make the new version work?
|
|
|
|
Tachikoma
|
|
July 25, 2012, 07:08:59 PM |
|
I think the latest git version has multi-chain support build in. Open up your config file (/etc/electrum.conf) and add the following under the [server] part: coin=bitcoin datadir=/home/myuser/.bitcoin
Replace the datadir with the path to your bitcoind config folder.
|
|
|
|
duncant
Jr. Member
Offline
Activity: 53
Merit: 2
|
|
July 26, 2012, 06:25:51 AM |
|
I'm still getting the same error after adding those lines to my electrum.conf.
|
|
|
|
Tachikoma
|
|
July 26, 2012, 07:40:54 AM |
|
Try to run this query on your electrum database update datadir set chain_id=1 where datadir_id =1
Or manually open the datadir table and put chain_id to one for the correct row.
|
|
|
|
duncant
Jr. Member
Offline
Activity: 53
Merit: 2
|
|
July 26, 2012, 06:57:44 PM |
|
That fixed it! Thanks!
|
|
|
|
|