1 #ifndef EXECUTION_TABLEINSERTSTATE_H
2 #define EXECUTION_TABLEINSERTSTATE_H
35 std::vector<NullableDatumRef>
get_record()
override;
37 void close()
override;
48 std::unique_ptr<Table>&& table,
49 std::vector<std::unique_ptr<Index>>&& idxs,
50 std::unique_ptr<PlanExecState>&& child);
55 std::vector<std::unique_ptr<Index>>
m_idxs;
PlanExecState is an abstract interface for execution state of various query plan.
Definition: PlanExecState.h:19
PlanNode is an abstract interface representing physical query plan that does not bound with any parti...
Definition: PlanNode.h:26
TableDeleteState is the execution state for table insertion action.
Definition: TableInsertState.h:25
std::vector< std::unique_ptr< Index > > m_idxs
Definition: TableInsertState.h:55
~TableInsertState() override
Definition: TableInsertState.cpp:16
void rewind() override
Rewind the execution state as if it has just been initialized.
Definition: TableInsertState.cpp:66
void init() override
Initialize this plan execution state, set m_initialized to true and initialize all corresponding stat...
Definition: TableInsertState.cpp:28
void close() override
Clear internal states, mark we have finish retrieving output records from this execution state,...
Definition: TableInsertState.cpp:59
std::unique_ptr< Table > m_table
Definition: TableInsertState.h:54
const TableInsert * m_plan
Definition: TableInsertState.h:52
int64_t m_res
Definition: TableInsertState.h:56
bool next_tuple() override
Moves the iterator of this execution state to the next output record.
Definition: TableInsertState.cpp:36
std::vector< NullableDatumRef > get_record() override
Return the deserialized output record to which this execution state currently points.
Definition: TableInsertState.cpp:54
const PlanNode * get_plan() const override
Returns the corresponding plan.
Definition: TableInsertState.h:42
void node_properties_to_string(std::string &buf, int indent) const override
Definition: TableInsertState.cpp:23
TableInsertState(const TableInsert *plan, std::unique_ptr< Table > &&table, std::vector< std::unique_ptr< Index >> &&idxs, std::unique_ptr< PlanExecState > &&child)
Definition: TableInsertState.cpp:6
TableInsert is the physical plan for insert actions on a table.
Definition: TableInsert.h:22