Skip to content

Commit 7efffaa

Browse files
authored
Renames to distinguish Tx and Store flag enums (#7098)
1 parent df34e7b commit 7efffaa

File tree

9 files changed

+58
-55
lines changed

9 files changed

+58
-55
lines changed

src/consensus/aft/test/logging_stub.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -461,12 +461,12 @@ namespace aft
461461
data, expected_txid, std::move(hooks));
462462
}
463463

464-
bool flag_enabled(ccf::kv::AbstractStore::Flag)
464+
bool flag_enabled(ccf::kv::AbstractStore::StoreFlag)
465465
{
466466
return false;
467467
}
468468

469-
void unset_flag(ccf::kv::AbstractStore::Flag) {}
469+
void unset_flag(ccf::kv::AbstractStore::StoreFlag) {}
470470
};
471471

472472
class LoggingStubStoreConfig : public LoggingStubStore

src/kv/committable_tx.h

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ namespace ccf::kv
1919
public:
2020
using TxFlags = uint8_t;
2121

22-
enum class Flag : TxFlags
22+
enum class TxFlag : TxFlags
2323
{
2424
LEDGER_CHUNK_AT_NEXT_SIGNATURE = 0x01,
2525
SNAPSHOT_AT_NEXT_SIGNATURE = 0x02,
@@ -80,7 +80,7 @@ namespace ccf::kv
8080
commit_evidence_digest = tx_commit_evidence_digest;
8181
auto entry_type = EntryType::WriteSetWithCommitEvidenceAndClaims;
8282

83-
if (flag_enabled(Flag::LEDGER_CHUNK_BEFORE_THIS_TX))
83+
if (tx_flag_enabled(TxFlag::LEDGER_CHUNK_BEFORE_THIS_TX))
8484
{
8585
entry_flags |= EntryFlags::FORCE_LEDGER_CHUNK_BEFORE;
8686
}
@@ -190,21 +190,21 @@ namespace ccf::kv
190190
committed = true;
191191
version = c.value();
192192

193-
if (flag_enabled(Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE))
193+
if (tx_flag_enabled(TxFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE))
194194
{
195195
pimpl->store->set_flag(
196-
AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
196+
AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
197197
// This transaction indicates to the store that the next signature
198198
// should trigger a new ledger chunk, but *this* transaction does not
199199
// create a new ledger chunk
200-
unset_flag(CommittableTx::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
200+
unset_tx_flag(TxFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
201201
}
202202

203-
if (flag_enabled(Flag::SNAPSHOT_AT_NEXT_SIGNATURE))
203+
if (tx_flag_enabled(TxFlag::SNAPSHOT_AT_NEXT_SIGNATURE))
204204
{
205205
pimpl->store->set_flag(
206-
AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
207-
unset_flag(CommittableTx::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
206+
AbstractStore::StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
207+
unset_tx_flag(TxFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
208208
}
209209

210210
if (version == NoVersion)
@@ -368,19 +368,19 @@ namespace ccf::kv
368368
root_at_read_version = r;
369369
}
370370

371-
virtual void set_flag(Flag flag)
371+
virtual void set_tx_flag(TxFlag flag)
372372
{
373-
flags |= static_cast<uint8_t>(flag);
373+
flags |= static_cast<TxFlags>(flag);
374374
}
375375

376-
virtual void unset_flag(Flag flag)
376+
virtual void unset_tx_flag(TxFlag flag)
377377
{
378-
flags &= ~static_cast<uint8_t>(flag);
378+
flags &= ~static_cast<TxFlags>(flag);
379379
}
380380

381-
virtual bool flag_enabled(Flag f) const
381+
virtual bool tx_flag_enabled(TxFlag f) const
382382
{
383-
return (flags & static_cast<uint8_t>(f)) != 0;
383+
return (flags & static_cast<TxFlags>(f)) != 0;
384384
}
385385
};
386386

@@ -455,7 +455,7 @@ namespace ccf::kv
455455

456456
// Reset ledger chunk flag in the store
457457
pimpl->store->unset_flag_unsafe(
458-
AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
458+
AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
459459

460460
return {
461461
CommitResult::SUCCESS,

src/kv/kv_types.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -743,18 +743,18 @@ namespace ccf::kv
743743

744744
virtual size_t committable_gap() = 0;
745745

746-
enum class Flag : uint8_t
746+
enum class StoreFlag : uint8_t
747747
{
748748
LEDGER_CHUNK_AT_NEXT_SIGNATURE = 0x01,
749749
SNAPSHOT_AT_NEXT_SIGNATURE = 0x02
750750
};
751751

752-
virtual void set_flag(Flag f) = 0;
753-
virtual void unset_flag(Flag f) = 0;
754-
virtual bool flag_enabled(Flag f) = 0;
755-
virtual void set_flag_unsafe(Flag f) = 0;
756-
virtual void unset_flag_unsafe(Flag f) = 0;
757-
virtual bool flag_enabled_unsafe(Flag f) const = 0;
752+
virtual void set_flag(StoreFlag f) = 0;
753+
virtual void unset_flag(StoreFlag f) = 0;
754+
virtual bool flag_enabled(StoreFlag f) = 0;
755+
virtual void set_flag_unsafe(StoreFlag f) = 0;
756+
virtual void unset_flag_unsafe(StoreFlag f) = 0;
757+
virtual bool flag_enabled_unsafe(StoreFlag f) const = 0;
758758
};
759759

760760
template <class StorePointer>

src/kv/store.h

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -623,8 +623,8 @@ namespace ccf::kv
623623

624624
version = tx_id.version;
625625
last_replicated = tx_id.version;
626-
unset_flag_unsafe(Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
627-
unset_flag_unsafe(Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
626+
unset_flag_unsafe(StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
627+
unset_flag_unsafe(StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
628628
rollback_count++;
629629
pending_txs.clear();
630630
auto e = get_encryptor();
@@ -1025,9 +1025,8 @@ namespace ccf::kv
10251025
// Note that snapshotter->record_committable, and therefore this function,
10261026
// assumes that `version` is a committable entry/signature.
10271027

1028-
bool r = flag_enabled_unsafe(
1029-
AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE) ||
1030-
flag_enabled_unsafe(AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
1028+
bool r = flag_enabled_unsafe(StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE) ||
1029+
flag_enabled_unsafe(StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
10311030

10321031
if (snapshotter)
10331032
{
@@ -1258,35 +1257,35 @@ namespace ccf::kv
12581257
return ReservedTx(this, term_of_last_version, tx_id, rollback_count);
12591258
}
12601259

1261-
virtual void set_flag(Flag f) override
1260+
virtual void set_flag(StoreFlag f) override
12621261
{
12631262
std::lock_guard<ccf::pal::Mutex> vguard(version_lock);
12641263
set_flag_unsafe(f);
12651264
}
12661265

1267-
virtual void unset_flag(Flag f) override
1266+
virtual void unset_flag(StoreFlag f) override
12681267
{
12691268
std::lock_guard<ccf::pal::Mutex> vguard(version_lock);
12701269
unset_flag_unsafe(f);
12711270
}
12721271

1273-
virtual bool flag_enabled(Flag f) override
1272+
virtual bool flag_enabled(StoreFlag f) override
12741273
{
12751274
std::lock_guard<ccf::pal::Mutex> vguard(version_lock);
12761275
return flag_enabled_unsafe(f);
12771276
}
12781277

1279-
virtual void set_flag_unsafe(Flag f) override
1278+
virtual void set_flag_unsafe(StoreFlag f) override
12801279
{
12811280
this->flags |= static_cast<uint8_t>(f);
12821281
}
12831282

1284-
virtual void unset_flag_unsafe(Flag f) override
1283+
virtual void unset_flag_unsafe(StoreFlag f) override
12851284
{
12861285
this->flags &= ~static_cast<uint8_t>(f);
12871286
}
12881287

1289-
virtual bool flag_enabled_unsafe(Flag f) const override
1288+
virtual bool flag_enabled_unsafe(StoreFlag f) const override
12901289
{
12911290
return (flags & static_cast<uint8_t>(f)) != 0;
12921291
}

src/kv/test/kv_test.cpp

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3155,15 +3155,16 @@ TEST_CASE("Ledger entry chunk request")
31553155
{
31563156
// Ledger chunk flag is not set in the store
31573157
REQUIRE(!store.flag_enabled(
3158-
ccf::kv::AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
3158+
ccf::kv::AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
31593159

31603160
INFO("Add a transaction with the chunking flag enabled");
31613161
{
31623162
MapTypes::StringString map("public:map");
31633163
auto tx = store.create_tx();
31643164

31653165
// Request a ledger chunk at the next signature
3166-
tx.set_flag(ccf::kv::CommittableTx::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
3166+
tx.set_tx_flag(
3167+
ccf::kv::CommittableTx::TxFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
31673168

31683169
auto h1 = tx.rw(map);
31693170
h1->put("key", "value");
@@ -3172,7 +3173,7 @@ TEST_CASE("Ledger entry chunk request")
31723173

31733174
// Flag is now set in the store
31743175
REQUIRE(store.flag_enabled(
3175-
ccf::kv::AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
3176+
ccf::kv::AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
31763177

31773178
INFO("Roll back the last transaction");
31783179
{
@@ -3182,7 +3183,7 @@ TEST_CASE("Ledger entry chunk request")
31823183

31833184
// Ledger chunk flag is still set in the store
31843185
REQUIRE(store.flag_enabled(
3185-
ccf::kv::AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
3186+
ccf::kv::AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
31863187

31873188
// Roll the last transaction back to clear the flag in the store
31883189
store.rollback(
@@ -3191,7 +3192,7 @@ TEST_CASE("Ledger entry chunk request")
31913192

31923193
// Ledger chunk flag is not set in the store anymore
31933194
REQUIRE(!store.flag_enabled(
3194-
ccf::kv::AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
3195+
ccf::kv::AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
31953196
}
31963197

31973198
INFO("Add another transaction with the chunking flag enabled");
@@ -3200,7 +3201,8 @@ TEST_CASE("Ledger entry chunk request")
32003201
auto tx = store.create_tx();
32013202

32023203
// Request a ledger chunk at the next signature again
3203-
tx.set_flag(ccf::kv::CommittableTx::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
3204+
tx.set_tx_flag(
3205+
ccf::kv::CommittableTx::TxFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
32043206

32053207
auto h1 = tx.rw(map);
32063208
h1->put("key", "value");
@@ -3209,7 +3211,7 @@ TEST_CASE("Ledger entry chunk request")
32093211

32103212
// Ledger chunk flag is now set in the store
32113213
REQUIRE(store.flag_enabled(
3212-
ccf::kv::AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
3214+
ccf::kv::AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
32133215

32143216
INFO(
32153217
"Add a signature transaction which triggers chunk via entry header flag");
@@ -3242,7 +3244,7 @@ TEST_CASE("Ledger entry chunk request")
32423244

32433245
// Ledger chunk flag is not set in the store anymore
32443246
REQUIRE(!store.flag_enabled(
3245-
ccf::kv::AbstractStore::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
3247+
ccf::kv::AbstractStore::StoreFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE));
32463248
}
32473249

32483250
SUBCASE("Chunk before this transaction")
@@ -3255,7 +3257,8 @@ TEST_CASE("Ledger entry chunk request")
32553257
auto tx = store.create_tx();
32563258

32573259
// Request a ledger chunk before tx
3258-
tx.set_flag(ccf::kv::CommittableTx::Flag::LEDGER_CHUNK_BEFORE_THIS_TX);
3260+
tx.set_tx_flag(
3261+
ccf::kv::CommittableTx::TxFlag::LEDGER_CHUNK_BEFORE_THIS_TX);
32593262

32603263
auto h1 = tx.rw(map);
32613264
h1->put("key", "value");
@@ -3279,7 +3282,8 @@ TEST_CASE("Ledger entry chunk request")
32793282

32803283
SUBCASE("Chunk when the snapshotter requires one")
32813284
{
3282-
store.set_flag(ccf::kv::AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
3285+
store.set_flag(
3286+
ccf::kv::AbstractStore::StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
32833287

32843288
INFO("Add a signature that triggers a snapshot");
32853289
{

src/node/node_state.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1501,8 +1501,8 @@ namespace ccf
15011501
{
15021502
throw std::logic_error("Could not cast tx to CommittableTx");
15031503
}
1504-
tx_->set_flag(
1505-
ccf::kv::CommittableTx::Flag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
1504+
tx_->set_tx_flag(
1505+
ccf::kv::CommittableTx::TxFlag::LEDGER_CHUNK_AT_NEXT_SIGNATURE);
15061506
}
15071507

15081508
void trigger_snapshot(ccf::kv::Tx& tx) override
@@ -1512,8 +1512,8 @@ namespace ccf
15121512
{
15131513
throw std::logic_error("Could not cast tx to CommittableTx");
15141514
}
1515-
committable_tx->set_flag(
1516-
ccf::kv::CommittableTx::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
1515+
committable_tx->set_tx_flag(
1516+
ccf::kv::CommittableTx::TxFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
15171517
}
15181518

15191519
void trigger_acme_refresh(

src/node/rpc/node_frontend.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1579,8 +1579,8 @@ namespace ccf
15791579
{
15801580
throw std::logic_error("Could not cast tx to CommittableTx");
15811581
}
1582-
tx_->set_flag(
1583-
ccf::kv::CommittableTx::Flag::LEDGER_CHUNK_BEFORE_THIS_TX);
1582+
tx_->set_tx_flag(
1583+
ccf::kv::CommittableTx::TxFlag::LEDGER_CHUNK_BEFORE_THIS_TX);
15841584
}
15851585

15861586
auto endorsed_certificates =

src/node/snapshotter.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,7 @@ namespace ccf
336336
next_snapshot_indices.back().idx);
337337

338338
bool forced = store->flag_enabled_unsafe(
339-
ccf::kv::AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
339+
ccf::kv::AbstractStore::StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
340340

341341
::consensus::Index last_unforced_idx = last_snapshot_idx;
342342
for (auto it = next_snapshot_indices.rbegin();
@@ -357,7 +357,7 @@ namespace ccf
357357
LOG_TRACE_FMT(
358358
"{} {} as snapshot index", !due ? "Forced" : "Recorded", idx);
359359
store->unset_flag_unsafe(
360-
ccf::kv::AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
360+
ccf::kv::AbstractStore::StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
361361
return due;
362362
}
363363

src/node/test/snapshotter.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -395,7 +395,7 @@ TEST_CASE("Rollback before snapshot is committed")
395395
size_t snapshot_idx = network.tables->current_version();
396396

397397
network.tables->set_flag(
398-
ccf::kv::AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE);
398+
ccf::kv::AbstractStore::StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE);
399399

400400
REQUIRE_FALSE(record_signature(history, snapshotter, snapshot_idx));
401401
snapshotter->commit(snapshot_idx, true);
@@ -411,7 +411,7 @@ TEST_CASE("Rollback before snapshot is committed")
411411
REQUIRE(snapshotter->write_snapshot(snapshot, snapshot_count));
412412

413413
REQUIRE(!network.tables->flag_enabled(
414-
ccf::kv::AbstractStore::Flag::SNAPSHOT_AT_NEXT_SIGNATURE));
414+
ccf::kv::AbstractStore::StoreFlag::SNAPSHOT_AT_NEXT_SIGNATURE));
415415

416416
// Commit evidence
417417
issue_transactions(network, 1);

0 commit comments

Comments
 (0)