p2pool-rav
p2pool-rav copied to clipboard
Globalcoin Request/Addition
Could we add Global coin to the networks.py & bitcoin networks.py of the Rav build. Not sure what will be needed to make this CatmanSPC p2pool object work in your build.
globalcoin=math.Object( PARENT=networks.nets['globalcoin'], SHARE_PERIOD=10, # seconds target spacing CHAIN_LENGTH=24_60_60//10, # shares REAL_CHAIN_LENGTH=24_60_60//10, # shares TARGET_LOOKBEHIND=200, # shares coinbase maturity SPREAD=45, # blocks IDENTIFIER='5F0183D62F698832'.decode('hex'), PREFIX='52F8CF5955E02234'.decode('hex'), P2P_PORT=23660, MIN_TARGET=0, MAX_TARGET=2256//220 - 1, PERSIST=False, WORKER_PORT=8860, BOOTSTRAP_ADDRS='xpool.net us-east1.cryptovein.com'.split(' '), ANNOUNCE_CHANNEL='#p2pool-glc', VERSION_CHECK=lambda v: True, ),
globalcoin=math.Object(
P2P_PREFIX='fcd9b7dd'.decode('hex'),
P2P_PORT=55789,
ADDRESS_VERSION=15,
RPC_PORT=55788,
RPC_CHECK=defer.inlineCallbacks(lambda bitcoind: defer.returnValue(
'globalcoin address' in (yield bitcoind.rpc_help()) and
not (yield bitcoind.rpc_getinfo())['testnet']
)),
SUBSIDY_FUNC=lambda height: 100*100000000 >> (height + 1)//288400,
POW_FUNC=lambda data: pack.IntType(256).unpack(__import__('ltc_scrypt').getPoWHash(data)),
BLOCK_PERIOD=40, # s targetspacing
SYMBOL='GLC',
CONF_FILE_FUNC=lambda: os.path.join(os.path.join(os.environ['APPDATA'], 'globalcoin') if platform.system() == 'Windows' else os.path.expanduser('~/Library/Application Support/globalcoin/') if platform.system() == 'Darwin' else os.path.expanduser('~/.globalcoin'), 'globalcoin.conf'),
BLOCK_EXPLORER_URL_PREFIX='http://blockchainx.com/block/',
ADDRESS_EXPLORER_URL_PREFIX='http://blockchainx.com/address/',
TX_EXPLORER_URL_PREFIX='http://blockchainx.com/tx/',
SANE_TARGET_RANGE=(2**256//1000000000 - 1, 2**256//1000 - 1),
DUMB_SCRYPT_DIFF=2**16,
DUST_THRESHOLD=1e8,
),
This coin have only 40s block time, so if we take 10s share time 1/4 will be doa all the time. We need 5s share target. Do we need 24h share chain? 12h would be enough to not get too many "jumpers" Also target_lookbehind is way too big, when miners win join/leave share diff will not react fast as it should.
So more like this? Also, if my share_period, share_chain or target_lookbehind is different then the other P2Pool nodes wont I get errors if the other nodes have Cartman's settings and not the ones below. I would have to start a new sharechain with these params correct?
globalcoin=math.Object( PARENT=networks.nets['globalcoin'], SHARE_PERIOD=5, # seconds target spacing CHAIN_LENGTH=12_60_60//10, # shares REAL_CHAIN_LENGTH=12_60_60//10, # shares TARGET_LOOKBEHIND=100, # shares coinbase maturity SPREAD=45, # blocks IDENTIFIER='5F0183D62F698832'.decode('hex'), PREFIX='52F8CF5955E02234'.decode('hex'), P2P_PORT=23660, MIN_TARGET=0, MAX_TARGET=2256//220 - 1, PERSIST=False, WORKER_PORT=8860, BOOTSTRAP_ADDRS='xpool.net us-east1.cryptovein.com'.split(' '), ANNOUNCE_CHANNEL='#p2pool-glc', VERSION_CHECK=lambda v: True, ),
Me and Rav3nPL obviously disagree on a few things :)
As you can see at http://xpool.net:8860/ it is not getting 1/4 DOA (1.86% at the moment). From experience and closely watching large spikes in hash coming and going a spread of 200 is fine. 24 hours allows a larger window for miners to find shares and not be in the dogecoin p2pool situation.
Discussion: https://bitcointalk.org/index.php?topic=457574
Currently I'm using your settings in Rav's build and it looks to be working fine for Globalcoin. I'll see what the situation is after I receive some coin of course. Should I expect errors by using your settings in Rav's build Cartman?
No, we both build off the latest 13.4 from forrestv