innodb部分内部操作


tab_node_t* tab_create_graph_create( /*====================*/ dict_table_t* table, /*!< in: table to create, built as a memory data structure */ mem_heap_t* heap, /*!< in: heap where created */ fil_encryption_t mode, /*!< in: encryption mode */ const CreateInfoEncryptionKeyId &create_info_encryption_key_id) /*!< in: encryption key_id */ { tab_node_t* node; node = static_cast<tab_node_t*>( mem_heap_alloc(heap, sizeof(tab_node_t))); node->common.type = QUE_NODE_CREATE_TABLE; node->table = table; node->state = TABLE_BUILD_TABLE_DEF; node->heap = mem_heap_create(256); node->mode= mode; node->create_info_encryption_key_id= create_info_encryption_key_id; node->tab_def = ins_node_create(INS_DIRECT, dict_sys->sys_tables, heap); node->tab_def->common.parent = node; node->col_def = ins_node_create(INS_DIRECT, dict_sys->sys_columns, heap); node->col_def->common.parent = node; node->v_col_def = ins_node_create(INS_DIRECT, dict_sys->sys_virtual, heap); node->v_col_def->common.parent = node; return(node); }

先创建一个执行树,按照执行树执行

 

posted @ 2019-08-27 19:05  友哥  阅读(285)  评论(0编辑  收藏  举报