Skip to content
2 changes: 1 addition & 1 deletion share/setup.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ CRCCheck on
XPStyle on
BrandingText " "
ShowInstDetails show
VIProductVersion 0.6.0.5
VIProductVersion 0.6.0.6
VIAddVersionKey ProductName Bitcoin
VIAddVersionKey ProductVersion "${VERSION}"
VIAddVersionKey CompanyName "${COMPANY}"
Expand Down
52 changes: 26 additions & 26 deletions src/db.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ static bool fDbEnvInit = false;
DbEnv dbenv(0);
static map<string, int> mapFileUseCount;
static map<string, Db*> mapDb;
static int64 nTxn = 0;

static void EnvShutdown()
{
Expand Down Expand Up @@ -87,12 +88,13 @@ CDB::CDB(const char* pszFile, const char* pszMode) : pdb(NULL)
int nDbCache = GetArg("-dbcache", 25);
dbenv.set_lg_dir(strLogDir.c_str());
dbenv.set_cachesize(nDbCache / 1024, (nDbCache % 1024)*1048576, 1);
dbenv.set_lg_bsize(10485760);
dbenv.set_lg_max(104857600);
dbenv.set_lg_bsize(1048576);
dbenv.set_lg_max(10485760);
dbenv.set_lk_max_locks(10000);
dbenv.set_lk_max_objects(10000);
dbenv.set_errfile(fopen(strErrorFile.c_str(), "a")); /// debug
dbenv.set_flags(DB_AUTO_COMMIT, 1);
dbenv.log_set_config(DB_LOG_AUTO_REMOVE, 1);
ret = dbenv.open(strDataDir.c_str(),
DB_CREATE |
DB_INIT_LOCK |
Expand Down Expand Up @@ -159,8 +161,15 @@ void CDB::Close()
nMinutes = 1;
if (strFile == "addr.dat")
nMinutes = 2;
if (strFile == "blkindex.dat" && IsInitialBlockDownload() && nBestHeight % 5000 != 0)
nMinutes = 1;
if (strFile == "blkindex.dat" && IsInitialBlockDownload())
nMinutes = 5;

if (nMinutes == 0 || nTxn > 200000)
{
nTxn = 0;
nMinutes = 0;
}

dbenv.txn_checkpoint(0, nMinutes, 0);

CRITICAL_BLOCK(cs_db)
Expand Down Expand Up @@ -335,6 +344,7 @@ bool CTxDB::ReadTxIndex(uint256 hash, CTxIndex& txindex)
bool CTxDB::UpdateTxIndex(uint256 hash, const CTxIndex& txindex)
{
assert(!fClient);
nTxn++;
return Write(make_pair(string("tx"), hash), txindex);
}

Expand All @@ -345,6 +355,7 @@ bool CTxDB::AddTxIndex(const CTransaction& tx, const CDiskTxPos& pos, int nHeigh
// Add to tx index
uint256 hash = tx.GetHash();
CTxIndex txindex(pos, tx.vout.size());
nTxn++;
return Write(make_pair(string("tx"), hash), txindex);
}

Expand Down Expand Up @@ -721,12 +732,13 @@ bool CAddrDB::WriteAddrman(const CAddrMan& addrman)

bool CAddrDB::LoadAddresses()
{
bool fAddrMan = false;
if (Read(string("addrman"), addrman))
{
printf("Loaded %i addresses\n", addrman.size());
fAddrMan = true;
return true;
}

// Read pre-0.6 addr records

vector<CAddress> vAddr;
vector<vector<unsigned char> > vDelete;
Expand All @@ -752,31 +764,19 @@ bool CAddrDB::LoadAddresses()
ssKey >> strType;
if (strType == "addr")
{
if (fAddrMan)
{
vector<unsigned char> vchKey;
ssKey >> vchKey;
vDelete.push_back(vchKey);
}
else
{
CAddress addr;
ssValue >> addr;
vAddr.push_back(addr);
}

CAddress addr;
ssValue >> addr;
vAddr.push_back(addr);
}
}
pcursor->close();

BOOST_FOREACH(const vector<unsigned char> &vchKey, vDelete)
Erase(make_pair(string("addr"), vchKey));
addrman.Add(vAddr, CNetAddr("0.0.0.0"));
printf("Loaded %i addresses\n", addrman.size());

if (!fAddrMan)
{
addrman.Add(vAddr, CNetAddr("0.0.0.0"));
printf("Loaded %i addresses\n", addrman.size());
}
// Note: old records left; we ran into hangs-on-startup
// bugs for some users who (we think) were running after
// an unclean shutdown.

return true;
}
Expand Down
2 changes: 1 addition & 1 deletion src/main.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class CInv;
class CRequestTracker;
class CNode;

static const int CLIENT_VERSION = 60005;
static const int CLIENT_VERSION = 60006;
static const bool VERSION_IS_BETA = true;
extern const std::string CLIENT_NAME;

Expand Down
1 change: 1 addition & 0 deletions src/qt/bitcoin.qrc
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@
<file alias="fi">locale/bitcoin_fi.qm</file>
<file alias="fr_CA">locale/bitcoin_fr_CA.qm</file>
<file alias="fr_FR">locale/bitcoin_fr_FR.qm</file>
<file alias="he">locale/bitcoin_he.qm</file>
<file alias="hr">locale/bitcoin_hr.qm</file>
<file alias="hu">locale/bitcoin_hu.qm</file>
<file alias="it">locale/bitcoin_it.qm</file>
Expand Down
Loading