Browse Source

test

release/v0.1
jl777 9 years ago
parent
commit
745e5ccc48
  1. 43
      iguana/iguana777.c
  2. 4
      iguana/iguana_ramchain.c
  3. 2
      iguana/iguana_recv.c

43
iguana/iguana777.c

@ -593,28 +593,31 @@ int32_t iguana_coin_mainiter(struct supernet_info *myinfo,struct iguana_info *co
*numpeersp += coin->peers->numranked; *numpeersp += coin->peers->numranked;
if ( 0 && (rand() % 10) == 0 ) if ( 0 && (rand() % 10) == 0 )
printf("%s main.%u vs %u, svs %u %d vs %d\n",coin->symbol,(uint32_t)time(NULL),coin->startutc+10,coin->spendvectorsaved ,coin->blocks.hwmchain.height/coin->chain->bundlesize,(coin->longestchain-coin->minconfirms)/coin->chain->bundlesize); printf("%s main.%u vs %u, svs %u %d vs %d\n",coin->symbol,(uint32_t)time(NULL),coin->startutc+10,coin->spendvectorsaved ,coin->blocks.hwmchain.height/coin->chain->bundlesize,(coin->longestchain-coin->minconfirms)/coin->chain->bundlesize);
if ( time(NULL) > coin->startutc+60 && coin->blocks.hwmchain.height/coin->chain->bundlesize >= (coin->longestchain-coin->chain->bundlesize)/coin->chain->bundlesize ) if ( time(NULL) > coin->startutc+60 )
{ {
n = coin->bundlescount-1; n = coin->bundlescount-1;
printf("%s n.%d emitfinished.%d coin->spendvectorsaved %d\n",coin->symbol,n,iguana_emitfinished(myinfo,coin,1),coin->spendvectorsaved); if ( coin->blocks.hwmchain.height/coin->chain->bundlesize >= (coin->longestchain-coin->chain->bundlesize)/coin->chain->bundlesize )
if ( iguana_emitfinished(myinfo,coin,1) >= n )
{ {
if ( coin->PREFETCHLAG >= 0 && coin->fastfind == 0 ) printf("%s n.%d emitfinished.%d coin->spendvectorsaved %d\n",coin->symbol,n,iguana_emitfinished(myinfo,coin,1),coin->spendvectorsaved);
if ( iguana_emitfinished(myinfo,coin,1) >= n )
{ {
for (j=0; j<n; j++) if ( coin->PREFETCHLAG >= 0 && coin->fastfind == 0 )
if ( coin->bundles[j] != 0 ) {
iguana_alloctxbits(coin,&coin->bundles[j]->ramchain); for (j=0; j<n; j++)
sleep(3); if ( coin->bundles[j] != 0 )
} iguana_alloctxbits(coin,&coin->bundles[j]->ramchain);
if ( iguana_validated(coin) < n || iguana_utxofinished(coin) < n || iguana_balancefinished(coin) < n ) sleep(3);
{ }
coin->spendvectorsaved = 1; if ( iguana_validated(coin) < n || iguana_utxofinished(coin) < n || iguana_balancefinished(coin) < n )
printf("update volatile data, need.%d vs utxo.%d balances.%d validated.%d\n",n,iguana_utxofinished(coin),iguana_balancefinished(coin),iguana_validated(coin)); {
} coin->spendvectorsaved = 1;
else printf("update volatile data, need.%d vs utxo.%d balances.%d validated.%d\n",n,iguana_utxofinished(coin),iguana_balancefinished(coin),iguana_validated(coin));
{ }
coin->spendvectorsaved = (uint32_t)time(NULL); else
printf("already done UTXOGEN (%d %d %d) n.%d\n",iguana_utxofinished(coin),iguana_validated(coin),iguana_balancefinished(coin),n); {
coin->spendvectorsaved = (uint32_t)time(NULL);
printf("already done UTXOGEN (%d %d %d) n.%d\n",iguana_utxofinished(coin),iguana_validated(coin),iguana_balancefinished(coin),n);
}
} }
} }
else else
@ -631,7 +634,7 @@ int32_t iguana_coin_mainiter(struct supernet_info *myinfo,struct iguana_info *co
printf("bundleQ.[%d]\n",j); printf("bundleQ.[%d]\n",j);
iguana_bundleQ(myinfo,coin,bp,1000); iguana_bundleQ(myinfo,coin,bp,1000);
} }
coin->spendvectorsaved = 1; //coin->spendvectorsaved = 1;
} }
} }
if ( (bp= coin->current) != 0 && coin->stucktime != 0 && coin->isRT == 0 && coin->RTheight == 0 && (time(NULL) - coin->stucktime) > coin->MAXSTUCKTIME ) if ( (bp= coin->current) != 0 && coin->stucktime != 0 && coin->isRT == 0 && coin->RTheight == 0 && (time(NULL) - coin->stucktime) > coin->MAXSTUCKTIME )
@ -988,7 +991,7 @@ struct iguana_info *iguana_setcoin(char *symbol,void *launched,int32_t maxpeers,
if ( coin->MAXMEM == 0 ) if ( coin->MAXMEM == 0 )
coin->MAXMEM = IGUANA_DEFAULTRAM; coin->MAXMEM = IGUANA_DEFAULTRAM;
coin->MAXMEM *= (1024L * 1024 * 1024); coin->MAXMEM *= (1024L * 1024 * 1024);
coin->enableCACHE = (strcmp("BTCD",coin->symbol) == 0); coin->enableCACHE = 0;//(strcmp("BTCD",coin->symbol) == 0);
if ( jobj(json,"cache") != 0 ) if ( jobj(json,"cache") != 0 )
coin->enableCACHE = juint(json,"cache"); coin->enableCACHE = juint(json,"cache");
if ( (coin->polltimeout= juint(json,"poll")) <= 0 ) if ( (coin->polltimeout= juint(json,"poll")) <= 0 )

4
iguana/iguana_ramchain.c

@ -2056,8 +2056,10 @@ void iguana_blockdelete(struct iguana_info *coin,bits256 hash2,int32_t i)
if ( fname[0] != 0 ) if ( fname[0] != 0 )
{ {
OS_removefile(fname,0); OS_removefile(fname,0);
#ifndef WIN32
strcat(fname,".tmp"); strcat(fname,".tmp");
OS_removefile(fname,0); OS_removefile(fname,0);
#endif
} }
} }
@ -2143,12 +2145,14 @@ void *iguana_bundlefile(struct iguana_info *coin,char *fname,long *filesizep,str
else else
{ {
fclose(fp); fclose(fp);
#ifndef WIN32
if ( renameflag != 0 ) if ( renameflag != 0 )
{ {
sprintf(renamed,"%s.tmp",fname); sprintf(renamed,"%s.tmp",fname);
OS_renamefile(fname,renamed); OS_renamefile(fname,renamed);
strcpy(fname,renamed); strcpy(fname,renamed);
} }
#endif
if ( (ptr= OS_mapfile(fname,filesizep,0)) == 0 ) if ( (ptr= OS_mapfile(fname,filesizep,0)) == 0 )
{ {
printf("error mapping.(%s) bundlei.%d\n",fname,bundlei); printf("error mapping.(%s) bundlei.%d\n",fname,bundlei);

2
iguana/iguana_recv.c

@ -727,7 +727,7 @@ int32_t iguana_bundlehashadd(struct iguana_info *coin,struct iguana_bundle *bp,i
size = sizeof(blockR); size = sizeof(blockR);
iguana_ramchain_free(coin,&blockR,1); iguana_ramchain_free(coin,&blockR,1);
} }
else //if ( bp->hdrsi > 0 && bp->hdrsi == coin->longestchain/bp->n ) else if ( bp->hdrsi > 0 && bp->hdrsi == coin->longestchain/bp->n )
{ {
checki = iguana_peerfname(coin,&hdrsi,GLOBAL_TMPDIR,fname,0,block->RO.hash2,zero,1,0); checki = iguana_peerfname(coin,&hdrsi,GLOBAL_TMPDIR,fname,0,block->RO.hash2,zero,1,0);
if ( (fp= fopen(fname,"rb")) != 0 ) if ( (fp= fopen(fname,"rb")) != 0 )

Loading…
Cancel
Save