rename nLastTimeChanged to nTimeLastSuccessfulStep, set state before updating nTimeLastSuccessfulStep
This commit is contained in:
parent
9908ca7c05
commit
6695a43b4a
@ -470,7 +470,7 @@ void CDarksendPool::SetNull()
|
|||||||
vecEntries.clear();
|
vecEntries.clear();
|
||||||
finalMutableTransaction.vin.clear();
|
finalMutableTransaction.vin.clear();
|
||||||
finalMutableTransaction.vout.clear();
|
finalMutableTransaction.vout.clear();
|
||||||
nLastTimeChanged = GetTimeMillis();
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -562,7 +562,7 @@ void CDarksendPool::CheckPool()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// reset if we're here for 10 seconds
|
// reset if we're here for 10 seconds
|
||||||
if((nState == POOL_STATE_ERROR || nState == POOL_STATE_SUCCESS) && GetTimeMillis() - nLastTimeChanged >= 10000) {
|
if((nState == POOL_STATE_ERROR || nState == POOL_STATE_SUCCESS) && GetTimeMillis() - nTimeLastSuccessfulStep >= 10000) {
|
||||||
LogPrint("privatesend", "CDarksendPool::CheckPool -- timeout, RESETTING\n");
|
LogPrint("privatesend", "CDarksendPool::CheckPool -- timeout, RESETTING\n");
|
||||||
UnlockCoins();
|
UnlockCoins();
|
||||||
SetNull();
|
SetNull();
|
||||||
@ -787,7 +787,7 @@ void CDarksendPool::CheckTimeout()
|
|||||||
|
|
||||||
int nLagTime = fMasterNode ? 0 : 10000; // if we're the client, give the server a few extra seconds before resetting.
|
int nLagTime = fMasterNode ? 0 : 10000; // if we're the client, give the server a few extra seconds before resetting.
|
||||||
int nTimeout = (nState == POOL_STATE_SIGNING) ? PRIVATESEND_SIGNING_TIMEOUT : PRIVATESEND_QUEUE_TIMEOUT;
|
int nTimeout = (nState == POOL_STATE_SIGNING) ? PRIVATESEND_SIGNING_TIMEOUT : PRIVATESEND_QUEUE_TIMEOUT;
|
||||||
bool fTimeout = GetTimeMillis() - nLastTimeChanged >= nTimeout*1000 + nLagTime;
|
bool fTimeout = GetTimeMillis() - nTimeLastSuccessfulStep >= nTimeout*1000 + nLagTime;
|
||||||
|
|
||||||
if(nState != POOL_STATE_IDLE && fTimeout) {
|
if(nState != POOL_STATE_IDLE && fTimeout) {
|
||||||
LogPrint("privatesend", "CDarksendPool::CheckTimeout -- %s timed out (%ds) -- restting\n",
|
LogPrint("privatesend", "CDarksendPool::CheckTimeout -- %s timed out (%ds) -- restting\n",
|
||||||
@ -962,7 +962,7 @@ bool CDarksendPool::AddEntry(const CDarkSendEntry& entryNew, PoolMessage& nMessa
|
|||||||
|
|
||||||
LogPrint("privatesend", "CDarksendPool::AddEntry -- adding entry\n");
|
LogPrint("privatesend", "CDarksendPool::AddEntry -- adding entry\n");
|
||||||
nMessageIDRet = MSG_ENTRIES_ADDED;
|
nMessageIDRet = MSG_ENTRIES_ADDED;
|
||||||
nLastTimeChanged = GetTimeMillis();
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -1090,7 +1090,7 @@ bool CDarksendPool::SendDenominate(const std::vector<CTxIn>& vecTxIn, const std:
|
|||||||
CDarkSendEntry entry(vecTxIn, vecTxOut, txMyCollateral);
|
CDarkSendEntry entry(vecTxIn, vecTxOut, txMyCollateral);
|
||||||
vecEntries.push_back(entry);
|
vecEntries.push_back(entry);
|
||||||
RelayIn(entry);
|
RelayIn(entry);
|
||||||
nLastTimeChanged = GetTimeMillis();
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -1119,13 +1119,13 @@ bool CDarksendPool::UpdatePoolStateOnClient(PoolState nStateNew, int nEntriesCou
|
|||||||
if(nStateNew == POOL_STATE_QUEUE && nSessionID == 0 && nSessionIDNew != 0) {
|
if(nStateNew == POOL_STATE_QUEUE && nSessionID == 0 && nSessionIDNew != 0) {
|
||||||
// new session id should be set only in POOL_STATE_QUEUE state
|
// new session id should be set only in POOL_STATE_QUEUE state
|
||||||
nSessionID = nSessionIDNew;
|
nSessionID = nSessionIDNew;
|
||||||
nLastTimeChanged = GetTimeMillis();
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
LogPrintf("CDarksendPool::UpdatePoolStateOnClient -- set nSessionID to %d\n", nSessionID);
|
LogPrintf("CDarksendPool::UpdatePoolStateOnClient -- set nSessionID to %d\n", nSessionID);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if(nStateNew == POOL_STATE_ACCEPTING_ENTRIES && nEntriesCount != nEntriesCountNew) {
|
else if(nStateNew == POOL_STATE_ACCEPTING_ENTRIES && nEntriesCount != nEntriesCountNew) {
|
||||||
nEntriesCount = nEntriesCountNew;
|
nEntriesCount = nEntriesCountNew;
|
||||||
nLastTimeChanged = GetTimeMillis();
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
fLastEntryAccepted = true;
|
fLastEntryAccepted = true;
|
||||||
LogPrintf("CDarksendPool::UpdatePoolStateOnClient -- new entry accepted!\n");
|
LogPrintf("CDarksendPool::UpdatePoolStateOnClient -- new entry accepted!\n");
|
||||||
return true;
|
return true;
|
||||||
@ -1219,8 +1219,8 @@ bool CDarksendPool::SignFinalTransaction(const CTransaction& finalTransactionNew
|
|||||||
// push all of our signatures to the Masternode
|
// push all of our signatures to the Masternode
|
||||||
LogPrintf("CDarksendPool::SignFinalTransaction -- pushing sigs to the masternode, finalMutableTransaction=%s", finalMutableTransaction.ToString());
|
LogPrintf("CDarksendPool::SignFinalTransaction -- pushing sigs to the masternode, finalMutableTransaction=%s", finalMutableTransaction.ToString());
|
||||||
pnode->PushMessage(NetMsgType::DSSIGNFINALTX, sigs);
|
pnode->PushMessage(NetMsgType::DSSIGNFINALTX, sigs);
|
||||||
nLastTimeChanged = GetTimeMillis();
|
|
||||||
SetState(POOL_STATE_SIGNING);
|
SetState(POOL_STATE_SIGNING);
|
||||||
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -1528,8 +1528,8 @@ bool CDarksendPool::DoAutomaticDenominating(bool fDryRun)
|
|||||||
LogPrintf("CDarksendPool::DoAutomaticDenominating -- connected (from queue), sending DSACCEPT: nSessionDenom: %d (%s), addr=%s\n",
|
LogPrintf("CDarksendPool::DoAutomaticDenominating -- connected (from queue), sending DSACCEPT: nSessionDenom: %d (%s), addr=%s\n",
|
||||||
nSessionDenom, GetDenominationsToString(nSessionDenom), pnode->addr.ToString());
|
nSessionDenom, GetDenominationsToString(nSessionDenom), pnode->addr.ToString());
|
||||||
strAutoDenomResult = _("Mixing in progress...");
|
strAutoDenomResult = _("Mixing in progress...");
|
||||||
nLastTimeChanged = GetTimeMillis();
|
|
||||||
SetState(POOL_STATE_QUEUE);
|
SetState(POOL_STATE_QUEUE);
|
||||||
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
LogPrintf("CDarksendPool::DoAutomaticDenominating -- can't connect, addr=%s\n", pmn->addr.ToString());
|
LogPrintf("CDarksendPool::DoAutomaticDenominating -- can't connect, addr=%s\n", pmn->addr.ToString());
|
||||||
@ -1581,8 +1581,8 @@ bool CDarksendPool::DoAutomaticDenominating(bool fDryRun)
|
|||||||
LogPrintf("CDarksendPool::DoAutomaticDenominating -- connected, sending DSACCEPT, nSessionDenom: %d (%s)\n",
|
LogPrintf("CDarksendPool::DoAutomaticDenominating -- connected, sending DSACCEPT, nSessionDenom: %d (%s)\n",
|
||||||
nSessionDenom, GetDenominationsToString(nSessionDenom));
|
nSessionDenom, GetDenominationsToString(nSessionDenom));
|
||||||
strAutoDenomResult = _("Mixing in progress...");
|
strAutoDenomResult = _("Mixing in progress...");
|
||||||
nLastTimeChanged = GetTimeMillis();
|
|
||||||
SetState(POOL_STATE_QUEUE);
|
SetState(POOL_STATE_QUEUE);
|
||||||
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
LogPrintf("CDarksendPool::DoAutomaticDenominating -- can't connect, addr=%s\n", pmn->addr.ToString());
|
LogPrintf("CDarksendPool::DoAutomaticDenominating -- can't connect, addr=%s\n", pmn->addr.ToString());
|
||||||
@ -2014,7 +2014,9 @@ bool CDarksendPool::CreateNewSession(int nDenom, CTransaction txCollateral, Pool
|
|||||||
nMessageIDRet = MSG_NOERR;
|
nMessageIDRet = MSG_NOERR;
|
||||||
nSessionID = GetInsecureRand(999999)+1;
|
nSessionID = GetInsecureRand(999999)+1;
|
||||||
nSessionDenom = nDenom;
|
nSessionDenom = nDenom;
|
||||||
nLastTimeChanged = GetTimeMillis();
|
|
||||||
|
SetState(POOL_STATE_QUEUE);
|
||||||
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
|
|
||||||
if(!fUnitTest) {
|
if(!fUnitTest) {
|
||||||
//broadcast that I'm accepting entries, only if it's the first entry through
|
//broadcast that I'm accepting entries, only if it's the first entry through
|
||||||
@ -2025,7 +2027,6 @@ bool CDarksendPool::CreateNewSession(int nDenom, CTransaction txCollateral, Pool
|
|||||||
vecDarksendQueue.push_back(dsq);
|
vecDarksendQueue.push_back(dsq);
|
||||||
}
|
}
|
||||||
|
|
||||||
SetState(POOL_STATE_QUEUE);
|
|
||||||
vecSessionCollaterals.push_back(txCollateral);
|
vecSessionCollaterals.push_back(txCollateral);
|
||||||
LogPrintf("CDarksendPool::CreateNewSession -- new session created, nSessionID: %d nSessionDenom: %d (%s) vecSessionCollaterals.size(): %d\n",
|
LogPrintf("CDarksendPool::CreateNewSession -- new session created, nSessionID: %d nSessionDenom: %d (%s) vecSessionCollaterals.size(): %d\n",
|
||||||
nSessionID, nSessionDenom, GetDenominationsToString(nSessionDenom), vecSessionCollaterals.size());
|
nSessionID, nSessionDenom, GetDenominationsToString(nSessionDenom), vecSessionCollaterals.size());
|
||||||
@ -2058,7 +2059,7 @@ bool CDarksendPool::AddUserToExistingSession(int nDenom, CTransaction txCollater
|
|||||||
// count new user as accepted to an existing session
|
// count new user as accepted to an existing session
|
||||||
|
|
||||||
nMessageIDRet = MSG_NOERR;
|
nMessageIDRet = MSG_NOERR;
|
||||||
nLastTimeChanged = GetTimeMillis();
|
nTimeLastSuccessfulStep = GetTimeMillis();
|
||||||
vecSessionCollaterals.push_back(txCollateral);
|
vecSessionCollaterals.push_back(txCollateral);
|
||||||
|
|
||||||
LogPrintf("CDarksendPool::AddUserToExistingSession -- new user accepted, nSessionID: %d nSessionDenom: %d (%s) vecSessionCollaterals.size(): %d\n",
|
LogPrintf("CDarksendPool::AddUserToExistingSession -- new user accepted, nSessionID: %d nSessionDenom: %d (%s) vecSessionCollaterals.size(): %d\n",
|
||||||
|
@ -314,7 +314,7 @@ private:
|
|||||||
std::vector<CDarkSendEntry> vecEntries; // Masternode/clients entries
|
std::vector<CDarkSendEntry> vecEntries; // Masternode/clients entries
|
||||||
|
|
||||||
PoolState nState; // should be one of the POOL_STATE_XXX values
|
PoolState nState; // should be one of the POOL_STATE_XXX values
|
||||||
int64_t nLastTimeChanged; // last time the 'state' changed, in UTC milliseconds
|
int64_t nTimeLastSuccessfulStep; // the time when last successful mixing step was performed, in UTC milliseconds
|
||||||
|
|
||||||
int nCachedLastSuccessBlock;
|
int nCachedLastSuccessBlock;
|
||||||
int nMinBlockSpacing; //required blocks between mixes
|
int nMinBlockSpacing; //required blocks between mixes
|
||||||
|
Loading…
Reference in New Issue
Block a user