本篇内容介绍了“PostgreSQL中BufTableInsert函数有什么作用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!BufferDesc
共享缓冲区的共享描述符(状态)数据BufferTag
Buffer tag标记了buffer存储的是磁盘中哪个blockHTAB
哈希表的顶层控制结构.BufferLookupEntBufTableInsert源码很简单,重点是需要理解HTAB数据结构,即全局变量SharedBufHash的数据结构.测试脚本,查询数据表:启动gdb,设置断点输入参数
tagPtr-BufferTag结构体
hashcode=1398580903,
buf_id=101调用h免费主机域名ash_search_with_hash_value,重点考察SharedBufHash(HTAB指针)SharedBufHas免费主机域名hSharedBufHash->hctl,HASHHDR结构体
freeList是一个数组
num_partitions是分区个数,默认为128SharedBufHash->dir,段开始目录哈希函数为tag_hash
哈希键比较函数是memcmp
@plt
哈希键拷贝函数是memcpy
@plt
内存分配器是ShmemAllocNoError
内存上下文为NULL
表名是Shared Buffer Lookup Table
共享内存(isshared=T)
非固定/非冻结/哈希键长度为20B/段大小为256/段偏移为8执行hash_search_with_hash_value,查看相关信息完成调用,返回“PostgreSQL中BufTableInsert函数有什么作用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注云技术网站,小编将为大家输出更多高质量的实用文章!
相关推荐: PostgreSQL中函数pg_blocking_pids的作用是什么
本篇内容介绍了“PostgreSQL中函数pg_blocking_pids的作用是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!函数pg_blocking_…