13#include "storage/table/table_engine.h"
14#include "storage/index/index.h"
15#include "storage/record/record_manager.h"
16#include "storage/db/db.h"
17#include "oblsm/include/ob_lsm.h"
18using namespace oceanbase;
27 :
TableEngine(table_meta), db_(db), table_(table), lsm_(db->lsm())
31 RC insert_record(
Record &record)
override;
32 RC delete_record(
const Record &record)
override {
return RC::UNIMPLEMENTED; }
33 RC insert_record_with_trx(
Record &record,
Trx *trx)
override {
return RC::UNIMPLEMENTED; }
34 RC delete_record_with_trx(
const Record &record,
Trx *trx)
override {
return RC::UNIMPLEMENTED; }
35 RC update_record_with_trx(
const Record &old_record,
const Record &new_record,
Trx *trx)
override
37 return RC::UNIMPLEMENTED;
39 RC get_record(
const RID &rid,
Record &record)
override {
return RC::UNIMPLEMENTED; }
41 RC create_index(
Trx *trx,
const FieldMeta *field_meta,
const char *index_name)
override {
return RC::UNIMPLEMENTED; }
42 RC get_record_scanner(
RecordScanner *&scanner,
Trx *trx, ReadWriteMode mode)
override;
43 RC get_chunk_scanner(
ChunkFileScanner &scanner,
Trx *trx, ReadWriteMode mode)
override {
return RC::UNIMPLEMENTED; }
44 RC visit_record(
const RID &rid, function<
bool(
Record &)> visitor)
override {
return RC::UNIMPLEMENTED; }
46 RC sync()
override {
return RC::SUCCESS; }
47 Index *find_index(
const char *index_name)
const override {
return nullptr; }
48 Index *find_index_by_field(
const char *field_name)
const override {
return nullptr; }
50 RC init()
override {
return RC::UNIMPLEMENTED; }
56 atomic<uint64_t> inc_id_{0};
遍历某个文件中所有记录,每次返回一个 Chunk
Definition: record_manager.h:425
一个DB实例负责管理一批表
Definition: db.h:46
索引基类
Definition: index.h:38
lsm table engine
Definition: lsm_table_engine.h:24
遍历某个表中所有记录
Definition: record_scanner.h:21
表示一个记录
Definition: record.h:101
table engine
Definition: table_engine.h:35
事务接口
Definition: trx.h:141
ObLsm is a key-value storage engine for educational purpose. ObLsm learned a lot about design from le...
Definition: ob_lsm.h:29
标识一个记录的位置 一个记录是放在某个文件的某个页面的某个槽位。这里不记录文件信息,记录页面和槽位信息
Definition: record.h:35