11 2016 档案
摘要:上一篇我们介绍了查询规划模块的总体流程和预处理部分的源码。查询规划模块再执行完预处理之后,可以进入正式的查询规划处理流程了。 查询规划的主要工作由grouping_planner函数完成。在具体实现的时候,针对postgresql中独有的继承表,程序使用inheritance_planner函数来解
阅读全文
摘要:时间一晃周末就过完了,时间过得太快,不由得让人倍加珍惜。时间真是不够用哈~ 好的不废话,这次我们开始看查询规划模块的源码吧。 查询规划部分的在整个查询处理模块应该是在一个非常重要的地位上,这一步直接决定了查询的方式与路径,很大程度上影响了数据库查询的查询性能。因此这一块代码量也很大,我也会花较多的笔
阅读全文
摘要:上一篇博文我们阅读了postgresql中查询分析模块的源码。查询分析模块对前台送来的命令进行词法分析、语法分析和语义分析后获得对应的查询树(Query)。在获得查询树之后,程序开始对查询树进行 查询重写 处理。 这一篇文章我们进入查询重写模块源码的阅读。还记得上一篇文章的那张函数调用关系图么?不记
阅读全文
摘要:上篇博客简要的介绍了下psql命令行客户端的前台代码。这一次,我们来看看后台的代码吧。 十分不好意思的是,上篇博客我们只说明了前台登陆的代码,没有介绍前台登陆过程中,后台是如何工作的。即:后台接到前台的连接请求后发生了什么?调用了哪些函数?启动了哪些进程? 那么,我们就先讲讲后台的工作流程吧。 1.
阅读全文
浙公网安备 33010602011771号