From 2935ca5a76e05a173259d589310b306ecbafd7a8 Mon Sep 17 00:00:00 2001 From: Forrest Voight Date: Thu, 27 Jun 2013 16:35:16 -0400 Subject: [PATCH] change SHARE_PERIOD and SPREAD to new values on switch to new share implementation --- p2pool/data.py | 8 ++++---- p2pool/networks.py | 12 ++++++++++++ p2pool/test/test_node.py | 2 ++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/p2pool/data.py b/p2pool/data.py index e5a4818..29fbfc6 100644 --- a/p2pool/data.py +++ b/p2pool/data.py @@ -117,7 +117,7 @@ class NewShare(object): pre_target3 = net.MAX_TARGET else: attempts_per_second = get_pool_attempts_per_second(tracker, share_data['previous_share_hash'], net.TARGET_LOOKBEHIND, min_work=True, integer=True) - pre_target = 2**256//(net.SHARE_PERIOD*attempts_per_second) - 1 if attempts_per_second else 2**256-1 + pre_target = 2**256//(net.NEW_SHARE_PERIOD*attempts_per_second) - 1 if attempts_per_second else 2**256-1 pre_target2 = math.clip(pre_target, (previous_share.max_target*9//10, previous_share.max_target*11//10)) pre_target3 = math.clip(pre_target2, (net.MIN_TARGET, net.MAX_TARGET)) max_bits = bitcoin_data.FloatingInteger.from_target_upper_bound(pre_target3) @@ -159,7 +159,7 @@ class NewShare(object): weights, total_weight, donation_weight = tracker.get_cumulative_weights(previous_share.share_data['previous_share_hash'] if previous_share is not None else None, min(height, net.REAL_CHAIN_LENGTH-1), - 65535*net.SPREAD*bitcoin_data.target_to_average_attempts(block_target), + 65535*net.NEW_SPREAD*bitcoin_data.target_to_average_attempts(block_target), ) assert total_weight == sum(weights.itervalues()) + donation_weight, (total_weight, sum(weights.itervalues()) + donation_weight) @@ -179,8 +179,8 @@ class NewShare(object): max_bits=max_bits, bits=bits, timestamp=math.clip(desired_timestamp, ( - (previous_share.timestamp + net.SHARE_PERIOD) - (net.SHARE_PERIOD - 1), # = previous_share.timestamp + 1 - (previous_share.timestamp + net.SHARE_PERIOD) + (net.SHARE_PERIOD - 1), + (previous_share.timestamp + net.NEW_SHARE_PERIOD) - (net.NEW_SHARE_PERIOD - 1), # = previous_share.timestamp + 1 + (previous_share.timestamp + net.NEW_SHARE_PERIOD) + (net.NEW_SHARE_PERIOD - 1), )) if previous_share is not None else desired_timestamp, new_transaction_hashes=new_transaction_hashes, transaction_hash_refs=transaction_hash_refs, diff --git a/p2pool/networks.py b/p2pool/networks.py index 82bc35f..2a32e07 100644 --- a/p2pool/networks.py +++ b/p2pool/networks.py @@ -11,10 +11,12 @@ nets = dict( bitcoin=math.Object( PARENT=networks.nets['bitcoin'], SHARE_PERIOD=10, # seconds + NEW_SHARE_PERIOD=30, # seconds CHAIN_LENGTH=24*60*60//10, # shares REAL_CHAIN_LENGTH=24*60*60//10, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=3, # blocks + NEW_SPREAD=3, # blocks IDENTIFIER='fc70035c7a81bc6f'.decode('hex'), PREFIX='2472ef181efcd37b'.decode('hex'), P2P_PORT=9333, @@ -29,10 +31,12 @@ nets = dict( bitcoin_testnet=math.Object( PARENT=networks.nets['bitcoin_testnet'], SHARE_PERIOD=10, # seconds + NEW_SHARE_PERIOD=30, # seconds CHAIN_LENGTH=60*60//10, # shares REAL_CHAIN_LENGTH=60*60//10, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=3, # blocks + NEW_SPREAD=3, # blocks IDENTIFIER='5fc2be2d4f0d6bfb'.decode('hex'), PREFIX='3f6057a15036f441'.decode('hex'), P2P_PORT=19333, @@ -48,10 +52,12 @@ nets = dict( litecoin=math.Object( PARENT=networks.nets['litecoin'], SHARE_PERIOD=10, # seconds + NEW_SHARE_PERIOD=15, # seconds CHAIN_LENGTH=24*60*60//10, # shares REAL_CHAIN_LENGTH=24*60*60//10, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=12, # blocks + NEW_SPREAD=3, # blocks IDENTIFIER='e037d5b8c6923410'.decode('hex'), PREFIX='7208c1a53ef629b0'.decode('hex'), P2P_PORT=9338, @@ -66,10 +72,12 @@ nets = dict( litecoin_testnet=math.Object( PARENT=networks.nets['litecoin_testnet'], SHARE_PERIOD=3, # seconds + NEW_SHARE_PERIOD=4, # seconds CHAIN_LENGTH=20*60//3, # shares REAL_CHAIN_LENGTH=20*60//3, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=12, # blocks + NEW_SPREAD=3, # blocks IDENTIFIER='cca5e24ec6408b1e'.decode('hex'), PREFIX='ad9614f6466a39cf'.decode('hex'), P2P_PORT=19338, @@ -85,10 +93,12 @@ nets = dict( terracoin=math.Object( PARENT=networks.nets['terracoin'], SHARE_PERIOD=30, # seconds + NEW_SHARE_PERIOD=30, # seconds CHAIN_LENGTH=24*60*60//30, # shares REAL_CHAIN_LENGTH=24*60*60//30, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=15, # blocks + NEW_SPREAD=15, # blocks IDENTIFIER='a41b2356a1b7d35e'.decode('hex'), PREFIX='5623b62178d2b8a3'.decode('hex'), P2P_PORT=9323, @@ -103,10 +113,12 @@ nets = dict( terracoin_testnet=math.Object( PARENT=networks.nets['terracoin_testnet'], SHARE_PERIOD=30, # seconds + NEW_SHARE_PERIOD=30, # seconds CHAIN_LENGTH=60*60//30, # shares REAL_CHAIN_LENGTH=60*60//30, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=15, # blocks + NEW_SPREAD=15, # blocks IDENTIFIER='b41b2356a5b7d35d'.decode('hex'), PREFIX='1623b92172d2b8a2'.decode('hex'), P2P_PORT=19323, diff --git a/p2pool/test/test_node.py b/p2pool/test/test_node.py index d1698bc..583c812 100644 --- a/p2pool/test/test_node.py +++ b/p2pool/test/test_node.py @@ -126,10 +126,12 @@ class mm_provider(object): mynet = math.Object( PARENT=networks.nets['litecoin_testnet'], SHARE_PERIOD=3, # seconds + NEW_SHARE_PERIOD=5, # seconds CHAIN_LENGTH=20*60//3, # shares REAL_CHAIN_LENGTH=20*60//3, # shares TARGET_LOOKBEHIND=200, # shares SPREAD=12, # blocks + NEW_SPREAD=3, # blocks IDENTIFIER='cca5e24ec6408b1e'.decode('hex'), PREFIX='ad9614f6466a39cf'.decode('hex'), P2P_PORT=19338, -- 1.7.1