X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=p2pool%2Fmain.py;h=a9ae47008a6ded6e47083fc1a7e0cdb1a70ee71d;hb=0a3493d6873cfef4fb189d39e64dfbc6e162e2a7;hp=cbb37693f1ff5bfa51502007940aefb410fd95c4;hpb=81a36131cf76d3c58a6d81278ff6fd96c0e02259;p=p2pool.git diff --git a/p2pool/main.py b/p2pool/main.py index cbb3769..a9ae470 100644 --- a/p2pool/main.py +++ b/p2pool/main.py @@ -14,7 +14,7 @@ import urlparse if '--iocp' in sys.argv: from twisted.internet import iocpreactor iocpreactor.install() -from twisted.internet import defer, reactor, protocol, task, tcp +from twisted.internet import defer, reactor, protocol, tcp from twisted.web import server from twisted.python import log from nattraverso import portmapper, ipdiscover @@ -58,7 +58,7 @@ def main(args, net, datadir_path, merged_urls, worker_endpoint): errors = (yield deferral.retry('Error while calling getmininginfo:')(bitcoind.rpc_getmininginfo)())['errors'] bitcoind_warning_var.set(errors if errors != '' else None) yield poll_warnings() - task.LoopingCall(poll_warnings).start(20*60) + deferral.RobustLoopingCall(poll_warnings).start(20*60) print ' ...success!' print ' Current block hash: %x' % (temp_work['previous_block'],) @@ -136,7 +136,7 @@ def main(args, net, datadir_path, merged_urls, worker_endpoint): ss.add_share(share) if share.hash in node.tracker.verified.items: ss.add_verified_hash(share.hash) - task.LoopingCall(save_shares).start(60) + deferral.RobustLoopingCall(save_shares).start(60) print ' ...success!' print @@ -186,7 +186,7 @@ def main(args, net, datadir_path, merged_urls, worker_endpoint): def save_addrs(): with open(os.path.join(datadir_path, 'addrs'), 'wb') as f: f.write(json.dumps(node.p2p_node.addr_store.items())) - task.LoopingCall(save_addrs).start(60) + deferral.RobustLoopingCall(save_addrs).start(60) print ' ...success!' print @@ -247,7 +247,7 @@ def main(args, net, datadir_path, merged_urls, worker_endpoint): sys.stderr.write, 'Watchdog timer went off at:\n' + ''.join(traceback.format_stack()) )) signal.siginterrupt(signal.SIGALRM, False) - task.LoopingCall(signal.alarm, 30).start(1) + deferral.RobustLoopingCall(signal.alarm, 30).start(1) if args.irc_announce: from twisted.words.protocols import irc @@ -311,11 +311,12 @@ def main(args, net, datadir_path, merged_urls, worker_endpoint): datums, dt = wb.local_rate_monitor.get_datums_in_last() my_att_s = sum(datum['work']/dt for datum in datums) + my_shares_per_s = sum(datum['work']/dt/bitcoin_data.target_to_average_attempts(datum['share_target']) for datum in datums) this_str += '\n Local: %sH/s in last %s Local dead on arrival: %s Expected time to share: %s' % ( math.format(int(my_att_s)), math.format_dt(dt), math.format_binomial_conf(sum(1 for datum in datums if datum['dead']), len(datums), 0.95), - math.format_dt(2**256 / node.tracker.items[node.best_share_var.value].max_target / my_att_s) if my_att_s and node.best_share_var.value else '???', + math.format_dt(1/my_shares_per_s) if my_shares_per_s else '???', ) if height > 2: @@ -542,7 +543,7 @@ def run(): logfile.reopen() print '...and reopened %r after catching SIGUSR1.' % (args.logfile,) signal.signal(signal.SIGUSR1, sigusr1) - task.LoopingCall(logfile.reopen).start(5) + deferral.RobustLoopingCall(logfile.reopen).start(5) class ErrorReporter(object): def __init__(self):