mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | Static Private Attributes
m::Scheduler::Transaction Struct Reference

#include <Scheduler.hpp>

Collaboration diagram for m::Scheduler::Transaction:
[legend]

Public Member Functions

 Transaction ()
 
void start_time (int64_t time)
 

‍sets the start time of the Transaction. Should only be set once and only to a positive number.


 
int64_t start_time () const
 
auto operator== (const Transaction &other) const
 
auto operator<=> (const Transaction &other) const
 

Private Attributes

uint64_t id_
 

‍the Transaction ID


 
int64_t start_time_ = -1
 

‍the start time of the transaction. Used for multi-versioning and should be set when the transaction executes something.


 

Static Private Attributes

static std::atomic< uint64_t > next_id_
 

‍Stores the next available Transaction ID, stored atomically to prevent race conditions


 

Detailed Description

Definition at line 16 of file Scheduler.hpp.

Constructor & Destructor Documentation

◆ Transaction()

m::Scheduler::Transaction::Transaction ( )
inline

Definition at line 27 of file Scheduler.hpp.

Member Function Documentation

◆ operator<=>()

auto m::Scheduler::Transaction::operator<=> ( const Transaction other) const
inline

Definition at line 34 of file Scheduler.hpp.

References id_.

◆ operator==()

auto m::Scheduler::Transaction::operator== ( const Transaction other) const
inline

Definition at line 33 of file Scheduler.hpp.

References id_.

◆ start_time() [1/2]

int64_t m::Scheduler::Transaction::start_time ( ) const
inline

Definition at line 31 of file Scheduler.hpp.

◆ start_time() [2/2]

void m::Scheduler::Transaction::start_time ( int64_t  time)
inline

‍sets the start time of the Transaction. Should only be set once and only to a positive number.

Definition at line 30 of file Scheduler.hpp.

References and(), and M_insist.

Referenced by m::DSVReader::operator()().

Field Documentation

◆ id_

uint64_t m::Scheduler::Transaction::id_
private

‍the Transaction ID

Definition at line 19 of file Scheduler.hpp.

Referenced by operator<=>(), and operator==().

◆ next_id_

std::atomic< uint64_t > Scheduler::Transaction::next_id_
staticprivate

‍Stores the next available Transaction ID, stored atomically to prevent race conditions

Definition at line 24 of file Scheduler.hpp.

◆ start_time_

int64_t m::Scheduler::Transaction::start_time_ = -1
private

‍the start time of the transaction. Used for multi-versioning and should be set when the transaction executes something.

Definition at line 21 of file Scheduler.hpp.


The documentation for this struct was generated from the following files: