Luke-Jr (OP)
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
February 11, 2013, 07:14:19 AM |
|
I will help in the development of eloipool, but I do not know python very well (and certainly not as good as Luke) , for now I can help in testing
is it ok that stratum server reports different difficult than client? i have send You PM with detailed description of this issue.
Some clients display truncated bdiff (what bitcoin uses) instead of pdiff (what mining pools traditionally use). Pdiff 1 is about 0.9999 bdiff (and similar for higher difficulties), so truncating as bdiff will show 1 less than the actual difficulty. BFGMiner uses truncated pdiff, so it will show these correctly.
|
|
|
|
Parazyd
|
|
February 11, 2013, 09:54:29 AM |
|
Is the TrackerAddr a valid Bitcoin address. Do 25 BTC of a solved block go on that address?
|
|
|
|
arruah
Legendary
Offline
Activity: 1357
Merit: 1004
|
|
February 13, 2013, 02:55:59 PM |
|
Hi! I have error when I trying start eloipool.py root@feinman:~/eloipool# ./eloipool.py >>> 2013-02-13 20:45:02,965 restoreState INFO Restoring saved state from 'eloipool.worklog' (24 bytes) 2013-02-13 20:45:02,982 restoreState DEBUG Skipping restore of expired workLog 2013-02-13 20:45:02,982 restoreState INFO State restored successfully 2013-02-13 20:45:02,982 restoreState INFO Total downtime: 8774.59 seconds 2013-02-13 20:45:20,433 merkleMaker WARNING clearMerkleRoots running out! only 0 left 2013-02-13 20:46:33,057 merkleMaker CRITICAL Traceback (most recent call last): File "/root/eloipool/merklemaker.py", line 501, in run self.merkleMaker_I() File "/root/eloipool/merklemaker.py", line 491, in merkleMaker_I self.merkleMaker_II() File "/root/eloipool/merklemaker.py", line 457, in merkleMaker_II return self.updateMerkleTree() File "/root/eloipool/merklemaker.py", line 274, in updateMerkleTree MP = self.access.getblocktemplate(self.GBTReq) File "/usr/local/lib/python3.1/dist-packages/jsonrpc/authproxy.py", line 96, in __call__ httpresp = self.__conn.getresponse() File "/usr/lib/python3.1/http/client.py", line 1017, in getresponse response.begin() File "/usr/lib/python3.1/http/client.py", line 348, in begin version, status, reason = self._read_status() File "/usr/lib/python3.1/http/client.py", line 304, in _read_status line = str(self.fp.readline(), ) File "/usr/lib/python3.1/socket.py", line 214, in readinto return self._sock.recv_into(b) socket.timeout: timed out My config http://pastebin.com/CtEEiSdj
|
BCH
|
|
|
smracer
Donator
Legendary
Offline
Activity: 1057
Merit: 1021
|
|
February 21, 2013, 05:41:50 AM |
|
Ok, i'm trying to get eloipool with litecoin, and i'm getting this error: python eloipool.py Traceback (most recent call last): File "eloipool.py", line 43, in <module> bcnode = BitcoinNode(config.UpstreamNetworkId) File "/home/pi/eloipool/bitcoin/node.py", line 132, in __init__ super().__init__(*a, **ka) TypeError: super() takes at least 1 argument (0 given) Can someone give some help on this. My config goes like this: ### Settings relating to server identity
# Name of the server ServerName = 'PT LTC Pool'
### Settings relating to server scaling/load
# Share hashes must be below this to be valid shares # If dynamic targetting is enabled, this is a minimum ShareTarget = 0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
# Automatically adjust targets per username # 0 = disabled # 1 = arbitrary targets # 2 = power of two difficulties (zero bit counts) DynamicTargetting = 0
# How many shares per minute to try to achieve on average DynamicTargetGoal = 8
# Number of seconds hashrate is measured over DynamicTargetWindow = 120
# Minimum and maximum of merkle roots to keep queued WorkQueueSizeRegular = (0x100, 0x1000)
# Minimum and maximum of BLANK merkle roots to keep queued # (used if we run out of populated ones) WorkQueueSizeClear = (0x1000, 0x2000)
# Minimum and maximum of BLANK merkle roots to keep queued, one height up # (used for longpolls) WorkQueueSizeLongpoll = (0x1000, 0x2000)
# How long to wait between getmemorypool updates normally MinimumTxnUpdateWait = 5
# How long to wait between retries if getmemorypool fails TxnUpdateRetryWait = 1
# How long to sleep in idle loops (temporary!) IdleSleepTime = 0.1
### Settings relating to reward generation
# Address to generate rewards to TrackerAddr = 'LTC Address' # testnet
# Coinbaser command to control reward delegation # NOTE: This example donates 1% of block rewards to Luke-Jr for Eloipool develo$ CoinbaserCmd = 'echo -e "1\\n$((%d / 100))\\LTC Address"'
### Settings relating to upstream data providers
# JSON-RPC server for getmemorypool UpstreamURI = 'http://ltc user:ltc password@localhost:9332'
# Set to True if you want shares meeting the upstream target to wait for a # response from the upstream server before logging them. Otherwise, for such # shares, upstreamResult will always be True and upstreamRejectReason will # always be None. Note that enabling this may cause shares to be logged out of # order, or with the wrong timestamp (if your share logger uses the log-time # rather than share-time). DelayLogForUpstream = False
# Bitcoin p2p server for announcing blocks found UpstreamBitcoindNode = ('127.0.0.1', 9333)
# Network ID for the primary blockchain UpstreamNetworkId = b'\xFA\xBF\xB5\xDA'
# Secret username allowed to use setworkaux #SecretUser = ""
# URI to send gotwork with info for every share submission #GotWorkURI = ''
# Share hashes must be below this to be submitted to gotwork GotWorkTarget = 0x00000000fffffffffffffffffffffffffffffffffffffffffffffffffffff$
# Aim to produce blocks with transaction counts that are a power of two # This helps avoid any chance of someone abusing CVE-2012-2459 with them # 1 = cut out feeless transactions; 2 = cut out even fee-included transactions $ POT = 2
# Avoid mining feeless transactions except to satisfy POT # Note this only works if POT is in fact enabled in the first place Greedy = False
### Settings relating to network services
# Addresses to listen on for JSON-RPC getwork server # Note that Eloipool only supports IPv6 sockets, and if you want to bind to an # IPv4 address you will need to prepend it with ::ffff: eg ::ffff:192.168.1.2 JSONRPCAddresses = ( ('::ffff:poollink.no-ip.org', 9337), )
# Addresses to listen on for Bitcoin node # Note that Eloipool only supports IPv6 sockets, and if you want to bind to an # IPv4 address you will need to prepend it with ::ffff: eg ::ffff:192.168.1.2 BitcoinNodeAddresses = ( ('::ffff:poollink.no-ip.org', 9338), )
# Addresses that are allowed to "spoof" from address with the X-Forwarded-For h$ TrustedForwarders = ('::ffff:127.0.0.1',)
# Logging of shares: ShareLogging = ( { 'type': 'logfile', 'filename': 'share-logfile', 'format': "{time} {Q(remoteHost)} {username} {YN(not(rejectReas$ }, { 'type': 'sql', 'engine': 'postgres', 'dbopts': { 'host': 'localhost', 'database': 'pooldb', 'user': 'eloipool', 'password': 'somethingsecret', }, 'statement': "insert into shares (rem_host, username, our_resul$ }, { 'type': 'sql', 'engine': 'mysql', 'dbopts': { 'host': 'localhost', 'db': 'eloidb', 'user': 'dbuser', 'password': 'dbadmin', }, 'statement': "insert into shares (rem_host, username, our_resul$ }, { 'type': 'sql', 'engine': 'sqlite', 'dbopts': { 'database': 'share.db', }, 'statement': "insert into shares (remoteHost, username, rejectR$ }, )
What is wrong here? How did you fix this? I am getting the same error. Thanks.
|
|
|
|
Luke-Jr (OP)
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
February 21, 2013, 07:49:12 AM |
|
Ok, i'm trying to get eloipool with litecoin, and i'm getting this error:
python eloipool.py Traceback (most recent call last): File "eloipool.py", line 43, in <module> bcnode = BitcoinNode(config.UpstreamNetworkId) File "/home/pi/eloipool/bitcoin/node.py", line 132, in __init__ super().__init__(*a, **ka) TypeError: super() takes at least 1 argument (0 given) How did you fix this? I am getting the same error. Thanks. Eloipool doesn't support scamcoins like Litecoin. If you're still getting the error anyway, it looks like it's probably from some ancient version of Python. As the README clearly states, you need Python 3. To be more specific, I test under 3.1.
|
|
|
|
Parazyd
|
|
February 21, 2013, 02:36:02 PM |
|
Hey Luke-Jr. Trying to setup eloipool. Can you help me with my config.py? When I start ./eloipool.py I get the error that the jsonrpc module isn't found. ### Settings relating to server identity # Name of the server ServerName = 'Private Eloipool' ### Settings relating to server scaling/load # Share hashes must be below this to be valid shares # If dynamic targetting is enabled, this is a minimum ShareTarget = 0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff # Automatically adjust targets per username # 0 = disabled # 1 = arbitrary targets # 2 = power of two difficulties (zero bit counts) DynamicTargetting = 0 # How many shares per minute to try to achieve on average DynamicTargetGoal = 8 # Number of seconds hashrate is measured over DynamicTargetWindow = 120 # Minimum and maximum of merkle roots to keep queued WorkQueueSizeRegular = (0x100, 0x1000) # Minimum and maximum of BLANK merkle roots to keep queued # (used if we run out of populated ones) WorkQueueSizeClear = (0x1000, 0x2000) # Minimum and maximum of BLANK merkle roots to keep queued, one height up # (used for longpolls) WorkQueueSizeLongpoll = (0x1000, 0x2000) # How long to wait between getmemorypool updates normally MinimumTxnUpdateWait = 5 # How long to wait between retries if getmemorypool fails TxnUpdateRetryWait = 1 # How long to sleep in idle loops (temporary!) IdleSleepTime = 0.1 ### Settings relating to reward generation # Address to generate rewards to TrackerAddr = 'MyAddress in an outside wallet on my home pc, not localhost' # Coinbaser command to control reward delegation # NOTE: This example donates 1% of block rewards to Luke-Jr for Eloipool development CoinbaserCmd = 'echo -e "1\\n$((%d / 100))\\n1579aXhdwvKZEMrAKoCZhzGuqMa8EonuXU"' ### Settings relating to upstream data providers # JSON-RPC servers to get block templates from # See https://en.bitcoin.it/wiki/BIP_0023#Logical_Services for key details TemplateSources = ( { 'name': 'primary', 'uri': 'http://bitcoinrpc:PasswordInBitcoin.conf@localhost:8332', 'priority': 0, 'weight': 1, }, { 'name': 'secondary', 'uri': 'http://bitcoinrpc:PasswordInbitcoin.conf@localhost:8332', 'priority': 1, 'weight': 1, }, ) # JSON-RPC servers to check block proposals with # If none provided, and selected source supports proposals, it alone will also # be used for checking #TemplateChecks = ( # { # 'name': 'primary', # 'uri': 'http://user:pass@localhost:8332', # # # If 'unanimous' is true, no template will be used if this node # # rejects it # 'unanimous': False, # # # If check servers disagree on all templates, they will be scored and # # the highest score will be used; 'weight' can be used to control the # # scoring per-server # 'weight': 1.1, # }, # { # 'name': 'secondary', # 'uri': 'http://user:pass@localhost:18332', # 'unanimous': False, # 'weight': 1, # }, #) # # JSON-RPC servers to submit found blocks to (when they meet the full target) # The specific TemplateSource that the block was based on will always be sent # the block first. # If setting is not specified, or None, full TemplateSources list will be used. # If an empty list, no extra submissions will be attempted. # If an empty list, and the block was found on a "clear" merkle root (not based # on any TemplateSource), the full TemplateSources list will be used. #BlockSubmissions = ( # { # 'name': 'primary', # 'uri': 'http://user:pass@localhost:8332', # }, # { # 'name': 'secondary', # 'uri': 'http://user:pass@localhost:18332', # } #) # # Templates will not be used unless they have an acceptance ratio above this # Range: 0.00 - 1.00 MinimumTemplateAcceptanceRatio = 0 # No template with a combined total score below this will be used MinimumTemplateScore = 1 # Set to True if you want shares meeting the upstream target to wait for a # response from an upstream server before logging them. Otherwise, for such # shares, upstreamResult will always be True and upstreamRejectReason will # always be None. Note that enabling this may cause shares to be logged out of # order, or with the wrong timestamp (if your share logger uses the log-time # rather than share-time). DelayLogForUpstream = False # Bitcoin p2p server for announcing blocks found UpstreamBitcoindNode = ('127.0.0.1', 8333) # testnet # Network ID for the primary blockchain # Other known network IDs can be found at: # https://en.bitcoin.it/wiki/Protocol_specification#Message_structure UpstreamNetworkId = b'\xF9\xBE\xB4\xD9' # testnet # Secret username allowed to use setworkaux #SecretUser = "" # URI to send gotwork with info for every share submission #GotWorkURI = '' # Share hashes must be below this to be submitted to gotwork GotWorkTarget = 0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff # Aim to produce blocks with transaction counts that are a power of two # This helps avoid any chance of someone abusing CVE-2012-2459 with them # 1 = cut out feeless transactions; 2 = cut out even fee-included transactions (if possible) POT = 2 # Avoid mining feeless transactions except to satisfy POT # Note this only works if POT is in fact enabled in the first place Greedy = False ### Settings relating to network services # Note that Eloipool only supports IPv6 sockets, and if you want to bind to an # IPv4 address you will need to prepend it with ::ffff: eg ::ffff:192.168.1.2 # Addresses to listen on for JSON-RPC GBT/getwork server JSONRPCAddresses = ( ('::ffff:MyServerIP', 1337), ) # Addresses to listen on for Stratum mining server StratumAddresses = ( ('', 3334), ) # Addresses to listen on for Bitcoin node # Note this will only be used to distribute blocks the pool finds, nothing else BitcoinNodeAddresses = ( ('', 8333), ) # Addresses that are allowed to "spoof" from address with the X-Forwarded-For header TrustedForwarders = ('::ffff:127.0.0.1',) # Logging of shares: #ShareLogging = ( # { # 'type': 'logfile', # 'filename': 'share-logfile', # 'format': "{time} {Q(remoteHost)} {username} {YN(not(rejectReason))} {dash(YN(upstreamResult))} {dash(rejectReason)} {solution}\n", # }, # { # 'type': 'sql', # 'engine': 'postgres', # 'dbopts': { # 'host': 'localhost', # 'database': 'pooldb', # 'user': 'eloipool', # 'password': 'somethingsecret', # }, # 'statement': "insert into shares (rem_host, username, our_result, upstream_result, reason, solution) values ({Q(remoteHost)}, {username}, {YN(not(rejectReason))}, {YN(upstreamResult)}, {rejectReason}, decode({solution}, 'hex'))", # }, # { # 'type': 'sql', # 'engine': 'mysql', # 'dbopts': { # 'host': 'localhost', # 'db': 'pooldb', # 'user': 'eloipool', # 'password': 'somethingsecret', # }, # 'statement': "insert into shares (rem_host, username, our_result, upstream_result, reason, solution) values ({Q(remoteHost)}, {username}, {YN(not(rejectReason))}, {YN(upstreamResult)}, {rejectReason}, unhex({solution}))", # }, # { # 'type': 'sql', # 'engine': 'sqlite', # 'dbopts': { # 'database': 'share.db', # }, # 'statement': "insert into shares (remoteHost, username, rejectReason, upstreamResult, solution) values ({remoteHost}, {username}, {rejectReason}, {upstreamResult}, {solution})", # }, #) ### Settings related to poolserver logging # By default, significant events will be printed to the interactive console # You can customize your logging using either simple parameters, or Python's advanced logging framework # Note that using Python's logging framework will override the default console logging! # To simply log everything to the system log (syslog) as well: # LogToSysLog = True # To make a log file: # LogFile = 'filename.log' # For a rotating log file: LogFile = { 'filename': 'eloipoollog.log', 'when': 'midnight', 'backupCount': 7, } # For details, see: # http://docs.python.org/3/library/logging.handlers.html#logging.handlers.TimedRotatingFileHandler
|
|
|
|
Luke-Jr (OP)
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
February 21, 2013, 05:25:10 PM |
|
When I start ./eloipool.py I get the error that the jsonrpc module isn't found. That means the bitcoinrpc module isn't installed correctly.
|
|
|
|
tomaszsz
Member
Offline
Activity: 76
Merit: 10
|
|
February 22, 2013, 07:32:34 PM |
|
this error still appears , just after starting the program, >>> Traceback (most recent call last): File "./eloipool.py", line 909, in <module> MM.start() File "/home/xxxxxxxx/merklemaker.py", line 685, in start self._prepare() File "/home/xxxxxxxx7/merklemaker.py", line 117, in _prepare URINamePair(TS, 'TemplateSources[%u]' % (i,)) File "/home/xxxxxxxx/merklemaker.py", line 104, in URINamePair a['name'] = URI2Name.get(a['uri'], defname) TypeError: string indices must be integers
and the program stops i send config.py to PM (pastebin ) is it a problem with configuration ? i use the same settings in the previous version .
|
|
|
|
Luke-Jr (OP)
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
February 22, 2013, 07:43:37 PM |
|
this error still appears , just after starting the program, >>> Traceback (most recent call last): File "./eloipool.py", line 909, in <module> MM.start() File "/home/xxxxxxxx/merklemaker.py", line 685, in start self._prepare() File "/home/xxxxxxxx7/merklemaker.py", line 117, in _prepare URINamePair(TS, 'TemplateSources[%u]' % (i,)) File "/home/xxxxxxxx/merklemaker.py", line 104, in URINamePair a['name'] = URI2Name.get(a['uri'], defname) TypeError: string indices must be integers
and the program stops i send config.py to PM (pastebin ) is it a problem with configuration ? i use the same settings in the previous version . Check that all your option lists (especially TemplateSources, TemplateChecks, and BlockSubmissions) have commas after every element (including the last!).
|
|
|
|
tomaszsz
Member
Offline
Activity: 76
Merit: 10
|
|
February 22, 2013, 09:57:15 PM |
|
that is true, a have add commas, and now i get this error >>> 2013-02-22 22:53:35,380 merkleMaker INFO New block: 00000000000004509071260531df744090422d372d706cee907b2b5f2be8b8ff (height: 222598; bits: 1a04985c) 2013-02-22 22:53:35,382 JSONRPCServer INFO Waiting 14.1 seconds to longpoll 2013-02-22 22:53:35,450 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxx/merklemaker.py", line 636, in merkleMaker_II return self._updateMerkleTree() File "/home/xxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxx/merklemaker.py", line 506, in _updateMerkleTree_I r = self._updateMerkleTree_fromTS(TS) File "/home/xxx/merklemaker.py", line 481, in _updateMerkleTree_fromTS (AcceptedScore, TotalScore) = self._CheckTemplate(newMerkleTree, TS) File "/home/xxx/merklemaker.py", line 430, in _CheckTemplate propose = caccess.getblocktemplate(ProposeReq) File "/home/xxx/jsonrpc/authproxy.py", line 106, in __call__ raise JSONRPCException(resp['error']) jsonrpc.authproxy.JSONRPCException
|
|
|
|
Luke-Jr (OP)
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
February 22, 2013, 10:05:33 PM |
|
that is true, a have add commas, and now i get this error >>> 2013-02-22 22:53:35,380 merkleMaker INFO New block: 00000000000004509071260531df744090422d372d706cee907b2b5f2be8b8ff (height: 222598; bits: 1a04985c) 2013-02-22 22:53:35,382 JSONRPCServer INFO Waiting 14.1 seconds to longpoll 2013-02-22 22:53:35,450 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxx/merklemaker.py", line 636, in merkleMaker_II return self._updateMerkleTree() File "/home/xxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxx/merklemaker.py", line 506, in _updateMerkleTree_I r = self._updateMerkleTree_fromTS(TS) File "/home/xxx/merklemaker.py", line 481, in _updateMerkleTree_fromTS (AcceptedScore, TotalScore) = self._CheckTemplate(newMerkleTree, TS) File "/home/xxx/merklemaker.py", line 430, in _CheckTemplate propose = caccess.getblocktemplate(ProposeReq) File "/home/xxx/jsonrpc/authproxy.py", line 106, in __call__ raise JSONRPCException(resp['error']) jsonrpc.authproxy.JSONRPCException Probably your bitcoind is missing BIP 23 Proposal support. There is a pull request for bitcoind here. It's also included in the 0.6.0.eligius and 0.8.0.eligius miner releases of bitcoind. Alternatively, it should be safe to use Eloipool without any TemplateChecks. This is only used to guard against unknown bugs in block creation.
|
|
|
|
tomaszsz
Member
Offline
Activity: 76
Merit: 10
|
|
February 23, 2013, 04:07:57 PM Last edit: February 23, 2013, 04:23:56 PM by tomaszsz |
|
everything look ok now ( after comment TemplateChecks or use 0.8.0.eligius bitcoind branch ) but sometimes this message appears 2013-02-23 14:04:49,958 merkleMaker INFO New block: 00000000000002323fa1359645f9c26ec005792f9d463faa55931f32cde12020 (height: 222693; bits: 1a04985c) 2013-02-23 14:04:50,111 JSONRPCServer INFO Longpoll woke up 6 clients in 0.042 seconds 2013-02-23 14:04:50,126 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxxxxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxxxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxxxx/merklemaker.py", line 648, in merkleMaker_II return self._updateMerkleTree() File "/home/xxxxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxxxx/merklemaker.py", line 506, in _updateMerkleTree_I r = self._updateMerkleTree_fromTS(TS) File "/home/xxx/merklemaker.py", line 485, in _updateMerkleTree_fromTS AcceptRatio = AcceptedScore / TotalScore ZeroDivisionError: int division or modulo by zero
? 2013-02-23 16:14:17,978 JSONRPCHandler ERROR Error during JSON-RPC call (UA=b'cgminer 2.10.2', IP=::ffff:xx.xx.41.73): doJSON_submitblock['02000000d6b2ca723dd01ffffffff025d5988ac00000000', {}] Traceback (most recent call last): File "/home/xxxx/jsonrpcserver.py", line 200, in _doJSON_i rv = getattr(self, method)(*params) File "/home/xxxxx/jsonrpc_getblocktemplate.py", line 91, in doJSON_submitblock data = bytes.fromhex(data) ValueError: non-hexadecimal number found in fromhex() arg at position 166 i think it is bug in cgminer 2.10.2 ? 2013-02-23 16:29:37,753 JSONRPCServer INFO Longpoll woke up 2 clients in 0.272 seconds 2013-02-23 16:30:45,122 merkleMaker ERROR Upstream 'primary' rejected proposed block from 'primary': stale-prevblk 2013-02-23 16:30:45,132 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxxxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxxxx/merklemaker.py", line 648, in merkleMaker_II return self._updateMerkleTree() File "/home/xxxxxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxxx/merklemaker.py", line 522, in _updateMerkleTree_I raise RuntimeError('Failed to create usable template') RuntimeError: Failed to create usable template
? and in stratum 2013-02-23 14:33:47,374 merkleMaker WARNING Transaction-longpoll requested 22 seconds ago, and still not ready. Is your server fast enough to keep up with your configured WorkQueueSizeRegular maximum? (doing longpoll merkle roots) 2013-02-23 14:33:47,374 merkleMaker WARNING Haven't updated the merkle tree in at least 22 seconds! Is your server fast enough to keep up with your configured work queue minimums? (doing longpoll merkle roots) 2013-02-23 14:33:49,320 JSONRPCServer INFO Nobody to longpoll 2013-02-23 14:34:26,101 StratumServer ERROR Traceback (most recent call last): File "/home/yyyyyyy/networkserver.py", line 413, in serve_forever o.handle_read() File "/home/yyyyy/networkserver.py", line 59, in handle_read self.handle_readbuf() File "/homeyyyyy/networkserver.py", line 111, in handle_readbuf self.found_terminator() File "/home/yyyyyy/stratumserver.py", line 60, in found_terminator inbuf = b"".join(self.incoming).decode('ascii') UnicodeDecodeError: 'ascii' codec can't decode byte 0xb9 in position 32: ordinal not in range(128)
|
|
|
|
Luke-Jr (OP)
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
February 23, 2013, 07:14:32 PM |
|
2013-02-23 14:04:49,958 merkleMaker INFO New block: 00000000000002323fa1359645f9c26ec005792f9d463faa55931f32cde12020 (height: 222693; bits: 1a04985c) 2013-02-23 14:04:50,111 JSONRPCServer INFO Longpoll woke up 6 clients in 0.042 seconds 2013-02-23 14:04:50,126 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxxxxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxxxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxxxx/merklemaker.py", line 648, in merkleMaker_II return self._updateMerkleTree() File "/home/xxxxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxxxx/merklemaker.py", line 506, in _updateMerkleTree_I r = self._updateMerkleTree_fromTS(TS) File "/home/xxx/merklemaker.py", line 485, in _updateMerkleTree_fromTS AcceptRatio = AcceptedScore / TotalScore ZeroDivisionError: int division or modulo by zero
Fixed in git. 2013-02-23 16:14:17,978 JSONRPCHandler ERROR Error during JSON-RPC call (UA=b'cgminer 2.10.2', IP=::ffff:xx.xx.41.73): doJSON_submitblock['02000000d6b2ca723dd01ffffffff025d5988ac00000000', {}] Traceback (most recent call last): File "/home/xxxx/jsonrpcserver.py", line 200, in _doJSON_i rv = getattr(self, method)(*params) File "/home/xxxxx/jsonrpc_getblocktemplate.py", line 91, in doJSON_submitblock data = bytes.fromhex(data) ValueError: non-hexadecimal number found in fromhex() arg at position 166 i think it is bug in cgminer 2.10.2 ? Yep. 2013-02-23 16:29:37,753 JSONRPCServer INFO Longpoll woke up 2 clients in 0.272 seconds 2013-02-23 16:30:45,122 merkleMaker ERROR Upstream 'primary' rejected proposed block from 'primary': stale-prevblk 2013-02-23 16:30:45,132 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxxxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxxxx/merklemaker.py", line 648, in merkleMaker_II return self._updateMerkleTree() File "/home/xxxxxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxxx/merklemaker.py", line 522, in _updateMerkleTree_I raise RuntimeError('Failed to create usable template') RuntimeError: Failed to create usable template
Happens sometimes. bitcoind has found a new block, so is reporting our proposal stale. I'm assuming it's followed very quickly with a new block notification? 2013-02-23 14:33:47,374 merkleMaker WARNING Transaction-longpoll requested 22 seconds ago, and still not ready. Is your server fast enough to keep up with your configured WorkQueueSizeRegular maximum? (doing longpoll merkle roots) 2013-02-23 14:33:47,374 merkleMaker WARNING Haven't updated the merkle tree in at least 22 seconds! Is your server fast enough to keep up with your configured work queue minimums? (doing longpoll merkle roots) 2013-02-23 14:33:49,320 JSONRPCServer INFO Nobody to longpoll 2013-02-23 14:34:26,101 StratumServer ERROR Traceback (most recent call last): File "/home/yyyyyyy/networkserver.py", line 413, in serve_forever o.handle_read() File "/home/yyyyy/networkserver.py", line 59, in handle_read self.handle_readbuf() File "/homeyyyyy/networkserver.py", line 111, in handle_readbuf self.found_terminator() File "/home/yyyyyy/stratumserver.py", line 60, in found_terminator inbuf = b"".join(self.incoming).decode('ascii') UnicodeDecodeError: 'ascii' codec can't decode byte 0xb9 in position 32: ordinal not in range(128) Sounds like bad data sent to the server.
|
|
|
|
tomaszsz
Member
Offline
Activity: 76
Merit: 10
|
|
February 23, 2013, 08:48:32 PM |
|
2013-02-23 16:29:37,753 JSONRPCServer INFO Longpoll woke up 2 clients in 0.272 seconds 2013-02-23 16:30:45,122 merkleMaker ERROR Upstream 'primary' rejected proposed block from 'primary': stale-prevblk 2013-02-23 16:30:45,132 merkleMaker CRITICAL Traceback (most recent call last): File "/home/xxxx/merklemaker.py", line 680, in run self.merkleMaker_I() File "/home/xxxxx/merklemaker.py", line 670, in merkleMaker_I self.merkleMaker_II() File "/home/xxxxx/merklemaker.py", line 648, in merkleMaker_II return self._updateMerkleTree() File "/home/xxxxxx/merklemaker.py", line 536, in _updateMerkleTree self._updateMerkleTree_I() File "/home/xxxx/merklemaker.py", line 522, in _updateMerkleTree_I raise RuntimeError('Failed to create usable template') RuntimeError: Failed to create usable template
Happens sometimes. bitcoind has found a new block, so is reporting our proposal stale. I'm assuming it's followed very quickly with a new block notification? i don't think that is after new block notyfication about minute after new block ? and usualy new block is annouced without this message , just normal like this: 2013-02-23 20:14:03,307 JSONRPCServer INFO Longpoll woke up 8 clients in 0.030 seconds 2013-02-23 20:22:16,810 merkleMaker INFO New block: 00000000000000112079f0792 (height: 222748; bits: 1a04985c) 2013-02-23 20:22:16,956 JSONRPCServer INFO Longpoll woke up 8 clients in 0.081 seconds 2013-02-23 20:22:17,951 JSONRPCServer INFO Waiting 4 seconds to longpoll 2013-02-23 20:22:21,972 JSONRPCServer INFO Longpoll woke up 7 clients in 0.010 seconds 2013-02-23 20:27:41,546 merkleMaker INFO New block: 00000000000001d403f01 (height: 222749; bits: 1a04985c) 2013-02-23 20:27:41,769 JSONRPCServer INFO Longpoll woke up 8 clients in 0.089 seconds 2013-02-23 20:27:44,384 JSONRPCServer INFO Waiting 2.39 seconds to longpoll 2013-02-23 20:27:58,363 JSONRPCServer INFO Longpoll woke up 7 clients in 0.062 seconds
|
|
|
|
smracer
Donator
Legendary
Offline
Activity: 1057
Merit: 1021
|
|
February 27, 2013, 04:27:33 AM |
|
2013-02-26 22:19:38,420 jsonrpc_getwork WARNING Error importing 'midstate' module; work will not provide midstates
2013-02-26 22:19:38,440 sharelogging ERROR Error setting up share logger sql: (<class 'ImportError'>, ImportError('No module named psycopg2',), <traceback object at 0x1c2ab48>) >>> 2013-02-26 22:19:38,441 sharelogging ERROR Error setting up share logger sql: (<class 'ImportError'>, ImportError('No module named pymysql',), <traceback object at 0x1c2ac20>) 2013-02-26 22:19:38,473 merkleMaker INFO New block: 0000000000000015f4b9cf9b1c9e8b1e95460cdf6397ab2cf2e8a67d7228b655 (height: 223339; bits: 1a04985c) 2013-02-26 22:19:38,476 JSONRPCServer INFO Waiting 15 seconds to longpoll 2013-02-26 22:19:39,441 JSONRPCServer INFO Ignoring longpoll attempt while another is waiting 2013-02-26 22:19:53,465 JSONRPCServer INFO Nobody to longpoll 2013-02-26 22:21:40,147 merkleMaker INFO New block: 000000000000039c13a0e83af734cf6c0c5accc06b83ed0cb6c77ff9bd38e0f4 (height: 223340; bits: 1a04985c) 2013-02-26 22:21:40,150 JSONRPCServer INFO Nobody to longpoll 2013-02-26 22:21:40,708 JSONRPCServer INFO Nobody to longpoll
What am I doing wrong?
|
|
|
|
tomaszsz
Member
Offline
Activity: 76
Merit: 10
|
|
March 03, 2013, 06:04:10 PM |
|
probably you dont have midstate module (compile this from source file midstate.so needed ) and no sql libs pymysql etc (install python modules)
|
|
|
|
dreamwatcher
Legendary
Offline
Activity: 1064
Merit: 1000
|
|
March 03, 2013, 07:43:24 PM |
|
2013-02-26 22:19:38,420 jsonrpc_getwork WARNING Error importing 'midstate' module; work will not provide midstates
2013-02-26 22:19:38,440 sharelogging ERROR Error setting up share logger sql: (<class 'ImportError'>, ImportError('No module named psycopg2',), <traceback object at 0x1c2ab48>) >>> 2013-02-26 22:19:38,441 sharelogging ERROR Error setting up share logger sql: (<class 'ImportError'>, ImportError('No module named pymysql',), <traceback object at 0x1c2ac20>) 2013-02-26 22:19:38,473 merkleMaker INFO New block: 0000000000000015f4b9cf9b1c9e8b1e95460cdf6397ab2cf2e8a67d7228b655 (height: 223339; bits: 1a04985c) 2013-02-26 22:19:38,476 JSONRPCServer INFO Waiting 15 seconds to longpoll 2013-02-26 22:19:39,441 JSONRPCServer INFO Ignoring longpoll attempt while another is waiting 2013-02-26 22:19:53,465 JSONRPCServer INFO Nobody to longpoll 2013-02-26 22:21:40,147 merkleMaker INFO New block: 000000000000039c13a0e83af734cf6c0c5accc06b83ed0cb6c77ff9bd38e0f4 (height: 223340; bits: 1a04985c) 2013-02-26 22:21:40,150 JSONRPCServer INFO Nobody to longpoll 2013-02-26 22:21:40,708 JSONRPCServer INFO Nobody to longpoll
What am I doing wrong?
You need to install the python3 psycopg2 module. sudo apt-get install python3-psycopg2 or sudo aptitude install python3-psycopg2
|
|
|
|
ocminer
Legendary
Offline
Activity: 2688
Merit: 1240
|
|
March 10, 2013, 11:27:57 AM |
|
As this is the - interesting - open source backend.. Is there also an open source frontend based on this pool software and php / mysql ?
|
suprnova pools - reliable mining pools - #suprnova on freenet https://www.suprnova.cc - FOLLOW us @ Twitter ! twitter.com/SuprnovaPools
|
|
|
Inaba
Legendary
Offline
Activity: 1260
Merit: 1000
|
|
March 10, 2013, 04:48:38 PM |
|
Nope
|
If you're searching these lines for a point, you've probably missed it. There was never anything there in the first place.
|
|
|
ocminer
Legendary
Offline
Activity: 2688
Merit: 1240
|
|
March 10, 2013, 06:11:12 PM |
|
lend me yours ;-)
ok i'll put something up when i got time...
|
suprnova pools - reliable mining pools - #suprnova on freenet https://www.suprnova.cc - FOLLOW us @ Twitter ! twitter.com/SuprnovaPools
|
|
|
|