本节介绍了PostgreSQL含有NOT IN查询语句实现ExecMaterial函数中部分依赖的函数。
SubPlanState
子计划运行期状态
SubPlan
子查询计划
SubLinkType
SubLink类型
SubLink
SubLink结构体
MaterialState
Material状态
ExecMaterial
执行物化操作。
tuplestore_begin_heap
初始化tuplestore
tuplestore_advance
从tuplestore前进一行
tuplestore_gettupleslot
获取slot
tuplestore_gettuple免费云主机域名
返回下一个元组
执行SQL:启动gdb跟踪单步调试进入tuplestore_gettupleslot进入tuplestore_gettupletuplestore_gettuple->文件读写指针信息tuplestore_gettuple->当前状态为TSS_INMEMtuplestore_gettuple->返回NULLtuplestore_gettupleslot->返回false回到ExecMaterial从outerPlan中获取一行(即从t_big_null中获取一行)回过头来看执行计划,Materialize Node的lefttree是Seq Scan on public.t_big_null b,righttree为NULL。获取outerslot获取outerslot后,put到tuplestore中继续“物化”第一次执行时间较久,第二次相对快2个数量级,需要继续研究。
DONEN/A
相关推荐: ubuntu中将java环境由安装版的openjdk替换为Oracle的jdk
查看系统所安装的JDK版本root@ubuntu:~# java -versionjava version “1.7.0_79″OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu1)O…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。