get_attavgwidth_hook
平均属性宽度
供插件在 get_attavgwidth() 中接管处理的钩子。
当前查看 PostgreSQL 18。
中文定义与说明
供插件在 get_attavgwidth() 中接管处理的钩子。
以下中文为本站依据所列 PostgreSQL 源码注释编译的说明。
接口声明
typedef int32 (*get_attavgwidth_hook_type) (Oid relid, AttrNumber attnum); extern PGDLLIMPORT get_attavgwidth_hook_type get_attavgwidth_hook;
调用位置
src/backend/utils/cache/lsyscache.c:3467
核心调用上下文:src/backend/utils/cache/lsyscache.c:3461–3475
{
HeapTuple tp;
int32 stawidth;
if (get_attavgwidth_hook)
{
stawidth = (*get_attavgwidth_hook) (relid, attnum);
if (stawidth > 0)
return stawidth;
}
tp = SearchSysCache3(STATRELATTINH,
ObjectIdGetDatum(relid),
Int16GetDatum(attnum),
BoolGetDatum(false));
if (HeapTupleIsValid(tp))说明
供插件在 get_attavgwidth() 中接管处理的钩子。
- 接口类型
- get_attavgwidth_hook_type
- 声明头文件
- src/include/utils/lsyscache.h
- 调用阶段
- 统计信息与估算
- 初始值
- NULL(未安装钩子)
接口签名
typedef int32 (*get_attavgwidth_hook_type) (Oid relid, AttrNumber attnum);
extern PGDLLIMPORT get_attavgwidth_hook_type get_attavgwidth_hook;调用位置
src/backend/utils/cache/lsyscache.c:3467
相关条目
文档与源码
查看来源构建
- 版本
- 18
- 构建
- REL_18_STABLE
- 来源指纹
753057e340da8f22e57c9a409ea7a235fd6a46bd
同类条目
get_index_stats_hook索引表达式统计信息get_relation_stats_hook表列统计信息
返回扩展钩子 · 此条目的收录范围为 PostgreSQL 10 至 20;起点不一定是实际引入版本。