slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 08, 2012, 11:50:13 PM |
|
Oh, stop panicking, I'm an idiot. Problem was in my balancer setup, it is fixed.
So there's no known issue in Stratum proxy, my apologies.
|
|
|
|
dlasher
|
|
October 10, 2012, 03:20:18 AM |
|
Interesting error thrown tonight, not sure what to make of it: 2012-10-09 20:06:58,826 INFO proxy stratum_listener.submit # [59ms] Share from 'my-miner6' REJECTED: (-2, u'stale', None) 2012-10-09 20:06:58,827 ERROR protocol protocol.process_failure # [Failure instance: Traceback (failure with no frames): <class 'stratum.custom_exceptions.RemoteServiceException'>: (-2, u'stale', None) ] Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/internet/defer.py", line 1043, in _inlineCallbacks result = result.throwExceptionIntoGenerator(g) File "/usr/local/lib/python2.7/dist-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/python/failure.py", line 382, in throwExceptionIntoGenerator return g.throw(self.type, self.value, self.tb) File "/usr/src/stratum-mining-proxy-rev1.0/mining_libs/stratum_listener.py", line 163, in submit result = (yield self._f.rpc('mining.submit', [worker_name, job_id, tail+extranonce2, ntime, nonce])) RemoteServiceException: (-2, u'stale', None)
|
|
|
|
slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 10, 2012, 11:43:24 AM |
|
Interesting error thrown tonight, not sure what to make of it:
It is just an ugly error message about stale share. It doesn't break anything and I'll fix it in upcoming release.
|
|
|
|
dlasher
|
|
October 10, 2012, 05:24:29 PM |
|
Thanks again for the proxy, loving it.. two small feature requests:
1. Fail over/back/load balance/etc for multiple servers.
2. syslog facility/target?
|
|
|
|
dlasher
|
|
October 10, 2012, 07:29:14 PM Last edit: October 12, 2012, 12:15:49 AM by dlasher |
|
Slush: I think I've found a bug, but i have no idea how to identify or fix it. I've been mining with cgminer 2.8.1 + stratum behind proxy, to btcguild for a while.. (and with 2.7 behind proxy before that), and it's been very stable, solid. Once everything smooths out, my miners were all taking 16-diff shares. Last night about 20:30 PST, my reported hashrate dropped to half, and cgminer was only working 4-diff shares. All cgminer derived graphs (cacti/etc) showed no change, but btcguilds page showed the drop: Graphs from btcguild.com btw --- love that pool!I left it alone for a couple hours, thinking it would stablize, and it didn't, so about midnight, I dropped back to cgminer 2.7.6, no stratum, and bypassed the proxy. Voila, hashrate resumes. Let it run that way all night, then shifted back to proxy+stratum again this morning. Hashrate dropped to half, and I'm stuck at 4-diff shares. Talked to Eleuthria at length, initially blaming the btcguild in some way. He's convinced that cgminer/proxy are 'disconnected' somehow on share-diff. The proxy is submitted 2-diff, but handing-out 4-diff shares to my miners. His logs show half my normal rate of submitted shares. At present I'm back to bypassing the proxy, and running a non-stratum version of cgminer. This behavior has survived proxy restart/reboot, cgminer restart/reboot,etc. I'm on latest GIT of both cgminer and mining-proxy. Let me know if there's debug options/versions/etc I can try to identify the issue.
|
|
|
|
Luke-Jr
Legendary
Offline
Activity: 2576
Merit: 1186
|
|
October 10, 2012, 07:37:58 PM |
|
Let me know if there's debug options/versions/etc I can try to identify the issue. What strikes me as useful is testing: - after 2.8+proxy goes bad, restart ONLY cgminer
- cgminer 2.7 with proxy
- cgminer 2.8 without proxy
|
|
|
|
dlasher
|
|
October 10, 2012, 09:42:46 PM |
|
Let me know if there's debug options/versions/etc I can try to identify the issue. What strikes me as useful is testing: - after 2.8+proxy goes bad, restart ONLY cgminer - no change in behavior
- cgminer 2.7 with proxy - didn't test
- cgminer 2.8 without proxy - works fine
My first step this morning was to shut off the proxy, and let cgminer fail down to stratum pools directly, and back to diff=1 shares. Which works fine, because, as it turns out, there's evidently a cgminer bug with 2.8.1, with miners getting stuck, when they're using >DIFF=4. Several users at btcguild have confirmed seeing the issue. https://bitcointalk.org/index.php?topic=28402.msg1263116#msg1263116
|
|
|
|
slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 10, 2012, 10:13:37 PM |
|
dlasher, can you confirm that this bug happen also when proxy is NOT in the chain? I'd like to know if there's something broken in proxy.
|
|
|
|
slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 10, 2012, 10:41:25 PM |
|
Ok, bug in cgminer is confirmed, we're working on the fix. I also double checked the proxy and no related bug has been found.
|
|
|
|
dlasher
|
|
October 10, 2012, 10:55:34 PM |
|
dlasher, can you confirm that this bug happen also when proxy is NOT in the chain? I'd like to know if there's something broken in proxy.
I can't confirm it, because I don't have any single miners fast enough to get above diff=2 without a proxy.
|
|
|
|
-ck
Legendary
Offline
Activity: 4284
Merit: 1645
Ruu \o/
|
|
October 11, 2012, 10:16:53 AM |
|
New version of cgminer, 2.8.2, fixing the variable difficulty bug has been released. Also new to this version of cgminer is support for the stratum commands client.reconnect and client.get_version.
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 11, 2012, 12:08:36 PM |
|
Thank you ckolivas!
|
|
|
|
slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 11, 2012, 03:19:41 PM Last edit: October 11, 2012, 03:33:28 PM by slush |
|
Mining proxy version 1.1.0 has been released. I'll upload windows binaries later today, now I'm on Linux only.
New version has C extension module for speeding up midstate calculations, so it is helpful for big mining operations running getwork miners.
There's also --test parameter, which run performance self test for getworks.
Some numbers (my Intel Atom netbook): Original sources: 10000 getworks generated in 26.482 sec, 377 gw/s C extension: 10000 getworks generated in 3.481 sec, 2872 gw/s
Beagleboard XM (~equivalent of Raspberry Pi): C extension: 10000 getworks generated in 12.270 sec, 814 gw/s
So proxy is now fast enough to run many THash/s mining operation with getwork miners on hardware worth less than 100$.
To compile midstate C extension, just type "make" in midstatec directory. Proxy will auto-detect the module on next run.
Edit: I forgot to mention that all github users have tu run "setup.py develop" or "setup.py install" every time they fetch new version!
|
|
|
|
Zeronic
Member
Offline
Activity: 243
Merit: 10
|
|
October 11, 2012, 09:33:55 PM Last edit: October 12, 2012, 09:50:22 PM by Zeronic |
|
Here is an UpStart Script for the Proxy Application, Tested on Ubuntu 12.04 LTS http://pastebin.com/S2xw5FR1description "Stratum Mining Proxy" author TheSeven start on filesystem stop on runlevel [!2345] start on started stratum stop on stopped stratum oom never expect daemon respawn respawn limit 10 60 # 10 times in 60 seconds kill timeout 120 script # Application Username user=fpga # Installation Directory basedir=/home/$user/stratum # Python Directory python=/usr/bin/python # Script Name script=mining_proxy.py # Stratum Pool Server Address host=stratum.btcguild.com # Stratum Pool Server Port port=9332 # Application PID File pidfile=$basedir/mining-proxy.pid # Don't change anything below here unless you know what you're doing [[ -e $pidfile && ! -d "/proc/$(cat $pidfile)" ]] && rm $pidfile [[ -e $pidfile && "$(cat /proc/$(cat $pidfile)/cmdline)" != $cmd* ]] && rm $pidfile exec start-stop-daemon --start -c $user --chdir $basedir --pidfile $pidfile --startas $python -b -m -- $script -o $host -p $port end script Written by TheSeven
|
|
|
|
-ck
Legendary
Offline
Activity: 4284
Merit: 1645
Ruu \o/
|
|
October 11, 2012, 09:37:04 PM |
|
New version of cgminer, 2.8.2, fixing the variable difficulty bug has been released. Also new to this version of cgminer is support for the stratum commands client.reconnect and client.get_version.
Looks like the windows version is broken still. Sigh Linux users it should work fine.
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
dlasher
|
|
October 11, 2012, 11:36:49 PM Last edit: October 12, 2012, 12:01:21 AM by dlasher |
|
Some numbers (my Intel Atom netbook): Original sources: 10000 getworks generated in 26.482 sec, 377 gw/s C extension: 10000 getworks generated in 3.481 sec, 2872 gw/s
Beagleboard XM (~equivalent of Raspberry Pi): C extension: 10000 getworks generated in 12.270 sec, 814 gw/s
Xeon 3.2 (older) under ESXi/debian6 10000 getworks generated in 1.186 sec, 8430 gw/s Opteron 865 1.8ghz under openVZ/debian6 10000 getworks generated in 0.934 sec, 10709 gw/s Xeon W3505 under Mint12 10000 getworks generated in 0.529 sec, 18886 gw/s
|
|
|
|
dlasher
|
|
October 11, 2012, 11:56:56 PM |
|
Thanks again for the proxy, loving it.. two small feature requests:
1. Fail over/back/load balance/etc for multiple servers.
2. syslog facility/target?
3. Show diff per share submitted in console? 2012-10-11 16:56:14,510 INFO proxy stratum_listener.submit # [91ms] Share from 'miner5' accepted
|
|
|
|
-ck
Legendary
Offline
Activity: 4284
Merit: 1645
Ruu \o/
|
|
October 12, 2012, 10:14:13 AM |
|
New version of cgminer, 2.8.2, fixing the variable difficulty bug has been released. Also new to this version of cgminer is support for the stratum commands client.reconnect and client.get_version.
Looks like the windows version is broken still. Sigh Linux users it should work fine. Fixed in 2.8.3.
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
|
slush (OP)
Legendary
Offline
Activity: 1386
Merit: 1097
|
|
October 12, 2012, 05:00:40 PM |
|
1. Fail over/back/load balance/etc for multiple servers.
Proxy reports all failures to miners, which usually have quite strong support for all kind of failovers and balancing already. If you want to load balance between two stratum pools, just run proxy twice and let miner connect to them. 2. syslog facility/target?
Hm, what do you want to log? Just information about new difficulty? I don't think that logging of accepted shares should go to syslog... 3. Show diff per share submitted in console?
Ok, give me some time.
|
|
|
|
|