From e494e180f4c816be0da2cc29c14ac7833c1e75c6 Mon Sep 17 00:00:00 2001 From: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com> Date: Wed, 20 Nov 2019 13:48:46 -0500 Subject: [PATCH] return more from producer_plugin's get_runtime_options() --- libraries/chain/controller.cpp | 4 ++++ libraries/chain/include/eosio/chain/controller.hpp | 1 + plugins/producer_plugin/producer_plugin.cpp | 7 ++++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/libraries/chain/controller.cpp b/libraries/chain/controller.cpp index 2abbdc6c7ac..4744f521e72 100644 --- a/libraries/chain/controller.cpp +++ b/libraries/chain/controller.cpp @@ -3143,6 +3143,10 @@ void controller::set_subjective_cpu_leeway(fc::microseconds leeway) { my->subjective_cpu_leeway = leeway; } +fc::optional controller::get_subjective_cpu_leeway() const { + return my->subjective_cpu_leeway; +} + void controller::set_greylist_limit( uint32_t limit ) { EOS_ASSERT( 0 < limit && limit <= chain::config::maximum_elastic_resource_multiplier, misc_exception, diff --git a/libraries/chain/include/eosio/chain/controller.hpp b/libraries/chain/include/eosio/chain/controller.hpp index d22f86936ae..3e9768d565a 100644 --- a/libraries/chain/include/eosio/chain/controller.hpp +++ b/libraries/chain/include/eosio/chain/controller.hpp @@ -288,6 +288,7 @@ namespace eosio { namespace chain { bool in_immutable_mode()const; void set_subjective_cpu_leeway(fc::microseconds leeway); + fc::optional get_subjective_cpu_leeway() const; void set_greylist_limit( uint32_t limit ); uint32_t get_greylist_limit()const; diff --git a/plugins/producer_plugin/producer_plugin.cpp b/plugins/producer_plugin/producer_plugin.cpp index 51f7dbee1f9..8625ea519d6 100644 --- a/plugins/producer_plugin/producer_plugin.cpp +++ b/plugins/producer_plugin/producer_plugin.cpp @@ -968,7 +968,12 @@ producer_plugin::runtime_options producer_plugin::get_runtime_options() const { my->_max_irreversible_block_age_us.count() < 0 ? -1 : my->_max_irreversible_block_age_us.count() / 1'000'000, my->_produce_time_offset_us, my->_last_block_time_offset_us, - my->_max_scheduled_transaction_time_per_block_ms + my->_max_scheduled_transaction_time_per_block_ms, + my->chain_plug->chain().get_subjective_cpu_leeway() ? + my->chain_plug->chain().get_subjective_cpu_leeway()->count() : + fc::optional(), + my->_incoming_defer_ratio, + my->chain_plug->chain().get_greylist_limit() }; }