MiniOB 1
MiniOB is one mini database, helping developers to learn how database works.
载入中...
搜索中...
未找到
SQLStage

SEDA处理的stage 更多...

class  SessionStage
 SQL处理的session阶段,也是第一个阶段 更多...
 
class  ExecuteStage
 执行SQL语句的Stage,包括DML和DDL 更多...
 
class  ParseStage
 解析SQL语句,解析后的结果可以参考parse_defs.h 更多...
 
class  ResolveStage
 执行Resolve,将解析后的SQL语句,转换成各种Stmt(Statement), 同时会做错误检查 更多...
 
class  PlanCacheStage
 尝试从Plan的缓存中获取Plan,如果没有命中,则执行Optimizer 更多...
 
class  QueryCacheStage
 查询缓存处理 更多...
 
class  CommandExecutor。
 将解析后的Statement转换成执行计划,并进行优化 更多...
 

详细描述

SEDA处理的stage

收到的客户端请求会放在SEDA框架中处理,每个stage都是一个处理阶段。 当前的处理流程可以通过observer.ini配置文件查看。 seda::stage使用说明: 这里利用seda的线程池与调度。stage是一个事件处理的几个阶段。 目前包括session,parse,execution和storage 每个stage使用handleEvent函数处理任务,并且使用StageEvent::pushCallback注册回调函数。 这时当调用StageEvent::done(Immediate)时,就会调用该事件注册的回调函数,如果没有回调函数,就会释放自己。