暂无搜索历史
调用SPI_execute_plan_extended执行后,可以看到tstore中有了两条结果。
不在执行exec_prepare_plan直接执行exec_dynquery_with_params:
-l参数可以控制发包大小,默认是128KB的包,可以用tcpdump抓下应用发包大小,做下模拟。
heap_update(Relation relation, ItemPointer otid, HeapTuple newtup, ...)
三阶段释放是指ResourceOwnerRelease函数在使用时需要调用三次,按固定顺序调用每次删除特定的资源:
Notify和Listen是Postgresql提供的不同会话间异步消息通信功能,例子:
子事务提交后,将xid记录到父事务的childXids,父事务的childXids就表示下面已经提交的子事务,这些子事务xid在后续mvcc计算中,会完全等效与...
确保父事务有 XID,以便子事务总是拥有一个比其父事务更新的 XID。这里不能递归调用,否则如果我们处于一个巨大的子事务堆栈的底部,而这些子事务还没有分配 XI...
在PL/pgSQL语言中,执行任何SQL都需要通过SPI调用SQL层解析执行,例如在SQL层执行表达式的入口:
注意PG_CATCH和PG_FINALLY是二选一的,区别是PG_FINALLY会在最后把异常重新抛出去,而PG_CATCH自己处理完了就不在向上抛了。
在创建到32745个线程时,pthread框架报告没有资源创建新线程了,这个是框架自己对于内存使用的显示。
并行框架中会将子进程的libpq的通信改成mq通信,用于子进程给父进程发送错误信息。
在使用__int128时,如果__int128类型的内存起始地址不是按16字节对齐的话,有些汇编指令会抛出SIGSEGV使程序crash。
对于SQL:select * from student, (select * from score where sno > 2) s where student...
EOH是一种扩展数据结构,之前有几篇博客讨论过了,最近在改相关代码加深了一些理解。
dlopen动态加载llvmjit.so,并调用so中的_PG_jit_provider_init初始化:
暂未填写公司和职称
暂未填写个人简介
暂未填写技能专长
暂未填写学校和专业
暂未填写个人网址
暂未填写所在城市