Merge pull request #1099

c2faab5 fix v5 height (Riccardo Spagni)
70bd7d8 remove dead backup seed nodes, add new ones (Riccardo Spagni)
cebbcf0 fix v5 fork date description (Riccardo Spagni)
eb60fa2 update version (Riccardo Spagni)
c41098a updated fork heights for v4 and v5 (Riccardo Spagni)
c69b8a1 update block headers (Riccardo Spagni)
f148af2 add checkpoints (Riccardo Spagni)
c15da0e switch wallet API from std thread/mutex to boost (Riccardo Spagni)
8a274ea switch wallet API from std thread/mutex to boost (Riccardo Spagni)
This commit is contained in:
Riccardo Spagni 2016-09-18 20:26:38 +02:00
commit 68e6678ab7
No known key found for this signature in database
GPG Key ID: 55432DF31CCD4FCD
7 changed files with 28 additions and 37 deletions

Binary file not shown.

View File

@ -85,6 +85,12 @@ static const struct {
// version 3 starts from block 1141317, which is on or around the 24th of September, 2016. Fork time finalised on 2016-03-21.
{ 3, 1141317, 0, 1458558528 },
// version 4 starts from block 1220517, which is on or around the 5th of January, 2017. Fork time finalised on 2016-09-18.
{ 4, 1220517, 0, 1483574400 },
// version 5 starts from block 1406997, which is on or around the 20th of September, 2017. Fork time finalised on 2016-09-18.
{ 5, 1406997, 0, 1505865600 },
};
static const uint64_t mainnet_hard_fork_version_1_till = 1009826;
@ -100,6 +106,7 @@ static const struct {
// version 2 starts from block 624634, which is on or around the 23rd of November, 2015. Fork time finalised on 2015-11-20. No fork voting occurs for the v2 fork.
{ 2, 624634, 0, 1445355000 },
// versions 3-5 were passed in rapid succession from September 18th, 2016
{ 3, 800500, 0, 1472415034 },
{ 4, 801220, 0, 1472415035 },
{ 5, 802660, 0, 1472415036 },

View File

@ -184,6 +184,8 @@ namespace cryptonote
ADD_CHECKPOINT(825000, "56503f9ad766774b575be3aff73245e9d159be88132c93d1754764f28da2ff60");
ADD_CHECKPOINT(900000, "d9958d0e7dcf91a5a7b11de225927bf7efc6eb26240315ce12372be902cc1337");
ADD_CHECKPOINT(913193, "5292d5d56f6ba4de33a58d9a34d263e2cb3c6fee0aed2286fd4ac7f36d53c85f");
ADD_CHECKPOINT(1000000, "a886ef5149902d8342475fee9bb296341b891ac67c4842f47a833f23c00ed721");
ADD_CHECKPOINT(1100000, "3fd720c5c8b3072fc1ccda922dec1ef25f9ed88a1e6ad4103d0fe00b180a5903");
return true;
}

View File

@ -360,10 +360,9 @@ namespace nodetool
if (testnet)
{
memcpy(&m_network_id, &::config::testnet::NETWORK_ID, 16);
full_addrs.insert("197.242.158.240:28080");
full_addrs.insert("107.152.130.98:28080");
full_addrs.insert("5.9.25.103:28080");
full_addrs.insert("5.9.55.70:28080");
full_addrs.insert("163.172.182.165:28080");
full_addrs.insert("204.12.248.66:28080");
full_addrs.insert("5.9.100.248:28080");
}
else
{
@ -439,28 +438,11 @@ namespace nodetool
if (!full_addrs.size())
{
LOG_PRINT_L0("DNS seed node lookup either timed out or failed, falling back to defaults");
full_addrs.insert("46.165.232.77:18080");
full_addrs.insert("63.141.254.186:18080");
full_addrs.insert("119.81.118.164:18080");
full_addrs.insert("60.191.33.112:18080");
full_addrs.insert("198.74.231.92:18080");
full_addrs.insert("5.9.55.70:18080");
full_addrs.insert("119.81.118.165:18080");
full_addrs.insert("202.112.0.100:18080");
full_addrs.insert("84.106.163.174:18080");
full_addrs.insert("178.206.94.87:18080");
full_addrs.insert("119.81.118.163:18080");
full_addrs.insert("95.37.217.253:18080");
full_addrs.insert("161.67.132.39:18080");
full_addrs.insert("119.81.48.114:18080");
full_addrs.insert("119.81.118.166:18080");
full_addrs.insert("93.120.240.209:18080");
full_addrs.insert("46.183.145.69:18080");
full_addrs.insert("108.170.123.66:18080");
full_addrs.insert("5.9.83.204:18080");
full_addrs.insert("104.130.19.193:18080");
full_addrs.insert("119.81.48.115:18080");
full_addrs.insert("80.71.13.36:18080");
full_addrs.insert("163.172.182.165:18080");
full_addrs.insert("204.12.248.66:18080");
full_addrs.insert("5.9.100.248:18080");
}
}

