• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Electrum Dark

Good stuff! Is your testnet electrum server public? Would like to add it to the list of servers in the client to test multiple connections...

Finished setup TESTNET Electrum server, the address is 188.226.243.116
Ports are:
stratum_tcp_port = 50001
stratum_http_port = 58081
stratum_tcp_ssl_port = 50002
stratum_http_ssl_port = 58082
 
Finished setup TESTNET Electrum server, the address is 188.226.243.116
Ports are:
stratum_tcp_port = 50001
stratum_http_port = 58081
stratum_tcp_ssl_port = 50002
stratum_http_ssl_port = 58082

Hmm, does not work for me - not connecting to any port. Down for maintenance?
 
Hmm, does not work for me - not connecting to any port. Down for maintenance?
Please try again, had to restart.

I noticed that the confirmations in the Electrum Wallet are different/wrong from the standard wallet.
Also, details of a transaction doesn't work, getting this error

Traceback (most recent call last):
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 528, in <lambda>
menu.addAction(_("Details"), lambda: self.show_transaction(self.wallet.transactions.get(tx_hash)))
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 536, in show_transaction
d = transaction_dialog.TxDialog(tx, self)
File "/electrum-drk-client/electrum-drk/gui/qt/transaction_dialog.py", line 45, in __init__
tx_dict = tx.as_dict()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 844, in as_dict
"complete":self.is_complete()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 684, in is_complete
s, r = self.signature_count()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 677, in signature_count
signatures = filter(lambda x: x is not None, txin['signatures'])
KeyError: 'signatures'
 
Please try again, had to restart.
Works now, thanks!

I noticed that the confirmations in the Electrum Wallet are different/wrong from the standard wallet.
Yep, the client is using the litecoin retarget algorithm, and therefore is not able to stay in sync with the server. I need to port DGW3 to Python first :grin:

Also, details of a transaction doesn't work, getting this error

Traceback (most recent call last):
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 528, in <lambda>
menu.addAction(_("Details"), lambda: self.show_transaction(self.wallet.transactions.get(tx_hash)))
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 536, in show_transaction
d = transaction_dialog.TxDialog(tx, self)
File "/electrum-drk-client/electrum-drk/gui/qt/transaction_dialog.py", line 45, in __init__
tx_dict = tx.as_dict()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 844, in as_dict
"complete":self.is_complete()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 684, in is_complete
s, r = self.signature_count()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 677, in signature_count
signatures = filter(lambda x: x is not None, txin['signatures'])
KeyError: 'signatures'

This works for me - are you doing something special about the transaction?

KVDjZ4S.png
 
Works now, thanks!


Yep, the client is using the litecoin retarget algorithm, and therefore is not able to stay in sync with the server. I need to port DGW3 to Python first :grin:

Ok well let me know if i can be of any help.

This works for me - are you doing something special about the transaction?

KVDjZ4S.png

It's a mined transaction like this one:

Status: 18 confirmations
Date: 16/07/14 18:20
Source: Generated
Credit: 5.00 DRK (matures in 102 more blocks)
Net amount: 0.00 DRK
Transaction ID: 0bc2c06febbb4210aed91d687b56a95e2bd4767ddeb3dbadc8227e8305df38b2

Generated coins must mature 120 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.
 
It's a mined transaction like this one:

Status: 18 confirmations
Date: 16/07/14 18:20
Source: Generated
Credit: 5.00 DRK (matures in 102 more blocks)
Net amount: 0.00 DRK
Transaction ID: 0bc2c06febbb4210aed91d687b56a95e2bd4767ddeb3dbadc8227e8305df38b2

Maybe that's the root cause of this error, need to dig into the code to check if coinbase transactions are handled differently.

I can confirm that "Details" does not work on coinbase transactions at the moment - i get the same error as you above.

Regarding the confirmations: For debugging purposes I patched my client by commenting out the verify_chain() method, it now stays in sync with the server. This is ugly, so don't do this at home :smile:
 
Last edited by a moderator:
Will this be something that we can require Masternodes to provide? I think it's a basic need and should be required if possible :)
 
Will this be something that we can require Masternodes to provide? I think it's a basic need and should be required if possible :)
I think so, but have not checked back with eduffield if he thinks the same - he is very busy finalizing RC4 atm.

IF we require masternodes to provide the service of a "full node server" we have to be clear that the HW requirements will rise and exceed the capability of some of the current MNs (being EC2 t1.micro instances) - on the other side: Isn't exactly that what is the rationale of having dedicated MNs in the network? Evan could add checks on CPU/IO/RAM beside open port 9999 for 'masternode start' to be successful...
 
I think so, but have not checked back with eduffield if he thinks the same - he is very busy finalizing RC4 atm.

IF we require masternodes to provide the service of a "full node server" we have to be clear that the HW requirements will rise and exceed the capability of some of the current MNs (being EC2 t1.micro instances) - on the other side: Isn't exactly that what is the rationale of having dedicated MNs in the network? Evan could add checks on CPU/IO/RAM beside open port 9999 for 'masternode start' to be successful...
I'm ready for this, from the start my MN are running on private servers with a good configuration in the perspective of an evolution.
 
Can electrum and masternode share the blockchain?
In what meaning of "sharing"?

The current electrum server architecture is that way, that you run a darkcoind with txindex=1 option, to get an index of the full transaction history. Then you start up the electrum server which using RPC connection to darkcoind to generate its own (pruned) database version of the blockchain and stores it in a leveldb (just like darkcoind, but distinct).

So if you like both are already sharing the blockchain, as Electrum server is dependent on a running instance of darkcoind.

The most interesting solution would be to integrate the electrum server into the masternode code, so that the effort to install it is minimized.
 
In what meaning of "sharing"?

The current electrum server architecture is that way, that you run a darkcoind with txindex=1 option, to get an index of the full transaction history. Then you start up the electrum server which using RPC connection to darkcoind to generate its own (pruned) database version of the blockchain and stores it in a leveldb (just like darkcoind, but distinct).

So if you like both are already sharing the blockchain, as Electrum server is dependent on a running instance of darkcoind.
Yea that was my question. So it's pretty cool, running an electrum server along with a masternode is no problem then even on very small instances...
 
Yea that was my question. So it's pretty cool, running an electrum server along with a masternode is no problem then even on very small instances...
I haven't checked the minimum requirements for the electrum server yet, but usually the main developers are speaking about 2GB RAM (more is better, since you can hold the leveldb-databased in shared memory then and can speed up I/O a lot)

Testnet electrum leveldb is currently ~70MB in size (36k blocks, 60k transactions, 10.000 prune limit), Mainnet is ~250MB
 
Last edited by a moderator:
What's the status on this? Might be related to the openbazaar integration if we could add multisignature transaction ui to electrum...
 
Back
Top