Improve peer connectivity, UI responsiveness, and add auto-bootstrap
Peer connectivity (small network optimizations): - Reduce hardcoded seed fallback delay from 30s to 10s - Reduce peer retry interval from 600s to 120s - Lower staking minimum peers from 3 to 1 - Relay addr messages to all connected peers instead of just 2 UI responsiveness: - Add progress reporting to ScanForWalletTransactions (every 10K blocks) - Use TRY_LOCK in WalletModel::pollBalanceChanged to avoid blocking UI - Use TRY_LOCK in TransactionTablePriv::refreshWallet with retry Auto-bootstrap: - Add bootstrap.h/cpp with HTTP download via boost::asio - On first run, prompt user to download blockchain snapshot from bootstrap.cryptographic-triangles.org directly into data directory - Downloads filelist.txt manifest then each file with progress dialog - Falls back to IP 194.233.88.206 if DNS fails - Gracefully continues to P2P sync if bootstrap unavailable Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -71,7 +71,13 @@ public:
|
||||
OutputDebugStringF("refreshWallet\n");
|
||||
cachedWallet.clear();
|
||||
{
|
||||
LOCK(wallet->cs_wallet);
|
||||
TRY_LOCK(wallet->cs_wallet, lockWallet);
|
||||
if(!lockWallet)
|
||||
{
|
||||
// Lock busy (block processing), retry in 500ms
|
||||
QTimer::singleShot(500, parent, SLOT(refreshWallet()));
|
||||
return;
|
||||
}
|
||||
for(std::map<uint256, CWalletTx>::iterator it = wallet->mapWallet.begin(); it != wallet->mapWallet.end(); ++it)
|
||||
{
|
||||
if(TransactionRecord::showTransaction(it->second))
|
||||
|
||||
Reference in New Issue
Block a user