View File

@ -1,4 +1,4 @@
#define MONERO_VERSION_TAG "@VERSIONTAG@"
#define MONERO_VERSION "0.9.4.0"
#define MONERO_RELEASE_NAME "Hydrogen Helix"
#define MONERO_VERSION "0.10.0.0"
#define MONERO_RELEASE_NAME "Wolfram Warptangent"
#define MONERO_VERSION_FULL MONERO_VERSION "-" MONERO_VERSION_TAG

View File

@ -170,7 +170,7 @@ WalletImpl::WalletImpl(bool testnet)
m_refreshThreadDone = false;
m_refreshEnabled = false;
m_refreshIntervalSeconds = DEFAULT_REFRESH_INTERVAL_SECONDS;
m_refreshThread = std::thread([this] () {
m_refreshThread = boost::thread([this] () {
this->refreshThreadFunc();
});
@ -632,12 +632,12 @@ void WalletImpl::refreshThreadFunc()
LOG_PRINT_L3(__FUNCTION__ << ": starting refresh thread");
while (true) {
std::unique_lock<std::mutex> lock(m_refreshMutex);
boost::mutex::scoped_lock lock(m_refreshMutex);
if (m_refreshThreadDone) {
break;
}
LOG_PRINT_L3(__FUNCTION__ << ": waiting for refresh...");
m_refreshCV.wait_for(lock, std::chrono::seconds(m_refreshIntervalSeconds));
m_refreshCV.wait(lock);
LOG_PRINT_L3(__FUNCTION__ << ": refresh lock acquired...");
LOG_PRINT_L3(__FUNCTION__ << ": m_refreshEnabled: " << m_refreshEnabled);
LOG_PRINT_L3(__FUNCTION__ << ": m_status: " << m_status);
@ -652,7 +652,7 @@ void WalletImpl::refreshThreadFunc()
void WalletImpl::doRefresh()
{
// synchronizing async and sync refresh calls
std::lock_guard<std::mutex> guarg(m_refreshMutex2);
boost::lock_guard<boost::mutex> guarg(m_refreshMutex2);
try {
m_wallet->refresh();
} catch (const std::exception &e) {

View File

@ -35,9 +35,9 @@
#include "wallet/wallet2.h"
#include <string>
#include <thread>
#include <mutex>
#include <condition_variable>
#include <boost/thread/mutex.hpp>
#include <boost/thread/thread.hpp>
#include <boost/thread/condition_variable.hpp>
namespace Bitmonero {
@ -113,12 +113,12 @@ private:
std::atomic<bool> m_refreshThreadDone;
std::atomic<int> m_refreshIntervalSeconds;
// synchronizing refresh loop;
std::mutex m_refreshMutex;
boost::mutex m_refreshMutex;
// synchronizing sync and async refresh
std::mutex m_refreshMutex2;
std::condition_variable m_refreshCV;
std::thread m_refreshThread;
boost::mutex m_refreshMutex2;
boost::condition_variable m_refreshCV;
boost::thread m_refreshThread;
};