diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2016-07-13 21:19:05 +0100 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2016-07-13 21:38:34 +0100 |
commit | d7b681cd6518834ce9b76676980561cb8e235cff (patch) | |
tree | 51ff9d28bb4be6e929fd3440613932dbb039900c /src/cryptonote_core/hardfork.cpp | |
parent | Merge pull request #889 (diff) | |
download | monero-d7b681cd6518834ce9b76676980561cb8e235cff.tar.xz |
remove hf_starting_height db
It's not really needed, it used to be an optimization for when
that code was not using the db and needed to recalculate things
fast on startup.
Diffstat (limited to 'src/cryptonote_core/hardfork.cpp')
-rw-r--r-- | src/cryptonote_core/hardfork.cpp | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/src/cryptonote_core/hardfork.cpp b/src/cryptonote_core/hardfork.cpp index 7e2e82c4a..d3262dbe3 100644 --- a/src/cryptonote_core/hardfork.cpp +++ b/src/cryptonote_core/hardfork.cpp @@ -137,10 +137,6 @@ bool HardFork::add(uint8_t block_version, uint8_t voting_version, uint64_t heigh uint8_t voted = get_voted_fork_index(height + 1); if (voted > current_fork_index) { - for (int v = heights[current_fork_index].version + 1; v <= heights[voted].version; ++v) { - // we reached the vote threshold with this block, next one will be forked - db.set_hard_fork_starting_height(v, height + 1); - } current_fork_index = voted; } @@ -172,7 +168,12 @@ void HardFork::init() else height = 1; - bool populate = db.get_hard_fork_starting_height(original_version) == std::numeric_limits<uint64_t>::max(); + bool populate = false; + try + { + db.get_hard_fork_version(0); + } + catch (...) { populate = true; } if (populate) { LOG_PRINT_L0("The DB has no hard fork info, reparsing from start"); height = 1; @@ -182,7 +183,6 @@ void HardFork::init() reorganize_from_chain_height(height); // reorg will not touch the genesis block, use this as a flag for populating done db.set_hard_fork_version(0, original_version); - db.set_hard_fork_starting_height(original_version, 0); } else { rescan_from_chain_height(height); @@ -215,7 +215,6 @@ bool HardFork::reorganize_from_block_height(uint64_t height) const uint64_t rescan_height = height >= (window_size - 1) ? height - (window_size -1) : 0; const uint8_t start_version = height == 0 ? original_version : db.get_hard_fork_version(height); while (current_fork_index > 0 && heights[current_fork_index].version > start_version) { - db.set_hard_fork_starting_height(heights[current_fork_index].version, std::numeric_limits<uint64_t>::max()); --current_fork_index; } for (uint64_t h = rescan_height; h <= height; ++h) { @@ -227,10 +226,6 @@ bool HardFork::reorganize_from_block_height(uint64_t height) uint8_t voted = get_voted_fork_index(height + 1); if (voted > current_fork_index) { - for (int v = heights[current_fork_index].version + 1; v <= heights[voted].version; ++v) { - // we reached the vote threshold with this block, next one will be forked - db.set_hard_fork_starting_height(v, height + 1); - } current_fork_index = voted; } @@ -337,12 +332,6 @@ uint8_t HardFork::get(uint64_t height) const return db.get_hard_fork_version(height); } -uint64_t HardFork::get_start_height(uint8_t version) const -{ - CRITICAL_REGION_LOCAL(lock); - return db.get_hard_fork_starting_height(version); -} - uint8_t HardFork::get_current_version() const { CRITICAL_REGION_LOCAL(lock); |