Browse Source

test

release/v0.1
jl777 9 years ago
parent
commit
8dd26a6897
  1. 2
      iguana/iguana_init.c
  2. 7
      iguana/iguana_recv.c
  3. 10
      iguana/iguana_unspents.c

2
iguana/iguana_init.c

@ -272,9 +272,9 @@ void iguana_parseline(struct iguana_info *coin,int32_t iter,FILE *fp)
lastbundle = hash2;
if ( (block= iguana_blockfind("parse",coin,hash2)) != 0 )
block->mainchain = 1, block->height = height;
bp->emitfinish = (uint32_t)time(NULL) + 1;
if ( iguana_bundleload(coin,&bp->ramchain,bp,2) != 0 )
{
bp->emitfinish = (uint32_t)time(NULL) + 1;
if ( coin->current != 0 && coin->current->hdrsi+1 == bp->hdrsi )
coin->current = bp;
}

7
iguana/iguana_recv.c

@ -1429,14 +1429,15 @@ int32_t iguana_processrecv(struct iguana_info *coin) // single threaded
flag += iguana_processrecvQ(coin,&newhwm);
flag += iguana_reqblocks(coin);
flag += iguana_reqhdrs(coin);
coin->RTramchain_busy = 1;
if ( time(NULL) > coin->laststats )
{
coin->RTramchain_busy = 1;
flag += (iguana_realtime_update(coin) > 0);
coin->RTramchain_busy = (coin->RTgenesis == 0 || queue_size(&balancesQ) != 0);
iguana_bundlestats(coin,str,IGUANA_DEFAULTLAG);
coin->laststats = (uint32_t)time(NULL);
}
else if ( coin->RTheight < coin->longestchain-3 )
flag += (iguana_realtime_update(coin) > 0);
coin->RTramchain_busy = (coin->RTgenesis == 0 || queue_size(&balancesQ) != 0);
iguana_jsonQ();
if ( hwmheight != coin->blocks.hwmchain.height )
flag = 1;

10
iguana/iguana_unspents.c

@ -1402,8 +1402,14 @@ int32_t iguana_realtime_update(struct iguana_info *coin)
if ( iguana_ramchainfile(coin,dest,&blockR,bp,bundlei,block) == 0 )
{
//iguana_RTramchainfree(coin);
char str[65]; printf("RT error [%d:%d] %s %p\n",bp->hdrsi,bundlei,bits256_str(str,bp->hashes[bundlei]),block);
iguana_blockQ("RT",coin,bp,bundlei,bp->hashes[bundlei],1);
if ( bits256_nonz(bp->hashes[bundlei]) != 0 )
{
uint8_t serialized[512]; int32_t len; struct iguana_peer *addr;
char str[65]; printf("RT error [%d:%d] %s %p\n",bp->hdrsi,bundlei,bits256_str(str,bp->hashes[bundlei]),block);
addr = coin->peers.ranked[rand() % 8];
if ( addr != 0 && (len= iguana_getdata(coin,serialized,MSG_BLOCK,&bp->hashes[bundlei],1)) > 0 )
iguana_send(coin,addr,serialized,len);
}
return(-1);
} else iguana_ramchain_free(coin,&blockR,1);
B[bundlei] = block->RO;

Loading…
Cancel
Save