Fix build & some cosmetic changes
This commit is contained in:
parent
35943b4f9c
commit
21c9a84971
5 changed files with 31 additions and 36 deletions
|
|
@ -1101,28 +1101,6 @@ void database::init_genesis(const genesis_state_type& genesis_state)
|
||||||
|
|
||||||
// Initialize witness schedule
|
// Initialize witness schedule
|
||||||
|
|
||||||
#ifndef NDEBUG
|
|
||||||
const son_schedule_object& ssohive =
|
|
||||||
#endif
|
|
||||||
create<son_schedule_object>([&](son_schedule_object& _sso)
|
|
||||||
{
|
|
||||||
// for scheduled
|
|
||||||
memset(_sso.rng_seed.begin(), 0, _sso.rng_seed.size());
|
|
||||||
|
|
||||||
witness_scheduler_rng rng(_sso.rng_seed.begin(), GRAPHENE_NEAR_SCHEDULE_CTR_IV);
|
|
||||||
|
|
||||||
auto init_witnesses = get_global_properties().active_witnesses;
|
|
||||||
|
|
||||||
_sso.scheduler = son_scheduler();
|
|
||||||
_sso.scheduler._min_token_count = std::max(int(init_witnesses.size()) / 2, 1);
|
|
||||||
|
|
||||||
|
|
||||||
_sso.last_scheduling_block = 0;
|
|
||||||
|
|
||||||
_sso.recent_slots_filled = fc::uint128::max_value();
|
|
||||||
});
|
|
||||||
assert( ssohive.id == son_schedule_id_type(get_son_schedule_id(sidechain_type::hive)) );
|
|
||||||
|
|
||||||
#ifndef NDEBUG
|
#ifndef NDEBUG
|
||||||
const son_schedule_object& ssobitcoin =
|
const son_schedule_object& ssobitcoin =
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -1133,11 +1111,11 @@ void database::init_genesis(const genesis_state_type& genesis_state)
|
||||||
|
|
||||||
witness_scheduler_rng rng(_sso.rng_seed.begin(), GRAPHENE_NEAR_SCHEDULE_CTR_IV);
|
witness_scheduler_rng rng(_sso.rng_seed.begin(), GRAPHENE_NEAR_SCHEDULE_CTR_IV);
|
||||||
|
|
||||||
auto init_witnesses = get_global_properties().active_witnesses;
|
auto init_bitcoin_sons = get_global_properties().active_sons.at(sidechain_type::bitcoin);
|
||||||
|
|
||||||
_sso.scheduler = son_scheduler();
|
_sso.scheduler = son_scheduler();
|
||||||
_sso.scheduler._min_token_count = std::max(int(init_witnesses.size()) / 2, 1);
|
_sso.scheduler._min_token_count = std::max(int(init_bitcoin_sons.size()) / 2, 1);
|
||||||
|
//_sso.scheduler.update(init_bitcoin_sons);
|
||||||
|
|
||||||
_sso.last_scheduling_block = 0;
|
_sso.last_scheduling_block = 0;
|
||||||
|
|
||||||
|
|
@ -1155,11 +1133,11 @@ void database::init_genesis(const genesis_state_type& genesis_state)
|
||||||
|
|
||||||
witness_scheduler_rng rng(_sso.rng_seed.begin(), GRAPHENE_NEAR_SCHEDULE_CTR_IV);
|
witness_scheduler_rng rng(_sso.rng_seed.begin(), GRAPHENE_NEAR_SCHEDULE_CTR_IV);
|
||||||
|
|
||||||
auto init_witnesses = get_global_properties().active_witnesses;
|
auto init_ethereum_sons = get_global_properties().active_sons.at(sidechain_type::ethereum);
|
||||||
|
|
||||||
_sso.scheduler = son_scheduler();
|
_sso.scheduler = son_scheduler();
|
||||||
_sso.scheduler._min_token_count = std::max(int(init_witnesses.size()) / 2, 1);
|
_sso.scheduler._min_token_count = std::max(int(init_ethereum_sons.size()) / 2, 1);
|
||||||
|
//_sso.scheduler.update(init_ethereum_sons);
|
||||||
|
|
||||||
_sso.last_scheduling_block = 0;
|
_sso.last_scheduling_block = 0;
|
||||||
|
|
||||||
|
|
@ -1167,11 +1145,27 @@ void database::init_genesis(const genesis_state_type& genesis_state)
|
||||||
});
|
});
|
||||||
assert( ssoethereum.id == son_schedule_id_type(get_son_schedule_id(sidechain_type::ethereum)) );
|
assert( ssoethereum.id == son_schedule_id_type(get_son_schedule_id(sidechain_type::ethereum)) );
|
||||||
|
|
||||||
|
#ifndef NDEBUG
|
||||||
|
const son_schedule_object& ssohive =
|
||||||
|
#endif
|
||||||
|
create<son_schedule_object>([&](son_schedule_object& _sso)
|
||||||
|
{
|
||||||
|
// for scheduled
|
||||||
|
memset(_sso.rng_seed.begin(), 0, _sso.rng_seed.size());
|
||||||
|
|
||||||
|
witness_scheduler_rng rng(_sso.rng_seed.begin(), GRAPHENE_NEAR_SCHEDULE_CTR_IV);
|
||||||
|
|
||||||
|
auto init_hive_sons = get_global_properties().active_sons.at(sidechain_type::hive);
|
||||||
|
|
||||||
|
_sso.scheduler = son_scheduler();
|
||||||
|
_sso.scheduler._min_token_count = std::max(int(init_hive_sons.size()) / 2, 1);
|
||||||
|
//_sso.scheduler.update(init_hive_sons);
|
||||||
|
|
||||||
_sso.last_scheduling_block = 0;
|
_sso.last_scheduling_block = 0;
|
||||||
|
|
||||||
_sso.recent_slots_filled = fc::uint128::max_value();
|
_sso.recent_slots_filled = fc::uint128::max_value();
|
||||||
});
|
});
|
||||||
assert( ssobitcoin.id == son_schedule_id_type(get_son_schedule_id(sidechain_type::bitcoin)) );
|
assert( ssohive.id == son_schedule_id_type(get_son_schedule_id(sidechain_type::hive)) );
|
||||||
|
|
||||||
// Create FBA counters
|
// Create FBA counters
|
||||||
create<fba_accumulator_object>([&]( fba_accumulator_object& acc )
|
create<fba_accumulator_object>([&]( fba_accumulator_object& acc )
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,10 @@ vector<std::reference_wrapper<const son_object>> database::sort_votable_objects<
|
||||||
count = std::min(count, refs.size());
|
count = std::min(count, refs.size());
|
||||||
std::partial_sort(refs.begin(), refs.begin() + count, refs.end(),
|
std::partial_sort(refs.begin(), refs.begin() + count, refs.end(),
|
||||||
[this, sidechain](const son_object& a, const son_object& b)->bool {
|
[this, sidechain](const son_object& a, const son_object& b)->bool {
|
||||||
FC_ASSERT(sidechain == sidechain_type::bitcoin || sidechain == sidechain_type::hive || sidechain == sidechain_type::ethereum, "Unexpected sidechain type");
|
FC_ASSERT(sidechain == sidechain_type::bitcoin ||
|
||||||
|
sidechain == sidechain_type::ethereum ||
|
||||||
|
sidechain == sidechain_type::hive,
|
||||||
|
"Unexpected sidechain type");
|
||||||
|
|
||||||
const share_type oa_vote = _vote_tally_buffer[a.get_sidechain_vote_id(sidechain)];
|
const share_type oa_vote = _vote_tally_buffer[a.get_sidechain_vote_id(sidechain)];
|
||||||
const share_type ob_vote = _vote_tally_buffer[b.get_sidechain_vote_id(sidechain)];
|
const share_type ob_vote = _vote_tally_buffer[b.get_sidechain_vote_id(sidechain)];
|
||||||
|
|
@ -2044,7 +2047,7 @@ void database::perform_son_tasks()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// create BTC asset here because son_account is the issuer of the BTC
|
// create BTC asset here because son_account is the issuer of the BTC
|
||||||
if (gpo.parameters.btc_asset() == asset_id_type() && head_block_time() >= HARDFORK_SON_TIME)
|
if (gpo.parameters.btc_asset() == asset_id_type() && head_block_time() >= HARDFORK_SON_TIME)
|
||||||
{
|
{
|
||||||
const asset_dynamic_data_object& dyn_asset =
|
const asset_dynamic_data_object& dyn_asset =
|
||||||
create<asset_dynamic_data_object>([](asset_dynamic_data_object& a) {
|
create<asset_dynamic_data_object>([](asset_dynamic_data_object& a) {
|
||||||
|
|
@ -2078,7 +2081,7 @@ void database::perform_son_tasks()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// create ETH asset here because son_account is the issuer of the ETH
|
// create ETH asset here because son_account is the issuer of the ETH
|
||||||
if (gpo.parameters.eth_asset() == asset_id_type() && head_block_time() >= HARDFORK_SON_FOR_ETHEREUM_TIME)
|
if (gpo.parameters.eth_asset() == asset_id_type() && head_block_time() >= HARDFORK_SON_FOR_ETHEREUM_TIME)
|
||||||
{
|
{
|
||||||
const asset_dynamic_data_object& dyn_asset =
|
const asset_dynamic_data_object& dyn_asset =
|
||||||
create<asset_dynamic_data_object>([](asset_dynamic_data_object& a) {
|
create<asset_dynamic_data_object>([](asset_dynamic_data_object& a) {
|
||||||
|
|
@ -2112,7 +2115,7 @@ void database::perform_son_tasks()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// create HBD asset here because son_account is the issuer of the HBD
|
// create HBD asset here because son_account is the issuer of the HBD
|
||||||
if (gpo.parameters.hbd_asset() == asset_id_type() && head_block_time() >= HARDFORK_SON_FOR_HIVE_TIME)
|
if (gpo.parameters.hbd_asset() == asset_id_type() && head_block_time() >= HARDFORK_SON_FOR_HIVE_TIME)
|
||||||
{
|
{
|
||||||
const asset_dynamic_data_object& dyn_asset =
|
const asset_dynamic_data_object& dyn_asset =
|
||||||
create<asset_dynamic_data_object>([](asset_dynamic_data_object& a) {
|
create<asset_dynamic_data_object>([](asset_dynamic_data_object& a) {
|
||||||
|
|
|
||||||
|
|
@ -324,7 +324,6 @@ void database::update_son_schedule(const signed_block& next_block)
|
||||||
{
|
{
|
||||||
auto start = fc::time_point::now();
|
auto start = fc::time_point::now();
|
||||||
const global_property_object& gpo = get_global_properties();
|
const global_property_object& gpo = get_global_properties();
|
||||||
const son_schedule_object& sso = get(son_schedule_id_type());
|
|
||||||
const flat_map<sidechain_type, uint32_t> schedule_needs_filled = [&gpo]()
|
const flat_map<sidechain_type, uint32_t> schedule_needs_filled = [&gpo]()
|
||||||
{
|
{
|
||||||
flat_map<sidechain_type, uint32_t> schedule_needs_filled;
|
flat_map<sidechain_type, uint32_t> schedule_needs_filled;
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ enum class sidechain_type {
|
||||||
hive
|
hive
|
||||||
};
|
};
|
||||||
|
|
||||||
static const std::set<sidechain_type> active_sidechain_types = {sidechain_type::bitcoin, sidechain_type::hive, sidechain_type::ethereum};
|
static const std::set<sidechain_type> active_sidechain_types = {sidechain_type::bitcoin, sidechain_type::ethereum, sidechain_type::hive};
|
||||||
|
|
||||||
} }
|
} }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
#include <boost/archive/iterators/base64_from_binary.hpp>
|
#include <boost/archive/iterators/base64_from_binary.hpp>
|
||||||
#include <boost/archive/iterators/binary_from_base64.hpp>
|
#include <boost/archive/iterators/binary_from_base64.hpp>
|
||||||
//#include <boost/archive/iterators/ostream_iterator.hpp>
|
|
||||||
#include <boost/archive/iterators/transform_width.hpp>
|
#include <boost/archive/iterators/transform_width.hpp>
|
||||||
|
|
||||||
namespace graphene { namespace peerplays_sidechain {
|
namespace graphene { namespace peerplays_sidechain {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue