Skip to content

Commit 17d9980

Browse files
authored
Merge pull request #364 from AntelopeIO/GH-353-finality-name
Rename instant_finality_extension to finality_extension
2 parents 273e5e4 + dae8e99 commit 17d9980

18 files changed

+166
-170
lines changed

libraries/chain/abi_serializer.cpp

+5-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#include <eosio/chain/abi_serializer.hpp>
22
#include <eosio/chain/asset.hpp>
33
#include <eosio/chain/exceptions.hpp>
4-
#include <eosio/chain/finality/instant_finality_extension.hpp>
4+
#include <eosio/chain/finality/finality_extension.hpp>
55
#include <fc/io/raw.hpp>
66
#include <boost/algorithm/string/predicate.hpp>
77
#include <fc/io/varint.hpp>
@@ -634,11 +634,10 @@ namespace eosio { namespace chain {
634634
_variant_to_binary(type, var, ds, ctx);
635635
}
636636

637-
void impl::abi_to_variant::add_block_header_instant_finality_extension( mutable_variant_object& mvo, const header_extension_multimap& header_exts ) {
638-
if (header_exts.count(instant_finality_extension::extension_id())) {
639-
const auto& if_extension =
640-
std::get<instant_finality_extension>(header_exts.lower_bound(instant_finality_extension::extension_id())->second);
641-
mvo("instant_finality_extension", if_extension);
637+
void impl::abi_to_variant::add_block_header_finality_extension( mutable_variant_object& mvo, const header_extension_multimap& header_exts ) {
638+
if (header_exts.count(finality_extension::extension_id())) {
639+
const auto& f_ext = std::get<finality_extension>(header_exts.lower_bound(finality_extension::extension_id())->second);
640+
mvo("finality_extension", f_ext);
642641
}
643642
}
644643

libraries/chain/block_header_state.cpp

+21-21
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#include <eosio/chain/block_header_state.hpp>
22
#include <eosio/chain/block_header_state_utils.hpp>
3-
#include <eosio/chain/finality/instant_finality_extension.hpp>
3+
#include <eosio/chain/finality/finality_extension.hpp>
44
#include <eosio/chain/finality/proposer_policy.hpp>
55
#include <eosio/chain/exceptions.hpp>
66
#include <limits>
@@ -174,7 +174,7 @@ void evaluate_finalizer_policies_for_promotion(const block_header_state& prev,
174174

175175
// -------------------------------------------------------------------------------------------------
176176
// `finish_next` updates the next `block_header_state` according to the contents of the
177-
// header extensions (either new protocol_features or instant_finality_extension) applicable to this
177+
// header extensions (either new protocol_features or finality_extension) applicable to this
178178
// next block .
179179
//
180180
// These extensions either result from the execution of the previous block (in case this node
@@ -183,7 +183,7 @@ void evaluate_finalizer_policies_for_promotion(const block_header_state& prev,
183183
void finish_next(const block_header_state& prev,
184184
block_header_state& next_header_state,
185185
vector<digest_type> new_protocol_feature_activations,
186-
instant_finality_extension if_ext,
186+
finality_extension f_ext,
187187
bool log) { // only log on assembled blocks, to avoid double logging
188188
// activated protocol features
189189
// ---------------------------
@@ -210,8 +210,8 @@ void finish_next(const block_header_state& prev,
210210
}
211211

212212
std::optional<proposer_policy> new_proposer_policy;
213-
if (if_ext.new_proposer_policy_diff) {
214-
new_proposer_policy = prev.get_last_proposed_proposer_policy().apply_diff(*if_ext.new_proposer_policy_diff);
213+
if (f_ext.new_proposer_policy_diff) {
214+
new_proposer_policy = prev.get_last_proposed_proposer_policy().apply_diff(*f_ext.new_proposer_policy_diff);
215215
}
216216
if (new_proposer_policy) {
217217
// called when assembling the block
@@ -226,7 +226,7 @@ void finish_next(const block_header_state& prev,
226226
.timestamp = prev.timestamp(),
227227
.finalizer_policy_generation = prev.active_finalizer_policy->generation
228228
};
229-
next_header_state.core = prev.core.next(parent_block, if_ext.qc_claim);
229+
next_header_state.core = prev.core.next(parent_block, f_ext.qc_claim);
230230

231231
// finalizer policy
232232
// ----------------
@@ -236,8 +236,8 @@ void finish_next(const block_header_state& prev,
236236

237237
next_header_state.last_pending_finalizer_policy_digest = fc::sha256::hash(next_header_state.get_last_pending_finalizer_policy());
238238

239-
if (if_ext.new_finalizer_policy_diff) {
240-
finalizer_policy new_finalizer_policy = prev.get_last_proposed_finalizer_policy().apply_diff(*if_ext.new_finalizer_policy_diff);
239+
if (f_ext.new_finalizer_policy_diff) {
240+
finalizer_policy new_finalizer_policy = prev.get_last_proposed_finalizer_policy().apply_diff(*f_ext.new_finalizer_policy_diff);
241241

242242
// a new `finalizer_policy` was proposed in the previous block, and is present in the previous
243243
// block's header extensions.
@@ -296,13 +296,13 @@ block_header_state block_header_state::next(block_header_state_input& input) con
296296
if (input.new_proposer_policy) {
297297
new_proposer_policy_diff = get_last_proposed_proposer_policy().create_diff(*input.new_proposer_policy);
298298
}
299-
instant_finality_extension new_if_ext { input.most_recent_ancestor_with_qc,
300-
std::move(new_finalizer_policy_diff),
301-
std::move(new_proposer_policy_diff) };
299+
finality_extension new_f_ext { input.most_recent_ancestor_with_qc,
300+
std::move(new_finalizer_policy_diff),
301+
std::move(new_proposer_policy_diff) };
302302

303-
uint16_t if_ext_id = instant_finality_extension::extension_id();
304-
emplace_extension(next_header_state.header.header_extensions, if_ext_id, fc::raw::pack(new_if_ext));
305-
next_header_state.header_exts.emplace(if_ext_id, new_if_ext);
303+
uint16_t f_ext_id = finality_extension::extension_id();
304+
emplace_extension(next_header_state.header.header_extensions, f_ext_id, fc::raw::pack(new_f_ext));
305+
next_header_state.header_exts.emplace(f_ext_id, new_f_ext);
306306

307307
// add protocol_feature_activation extension
308308
// -----------------------------------------
@@ -314,7 +314,7 @@ block_header_state block_header_state::next(block_header_state_input& input) con
314314
next_header_state.header_exts.emplace(ext_id, std::move(pfa_ext));
315315
}
316316

317-
finish_next(*this, next_header_state, std::move(input.new_protocol_feature_activations), std::move(new_if_ext), true);
317+
finish_next(*this, next_header_state, std::move(input.new_protocol_feature_activations), std::move(new_f_ext), true);
318318

319319
return next_header_state;
320320
}
@@ -351,17 +351,17 @@ block_header_state block_header_state::next(const signed_block_header& h, valida
351351
validator( timestamp(), activated_protocol_features->protocol_features, new_protocol_feature_activations );
352352
}
353353

354-
// retrieve instant_finality_extension data from block header extension
354+
// retrieve finality_extension data from block header extension
355355
// --------------------------------------------------------------------
356-
EOS_ASSERT(exts.count(instant_finality_extension::extension_id()) > 0, invalid_block_header_extension,
356+
EOS_ASSERT(exts.count(finality_extension::extension_id()) > 0, invalid_block_header_extension,
357357
"Instant Finality Extension is expected to be present in all block headers after switch to IF");
358-
auto if_entry = exts.lower_bound(instant_finality_extension::extension_id());
359-
const auto& if_ext = std::get<instant_finality_extension>(if_entry->second);
358+
auto f_entry = exts.lower_bound(finality_extension::extension_id());
359+
const auto& f_ext = std::get<finality_extension>(f_entry->second);
360360

361361
if (h.is_proper_svnn_block()) {
362362
// if there is no Finality Tree Root associated with the block,
363363
// then this needs to validate that h.action_mroot is the empty digest
364-
auto next_core_metadata = core.next_metadata(if_ext.qc_claim);
364+
auto next_core_metadata = core.next_metadata(f_ext.qc_claim);
365365
bool no_finality_tree_associated = core.is_genesis_block_num(next_core_metadata.final_on_strong_qc_block_num);
366366

367367
EOS_ASSERT(no_finality_tree_associated == h.action_mroot.empty(), block_validate_exception,
@@ -371,7 +371,7 @@ block_header_state block_header_state::next(const signed_block_header& h, valida
371371
("f", next_core_metadata.final_on_strong_qc_block_num));
372372
};
373373

374-
finish_next(*this, next_header_state, std::move(new_protocol_feature_activations), if_ext, false);
374+
finish_next(*this, next_header_state, std::move(new_protocol_feature_activations), f_ext, false);
375375

376376
return next_header_state;
377377
}

libraries/chain/block_header_state_legacy.cpp

+7-8
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,10 @@ namespace eosio::chain {
156156
result.producer_to_last_implied_irb[proauth.producer_name] = dpos_proposed_irreversible_blocknum;
157157
}
158158

159-
if (header_exts.count(instant_finality_extension::extension_id())) { // transition to savanna has started
160-
const auto& if_extension =
161-
std::get<instant_finality_extension>(header_exts.lower_bound(instant_finality_extension::extension_id())->second);
159+
if (header_exts.count(finality_extension::extension_id())) { // transition to savanna has started
160+
const auto& f_ext = std::get<finality_extension>(header_exts.lower_bound(finality_extension::extension_id())->second);
162161
// copy over qc_claim from IF Genesis Block
163-
result.qc_claim = if_extension.qc_claim;
162+
result.qc_claim = f_ext.qc_claim;
164163
}
165164

166165
return result;
@@ -222,11 +221,11 @@ namespace eosio::chain {
222221
.is_strong_qc = false };
223222
finalizer_policy no_policy;
224223
auto new_fin_policy_diff = no_policy.create_diff(*new_finalizer_policy);
225-
emplace_extension(h.header_extensions, instant_finality_extension::extension_id(),
226-
fc::raw::pack(instant_finality_extension{ initial_if_claim, std::move(new_fin_policy_diff), {} }));
224+
emplace_extension(h.header_extensions, finality_extension::extension_id(),
225+
fc::raw::pack(finality_extension{ initial_if_claim, std::move(new_fin_policy_diff), {} }));
227226
} else if (qc_claim) {
228-
emplace_extension(h.header_extensions, instant_finality_extension::extension_id(),
229-
fc::raw::pack(instant_finality_extension{ *qc_claim, {}, {} }));
227+
emplace_extension(h.header_extensions, finality_extension::extension_id(),
228+
fc::raw::pack(finality_extension{ *qc_claim, {}, {} }));
230229
}
231230

232231
return h;

libraries/chain/block_state.cpp

+7-7
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,10 @@ block_state_ptr block_state::create_if_genesis_block(const block_state_legacy& b
6969
result.header = bsp.header;
7070
result.activated_protocol_features = bsp.activated_protocol_features;
7171

72-
assert(bsp.block->contains_header_extension(instant_finality_extension::extension_id())); // required by transition mechanism
73-
instant_finality_extension if_ext = bsp.block->extract_header_extension<instant_finality_extension>();
74-
assert(if_ext.new_finalizer_policy_diff); // required by transition mechanism
75-
result.active_finalizer_policy = std::make_shared<finalizer_policy>(finalizer_policy{}.apply_diff(std::move(*if_ext.new_finalizer_policy_diff)));
72+
assert(bsp.block->contains_header_extension(finality_extension::extension_id())); // required by transition mechanism
73+
finality_extension f_ext = bsp.block->extract_header_extension<finality_extension>();
74+
assert(f_ext.new_finalizer_policy_diff); // required by transition mechanism
75+
result.active_finalizer_policy = std::make_shared<finalizer_policy>(finalizer_policy{}.apply_diff(std::move(*f_ext.new_finalizer_policy_diff)));
7676

7777
block_ref genesis_block_ref {
7878
.block_id = bsp.id(),
@@ -299,11 +299,11 @@ void block_state::verify_qc(const valid_quorum_certificate& qc) const {
299299
}
300300

301301
qc_claim_t block_state::extract_qc_claim() const {
302-
auto itr = header_exts.lower_bound(instant_finality_extension::extension_id());
302+
auto itr = header_exts.lower_bound(finality_extension::extension_id());
303303
if (itr == header_exts.end())
304304
return {};
305-
const auto& if_ext = std::get<instant_finality_extension>(itr->second);
306-
return if_ext.qc_claim;
305+
const auto& f_ext = std::get<finality_extension>(itr->second);
306+
return f_ext.qc_claim;
307307
}
308308

309309
valid_t block_state::new_valid(const block_header_state& next_bhs, const digest_type& action_mroot, const digest_type& strong_digest) const {

0 commit comments

Comments
 (0)