1#ifndef joedb_Writable_Journal_declared
2#define joedb_Writable_Journal_declared
61 const std::string &name
67 const std::string &name,
81 const std::string &name
84 void custom(
const std::string &name)
override;
106 #define TYPE_MACRO(type, return_type, type_id, read_method, write_method)\
107 void update_##type_id\
110 Record_Id record_id,\
114 void update_vector_##type_id\
117 Record_Id record_id,\
friend class Writable_Journal
Readonly_Journal(Journal_Construction_Lock &lock)
int64_t get_checkpoint() const
Tail_Exclusive_Lock & operator=(const Tail_Exclusive_Lock &)=delete
Tail_Exclusive_Lock(Writable_Journal &journal)
Tail_Exclusive_Lock(const Tail_Exclusive_Lock &)=delete
bool wants_blob_data() const override
int64_t pull_from(const Readonly_Journal &journal, int64_t until)
Writable_Journal(Abstract_File &file)
void add_field(Table_Id table_id, const std::string &name, Type type) override
void delete_vector(Table_Id table_id, Record_Id record_id, size_t size) override
void delete_from(Table_Id table_id, Record_Id record_id) override
void valid_data() override
void soft_checkpoint() override
int64_t ahead_of_checkpoint() const noexcept
Writable_Journal(Journal_Construction_Lock &lock)
void insert_vector(Table_Id table_id, Record_Id record_id, size_t size) override
void soft_checkpoint_at(int64_t position)
void start_writing(int64_t position) override
int64_t get_position() const override
void custom(const std::string &name) override
int64_t pull_from(const Readonly_Journal &journal)
void end_writing(int64_t position) override
void create_table(const std::string &name) override
void rename_table(Table_Id table_id, const std::string &name) override
void hard_checkpoint() override
void drop_table(Table_Id table_id) override
void rename_field(Table_Id table_id, Field_Id field_id, const std::string &name) override
void insert_into(Table_Id table_id, Record_Id record_id) override
Blob write_blob(std::string_view data) override
Writable_Journal(Journal_Construction_Lock &&lock)
void timestamp(int64_t timestamp) override
void drop_field(Table_Id table_id, Field_Id field_id) override
Async_Writer get_async_tail_writer()
void hard_checkpoint_at(int64_t position)
void comment(const std::string &comment) override
Superclass with all joedb journal event listeners as virtual functions.