其它函数
- pgxc_pool_check()
描述:检查连接池中缓存的连接数据是否与pgxc_node一致。
返回值类型:Boolean
- pgxc_pool_reload()
返回值类型:Boolean
- reload_active_coordinator()
返回值类型:void
- pgxc_lock_for_backup()
描述:为备份操作给集群加锁,这些备份是为在新增节点上做恢复。
返回值类型:Boolean
pgxc_lock_for_backup是在使用gs_dump或gs_dumpall工具备份集群前,用来给集群加锁的。当给集群加锁后,不允许有改变系统结构的操作。该函数不影响DML语句。
- pg_pool_validate(clear bool, node_name text)
描述:显示CN到节点node_name之间pooler中无效连接,当clear为true时清理无效连接。
返回值类型:record
- pgxc_pool_connection_status()
返回值类型:boolean
- pg_nodes_memory()
返回值类型:record
- table_skewness(text)
参数:表示待查询表的表名,为text类型。
返回值类型:record
- table_skewness(text, text, text)
参数:表示待查询表的表名、指定列名、指定的表的记录数(默认值为0,查询所有记录),都为text类型。
返回值类型:record
返回值说明:节点编号,指定列的数据行数,当前节点数据量相对总数据量的占比。
示例:
返回't'表'a'字段前5行数据在节点上的分布。 openGauss=# select table_skewness('t', 'a',5); table_skewness ---------------- (1,3,60.000%) (2,2,40.000%) (2 rows) 返回't'表'a'字段所有数据在节点上的分布。 openGauss=# select table_skewness('t', 'a'); table_skewness ---------------- (1,7,70.000%) (2,2,20.000%) (0,1,10.000%) (3 rows)
- table_skewness_with_schema(text, text)
描述:查看表数据在所有节点的占比,与table_skewness(text)作用相同。
参数:表示待查询表的schema名称和表名,为text类型。
返回值类型:record
- table_data_skewness(colrecord, type)
参数说明:
colrecord:表示待查询表的列名记录,为record类型。
type:hash分布类型
返回值类型:smallint
示例:
openGauss=# select table_data_skewness(row(index), 'R') from test1; table_data_skewness --------------------- 4 3 1 2 (4 rows)
- table_distribution(schemaname text, tablename text)
参数:表示待查询表的模式名和表名,均为text类型。
返回值类型:record
- 使用本函数查询指定表存储分布信息,需要具备指定表的SELECT权限。
- table_distribution性能比table_skewness更优,尤其是在大数据量场景下,请优先考虑使用table_distribution函数。
- 当使用table_distribution并希望直观的看到空间占比时,可使用dnsize/(sum(dnsize) over ())的方式查看出具体的占比情况。
- table_distribution()
返回值类型:record
- 使用本函数涉及全库表信息查询,需要具备管理员权限。
- 当前基于table_distribution()函数,GaussDB提供视图PGXC_GET_TABLE_SKEWNESS进行数据倾斜查询,建议在数据库中表数量(小于10000)较少的场景直接使用。
- plan_seed
返回值类型:int
- pg_stat_get_env
描述:获取当前节点的环境变量信息,仅sysadmin和monitor admin可以访问。
返回值类型:record
示例:
openGauss=# select pg_stat_get_env(); pg_stat_get_env --------------------------------------------------------------------------------------------------------------------------------------- (coordinator1,localhost,144773,49100,/data1/GaussDB_Kernel_TRUNK/install,/data1/GaussDB_Kernel_TRUNK/install/data/coordinator1,pg_log) (1 row)
- pg_catalog.plancache_clean()
返回值类型:bool
- pg_stat_get_thread
描述:提供当前节点下线程的状态信息,sysadmin和monitor admin用户可以查看所有线程的信息,普通用户只能查看本用户的线程信息。
返回值类型:record
- pgxc_get_os_threads
返回值类型:record
- pg_stat_get_sql_count
描述:提供当前节点中用户执行的SELECT/UPDATE/INSERT/DELETE/MERGE INTO语句的计数结果,sysadmin和monitor admin用户可以查看所有用户的信息,普通用户只能查看本用户的统计信息。
返回值类型:record
- pgxc_get_sql_count
描述:提供整个集群所有节点中所有用户执行的SELECT/UPDATE/INSERT/DELETE/MERGE INTO语句的计数结果。
返回值类型:record
- pgxc_get_node_env
返回值类型:record
- pgxc_disaster_read_set(text)
描述:设置灾备集群的节点信息到ETCD上。仅灾备集群可用,仅初始用户可调用。
返回值类型:Boolean
- pgxc_disaster_read_init
描述:初始化灾备可读的资源和状态信息。仅灾备集群可用,仅初始用户可调用。
返回值类型:Boolean
- pgxc_disaster_read_clear
描述:清理灾备可读的资源和状态信息。仅灾备集群可用,仅初始用户可调用。
返回值类型:Boolean
- pgxc_disaster_read_status
返回值类型:record
- gs_switch_relfilenode
描述:交换两个表或分区的元信息(重分布工具内部使用,用户直接使用会有错误信息提示)。
返回值类型:int
- pg_catalog.plancache_clean()
返回值类型:boolean
- DBE_PERF.global_plancache_clean()
返回值类型:Boolean
- copy_error_log_create()
描述:创建COPY FROM容错机制所需要的错误表(public.pgxc_copy_error_log)。
返回值类型:Boolean
- 此函数会尝试创建public.pgxc_copy_error_log表,表的详细信息请参见表1。
- 在relname列上创建B-tree索引,并REVOKE ALL on public.pgxc_copy_error_log FROM public对错误表进行权限控制(与COPY语句权限一致)。
- 由于尝试创建的public.pgxc_copy_error_log定义是一张行存表,因此集群上必须支持行存表的创建才能够正常运行此函数,并使用后续的COPY容错功能。需要特别注意的是,enable_hadoop_env这个GUC参数开启后会禁止在集群内创建行存表(GaussDB默认为off)。
- 此函数自身权限为Sysadmin及以上(与错误表、COPY权限一致)。
- 若创建前public.pgxc_copy_error_log表已存在或者copy_error_log_relname_idx索引已存在,则此函数会报错回滚。
- pg_stat_get_data_senders()
返回值类型:record
- textlen()
返回值类型:int
- threadpool_status()
返回值类型:record
- get_local_active_session()
描述:提供当前节点保存在内存中的历史活跃session状态的采样记录,sysadmin和monitor admin权限能查看当前节点所有的历史活跃session记录,普通用户查看本会话的历史活跃session记录。
返回值类型:record
- dbe_perf.get_global_active_session()
描述:提供所有节点保存在内存中的历史活跃session状态的采样记录。
返回值类型:record
- dbe_perf.get_global_gs_asp(timestamp,timestamp)
描述:提供所有节点保存在系统表gs_asp中的历史活跃session状态的采样记录。
返回值类型:record
- get_wait_event_info()
返回值类型:record
- dbe_perf.get_datanode_active_session(text)
描述:提供从CN查询DN上保存在内存中的历史活跃session状态的采样记录。
返回值类型:record
备注:该函数查询目标DN上local_active_session视图中记录并和所有CN上的local_active_session中的记录进行匹配获取query string,所以会占用大量的内存。
- dbe_perf.get_datanode_active_session_hist(text,timestamp,timestamp)
描述:提供从CN查询DN上保存在系统表gs_asp中的历史活跃session状态的采样记录。
返回值类型:record
备注:该函数查询目标DN上指定时间段的gs_asp记录,如果指定时间段过长造成查询的记录过多,会耗费大量时间。
- generate_wdr_report(bigint, bigint, cstring, cstring,cstring)
描述:基于两个snapshot生成系统诊断报告,默认初始化用户或监控管理员用户可以访问。只可在系统库中查询到结果,用户库中无法查询。
返回值类型:text
表2 generate_wdr_report参数说明 参数
说明
取值范围
begin_snap_id
生成某段时间内性能诊断报告的开始snapshotid。
-
end_snap_id
结束snapshot的id,默认end_snap_id大于begin_snap_id。
-
report_type
指定生成report的类型。
- summary
- detail
- all,即同时包含summary和detail。
report_scope
指定生成report的范围。
- cluster:数据库级别的信息
- node:节点级别的信息。
node_name
- 在“report_scope”指定为“node”时,需要把该参数指定为对应节点的名称。
- 在“report_scope”为“cluster”时,该参数可以省略,或指定为NULL。
- node:GaussDB中的节点名称。
- cluster:省略/空/NULL。
- create_wdr_snapshot()
描述:手工生成系统诊断快照,该函数需要sysadmin权限,且只能在CCN上执行。
返回值类型:text
- kill_snapshot()
描述:kill后台的WDR snapshot线程,调用该函数的用户需要具有SYSADMIN权限或具有REPLICATION权限或继承了内置角色gs_role_replication的权限。
返回值类型:void
- capture_view_to_json(text,integer)
描述:将视图的结果存入GUC: perf_directory所指定的目录,如果is_crossdb为1,则表示对于所有的database都会访问一次view;如果is_crossdb为0,则表示仅对当前database进行一次视图访问。该函数只有sysadmin和monitor admin用户可以执行。
返回值类型:int
- reset_unique_sql(text,text,bigint)
描述:用来清理CN/DN内存中的Unique SQL(需要sysadmin/monitor admin权限)。
返回值类型:Boolean
表3 reset_unique_sql参数说明 参数
类型
描述
scope
text
清理范围类型:
'GLOBAL' - 清理所有的CN/DN节点,如果是'GLOBAL',则只可以为CN节点执行此函数。
'LOCAL' - 清理本节点。
clean_type
text
'BY_USERID' - 按用户ID来进行清理Unique SQL。
'BY_CNID' - 按CN的ID来进行清理Unique SQL。
'ALL' - 全部清理。
clean_value
int8
具体清理type对应的清理值。如果第二个参数为ALL,则第三个参数不起作用,可以取任意值。
- wdr_xdb_query(db_name_str text, query text)
描述:提供本地跨数据库执行query的能力。例如: 在连接到testdb库时, 访问test库下的表。只有系统管理员才有权限执行。
select col1 from wdr_xdb_query('dbname=test','select col1 from t1') as dd(col1 int);
返回值类型:record
- pg_wlm_jump_queue(pid int)
返回值类型:boolean
- true:成功。
- false:失败。
- gs_wlm_switch_cgroup(pid int, cgroup text)
返回值类型:boolean
- true:成功。
- false:失败。
- pv_session_memctx_detail(threadid tid, MemoryContextName text)
描述:将线程tid的MemoryContextName内存上下文信息记录到“$GAUSSLOG/pg_log/${node_name}/dumpmem”目录下的“threadid_timestamp.log”文件中。其中threadid可通过查询表PV_SESSION_MEMORY_DETAIL中的sessid字段获得。在正式发布的版本中仅接受MemoryContextName为空串(两个单引号表示输入为空串,即'')的输入,此时会记录所有的内存上下文信息,否则不会有任何操作。该函数需要管理员权限的用户才能执行。
返回值类型:boolean
- true:成功。
- false:失败。
- pg_shared_memctx_detail(MemoryContextName text)
描述:将MemoryContextName内存上下文信息记录到“$GAUSSLOG/pg_log/${node_name}/dumpmem”目录下的“threadid_timestamp.log”文件中。在正式发布版本中调用该函数不会有任何操作。该函数需要管理员权限的用户才能执行。
返回值类型:boolean
- true:成功。
- false:失败。
- local_bgwriter_stat()
描述:显示本实例的bgwriter线程刷页信息,候选buffer链中页面个数,buffer淘汰信息。
返回值类型:record
- local_candidate_stat()
描述:显示本实例的候选buffer链中页面个数,buffer淘汰信息,包含normal buffer pool和segment buffer pool。
返回值类型:record
- local_ckpt_stat()
返回值类型:record
- local_double_write_stat()
返回值类型:record
表4 local_double_write_stat参数说明 参数
类型
描述
node_name
text
实例名称。
curr_dwn
int8
当前双写文件的序列号。
curr_start_page
int8
当前双写文件恢复起始页面。
file_trunc_num
int8
当前双写文件复用的次数。
file_reset_num
int8
当前双写文件写满后发生重置的次数。
total_writes
int8
当前双写文件总的I/O次数。
low_threshold_writes
int8
低效率写双写文件的I/O次数(一次I/O刷页数量少于16页面)。
high_threshold_writes
int8
高效率写双写文件的I/O次数(一次I/O刷页数量多于一批,421个页面)。
total_pages
int8
当前刷页到双写文件区的总的页面个数。
low_threshold_pages
int8
低效率刷页的页面个数。
high_threshold_pages
int8
高效率刷页的页面个数。
file_id
int8
当前双写文件的id号
- local_single_flush_dw_stat()
返回值类型:record
- local_pagewriter_stat()
返回值类型:record
- local_redo_stat()
返回值类型:record
备注:返回的回放状态主要包括当前回放位置,回放最小恢复点位置等信息。
- local_recovery_status()
返回值类型:record
- local_rto_status()
返回值类型:record
- gs_cgroup_map_ng_conf(group name)
描述:读取指定Node group的cgroup配置文件。该函数只有sysadmin权限的用户可以执行。
返回值类型:record
- pgxc_cgroup_map_ng_conf(group name)
描述:在所有节点上读取指定Node group的cgroup配置文件。该函数只有sysadmin权限的用户可以执行。
返回值类型:bool
- gs_wlm_switch_cgroup(sess_id int8, cgroup name)
返回值类型:record
- comm_client_info()
描述:用于查询单个节点活跃的客户端连接信息,返回结果解释见COMM_CLIENT_INFO。
返回值类型:setof record
- pg_get_flush_lsn()
返回值类型:text
- pg_get_sync_flush_lsn()
返回值类型:text
- pgxc_wlm_rebuild_user_resource_pool()
描述:重新构建用户及资源池缓存信息。需要系统管理员权限才可以执行该函数。
返回值类型:boolean
- locktag_decode(locktag text)
示例:
openGauss=# select locktag_decode('271b:0:0:0:0:6'); locktag_decode --------------------------------------------- locktype:transactionid, transactionid:10011 (1 row)
返回值类型:text
- disable_conn(disconn_mode text, host text, port integer)
描述:CM Agent处理CM Server下发的命令,在DN进行选主时设置该DN拒绝连接所有DN、强制连接某个DN或轮询连接所有DN。只有初始化用户和系统管理员才可以调用该函数。
返回值类型:void
表5 disable_conn参数说明 参数
类型
描述
disconn_mode
text
DN连接模式:
- 'prohibit_connection' - 拒绝连接所有DN。
- 'specify_connection' - 强制连接某个DN。
- 'polling_connection' - 轮询连接所有DN。
host
text
DN的IP。
port
integer
DN的端口号。
- dbe_perf.get_global_full_sql_by_timestamp(start_timestamp timestamp with time zone, end_timestamp timestamp with time zone)
描述:获取集群级的全量SQL(Full SQL)信息。只可在系统库中查询到结果,用户库中无法查询。
返回值类型:record
表6 dbe_perf.get_global_full_sql_by_timestamp参数说明 参数
类型
描述
start_timestamp
timestamp with time zone
SQL启动时间范围的开始时间点。
end_timestamp
timestamp with time zone
SQL启动时间范围的结束时间点。
- dbe_perf.get_global_slow_sql_by_timestamp(start_timestamp timestamp with time zone, end_timestamp timestamp with time zone)
描述:获取集群级的慢SQL(Slow SQL)信息。只可在系统库中查询到结果,用户库中无法查询。
返回值类型:record
表7 dbe_perf.get_global_slow_sql_by_timestamp参数说明 参数
类型
描述
start_timestamp
timestamp with time zone
SQL启动时间范围的开始时间点。
end_timestamp
timestamp with time zone
SQL启动时间范围的结束时间点。
- statement_detail_decode(detail text, format text, pretty boolean)
描述:解析全量/慢SQL语句中的details字段的信息。只可在系统库中查询到结果,用户库中无法查询。
返回值类型:text
表8 statement_detail_decode参数说明 参数
类型
描述
detail
text
SQL语句产生的事件的集合(不可读)。
format
text
解析输出格式,取值为plaintext。
pretty
boolean
当format为plaintext时,是否以优雅的格式展示:
- true表示通过“\n”分隔事件。
- false表示通过“,”分隔事件。
- pgxc_get_csn(tid)
返回值类型:int8
- get_global_user_transaction()
返回值类型:node_name name, usename name, commit_counter bigint, rollback_counter bigint, resp_min bigint, resp_max bigint, resp_avg bigint, resp_total bigint, bg_commit_counter bigint, bg_rollback_counter bigint, bg_resp_min bigint, bg_resp_max bigint, bg_resp_avg bigint, bg_resp_total bigint
- pg_collation_for
参数:any(如果是常量必须进行显式类型转换)
返回值类型:text
- pgxc_unlock_for_sp_database(name Name)
参数:数据库名
返回值类型:布尔
- pgxc_lock_for_sp_database(name Name)
参数:数据库名
返回值类型:布尔
- pgxc_unlock_for_transfer(name Name)
参数:数据库名
返回值类型:布尔
- pgxc_lock_for_transfer(name Name)
参数:数据库名
返回值类型:布尔
- gs_catalog_attribute_records()
描述:对于指定的系统表oid,返回该系统表对应的各个字段的定义。仅支持oid小于10000的普通系统表(不支持索引、toast表等)。
参数:系统表oid
返回值类型:record
- dynamic_func_control(scope text, function_name text, action text, "{params}" text[])
返回值类型:record
表9 dynamic_func_control参数说明 参数
类型
描述
scope
text
动态开启功能的范围,当前仅支持'GLOBAL/LOCAL'。
function_name
text
功能的名称,当前仅支持'STMT'。
action
text
当function_name为'STMT'时,action仅支持TRACK/UNTRACK/LIST/CLEAN:- TRACK - 开始记录归一化SQL的全量SQL信息。
- UNTRACK - 取消记录归一化SQL的全量SQL信息。
- LIST - 列取当前TRACK的归一化SQL的信息。
- CLEAN - 清理记录当前归一化SQL的信息。
params
text[]
当function_name为'STMT'时,对应不同的action时,对应的params设置如下:- TRACK - '{"归一化SQLID", "L0/L1/L2"}'
- UNTRACK - '{"归一化SQLID"}'
- LIST - '{}'
- CLEAN - '{}'
- gs_parse_page_bypath(path text, blocknum bigint, relation_type text, read_memory boolean)
返回值类型:text
备注:必须是系统管理员或运维管理员才能执行此函数。
表10 gs_parse_page_bypath参数说明 参数
类型
描述
path
text
- 对于普通表或段页式的普通表,相对路径为:tablespace name/database oid/表的relfilenode(物理文件名);例如:base/16603/16394
- 对于段页式的hashbucket表,相对路径为:tablespace name/database oid/Segment Head的逻辑页号_b(bucketid)。例如:base/16603/16394_b1437
- 表文件的相对路径可以通过pg_relation_filepath(table_name text)查找。分区表的路径可以查看pg_partition系统表和调用pg_partition_filepath(partition_oid)。
- 合法的path格式列举:
blocknum
bigint
- -1:所有block的信息(强制从磁盘解析)。
- 0~MaxBlockNumber:对应block的信息。
relation_type
text
- heap(astore表)
- btree(BTree索引)
- segment(段页式)
read_memory
boolean
- false,从磁盘文件解析;
- true,首先尝试从共享缓冲区中解析该页面;如果共享缓冲区中不存在,则从磁盘文件解析。
-
gs_xlogdump_lsn(start_lsn text, end_lsn text)
描述:用于解析指定lsn范围之内的xLog日志,并返回存放解析内容的路径。可以通过pg_current_xlog_location()获取当前xLog位置。
参数:LSN起始位置,LSN结束位置
返回值类型:text
备注:必须是系统管理员或运维管理员才能执行此函数。
-
描述:用于解析指定xid的xLog日志,并返回存放解析内容的路径。可以通过txid_current()获取当前事务ID。
参数:事务ID
返回值类型:text
备注:必须是系统管理员或运维管理员才能执行此函数。
- gs_xlogdump_tablepath(path text, blocknum bigint, relation_type text)
描述:用于解析指定表页面对应的日志,并返回存放解析内容的路径。
返回值类型:text
备注:必须是系统管理员或运维管理员才能执行此函数。
表11 gs_xlogdump_tablepath参数说明 参数
类型
描述
path
text
- 对于普通表或段页式的普通表,相对路径为:tablespace name/database oid/表的relfilenode(物理文件名)。例如:base/16603/16394。
- 对于段页式的hashbucket表,相对路径为:tablespace name/database oid/Segment Head的逻辑页号_b(bucketid)。例如:base/16603/16394_b1437
- 表文件的相对路径可以通过pg_relation_filepath(table_name text)查找。分区表的路径可以查看pg_partition系统表和调用pg_partition_filepath(partition_oid)。
- 合法的path格式列举:
blocknum
bigint
- -1:所有block的信息(强制从磁盘解析)。
- 0~MaxBlockNumber:对应block的信息。
relation_type
text
- heap(astore 表)
- btree(BTree 索引)
- segment(段页式)
- gs_xlogdump_parsepage_tablepath(path text, blocknum bigint, relation_type text, read_memory boolean)
描述:用于解析指定表页面和表页面对应的日志,并返回存放解析内容的路径。可以看做一次执行gs_parse_page_bypath和gs_xlogdump_tablepath。该函数执行的前置条件是表文件存在。如果想查看已删除的表的相关日志,请直接调用gs_xlogdump_tablepath。
返回值类型:text
备注:必须是系统管理员或运维管理员才能执行此函数。
表12 gs_xlogdump_parsepage_tablepath参数说明 参数
类型
描述
path
text
- 对于普通表或段页式的普通表,相对路径为:tablespace name/database oid/表的relfilenode(物理文件名);例如:base/16603/16394
- 对于段页式的hashbucket表,相对路径为:tablespace name/database oid/Segment Head的逻辑页号_b(bucketid)。例如:base/16603/16394_b1437
- 表文件的相对路径可以通过pg_relation_filepath(table_name text)查找。分区表的路径可以查看pg_partition系统表和调用pg_partition_filepath(partition_oid)。
- 合法的path格式列举:
blocknum
bigint
- -1:所有block的信息(强制从磁盘解析)。
- 0~MaxBlockNumber:对应block的信息。
relation_type
text
- heap(astore 表)
- btree(BTree 索引)
- segment(段页式)
read_memory
boolean
- false,从磁盘文件解析;
- true,首先尝试从共享缓冲区中解析该页面;如果共享缓冲区中不存在,则从磁盘文件解析。
- gs_index_recycle_queue(Oid oid, int type, uint32 blkno)
返回值类型:record
表13 gs_index_recycle_queue参数说明 参数
类型
描述
oid
Oid
- 索引文件relfilenode,可以通过select relfilenode from pg_class where relname='name'查询,其中name表示对应的索引文件名字
type
int
- 0,表示解析整个待回收队列
- 1,表示解析整个空页队列
- 2,表示解析单个页面
blkno
uint32
回收队列页面编号,该参数只有在type=2的时候有效,blkno有效取值范围为1~4294967294。
该函数功能在分布式版本上不支持,有报错提示。
- gs_stat_wal_entrytable(int64 idx)
返回值类型:record
表14 gs_stat_wal_entrytable参数说明 参数类型
参数名
类型
描述
输入参数
idx
int64
- -1:查询数组所有元素。
- 0-最大值:具体某个数组元素内容。
输出参数
idx
uint64
记录对应数组中的下标
输出参数
endlsn
uint64
记录的LSN标签
输出参数
lrc
int32
记录对应的LRC
输出参数
status
uint32
标识当前entry对应的xLog是否已经完全拷贝到wal buffer中
- 0:非COPIED
- 1: COPIED
- gs_walwriter_flush_position()
返回值类型:record
表15 gs_walwriter_flush_position参数说明 参数类型
参数名
类型
描述
输出参数
last_flush_status_entry
int32
xLog flush上一个刷盘的tblEntry下标索引。
输出参数
last_scanned_lrc
int32
xLog flush上一次扫描到的最后一个tblEntry记录的LRC。
输出参数
curr_lrc
int32
WALInsertStatusEntry状态表中LRC最新的使用情况,该LRC表示下一个xLog记录写入时在WALInsertStatusEntry对应的LRC值。
输出参数
curr_byte_pos
uint64
xLog记录写入WAL 文件,最新分配的位置,下一个xLog记录插入点。
输出参数
prev_byte_size
uint32
上一个xLog记录的长度。
输出参数
flush_result
uint64
当前全局xLog刷盘的位置。
输出参数
send_result
uint64
当前主机上xLog发送位置。
输出参数
shm_rqst_write_pos
uint64
共享内存中记录的XLogCtl中LogwrtRqst请求的write位置。
输出参数
shm_rqst_flush_pos
uint64
共享内存中记录的XLogCtl中LogwrtRqst请求的flush位置。
输出参数
shm_result_write_pos
uint64
共享内存中记录的XLogCtl中LogwrtResult的write位置。
输出参数
shm_result_flush_pos
uint64
共享内存中记录的XLogCtl中LogwrtResult的flush位置。
输出参数
curr_time
text
当前时间。
- gs_walwriter_flush_stat(int operation)
描述:用于统计预写日志write与sync的次数频率与数据量,以及xLog文件的信息。
返回值类型:record
表16 gs_walwriter_flush_stat参数说明 参数类型
参数名
类型
描述
输入参数
operation
int
- -1: 关闭统计开关(默认状态为关闭)。
- 0:打开统计开关。
- 1:查询统计信息。
- 2:重置统计信息。
输出参数
write_times
uint64
xLog调用write接口的次数
输出参数
sync_times
uint64
xLog调用sync接口次数
输出参数
total_xlog_sync_bytes
uint64
Backend线程请求写入xLog总量统计值
输出参数
total_actual_xlog_sync_bytes
uint64
调用sync接口实际刷盘的xLog总量统计值
输出参数
avg_write_bytes
uint32
每次调用XLogWrite接口请求写的xLog量
输出参数
avg_actual_write_bytes
uint32
实际每次调用write接口写的xLog量
输出参数
avg_sync_bytes
uint32
平均每次请求sync的xLog量
输出参数
avg_actual_sync_bytes
uint32
实际每次调用sync刷盘xLog量
输出参数
total_write_time
uint64
调用write操作总时间统计(单位:us)
输出参数
total_sync_time
uint64
调用sync操作总时间统计(单位:us)
输出参数
avg_write_time
uint32
每次调用write接口平均时间(单位:us)
输出参数
avg_sync_time
uint32
每次调用sync接口平均时间(单位:us)
输出参数
curr_init_xlog_segno
uint64
当前最新创建的xLog段文件编号
输出参数
curr_open_xlog_segno
uint64
当前正在写的xLog段文件编号
输出参数
last_reset_time
text
上一次重置统计信息的时间
输出参数
curr_time
text
当前时间
- pg_ls_tmpdir()
描述:返回默认表空间下临时目录(pgsql_tmp)中每个文件的名称、大小和最后修改时间。
参数:nan
返回值类型:record
备注:必须是系统管理员或者监控管理员才能执行此函数。
参数类型
参数名
类型
描述
输出参数
name
text
文件名称
输出参数
size
int8
文件大小(单位:byte)
输出参数
modification
timestamptz
文件最后修改时间
- pg_ls_tmpdir(oid)
描述:返回指定表空间下临时目录(pgsql_tmp)中每个文件的名称、大小和最后修改时间。
参数:oid
返回值类型:record
备注:必须是系统管理员或者监控管理员才能执行此函数。
参数类型
参数名
类型
描述
输入参数
oid
oid
表空间id
输出参数
name
text
文件名称
输出参数
size
int8
文件大小(单位:byte)
输出参数
modification
timestamptz
文件最后修改时间
- pg_ls_waldir()
描述:返回预写日志(WAL)目录中每个文件的名称、大小和最后修改时间。
参数:nan
返回值类型:record
备注:必须是系统管理员或者监控管理员才能执行此函数。
参数类型
参数名
类型
描述
输出参数
name
text
文件名称
输出参数
size
int8
文件大小(单位:byte)
输出参数
modification
timestamptz
文件最后修改时间
- gs_undo_dump_xid(undo_xid xid)
返回值类型:record
表17 gs_undo_dump_xid参数说明 参数类型
参数名
类型
描述
输入参数
undo_xid
xid
事务xid
输出参数
undoptr
xid
需要解析的undo记录起始位置
输出参数
xactid
text
事务id
输出参数
cid
text
command id
输出参数
reloid
text
relation oid
输出参数
relfilenode
text
文件的relfinode
输出参数
utype
text
undo记录类型
输出参数
blkprev
text
同一个块前一条undo记录的位置
输出参数
blockno
text
块号
输出参数
uoffset
text
undo记录偏移
输出参数
prevurp
text
前一条undo记录位置
输出参数
payloadlen
text
undo记录数据部分长度
输出参数
oldxactid
text
前一个事务id
输出参数
partitionoid
text
分区oid
输出参数
tablespace
text
表空间
输出参数
alreadyread_bytes
text
读取到的undo记录长度
输出参数
prev_undorec_len
text
前一条undo记录长度
输出参数
td_id
text
Transaction Directory的id
输出参数
reserved
text
是否保存
输出参数
flag
text
标识1
输出参数
flag2
text
标识2
输出参数
t_hoff
text
Undo记录数据头的长度
- gs_write_term_log(void)
描述:写入一条日志记录DN节点当前的term值。备DN节点返回false,主DN节点写入成功后返回true。
返回值类型:Boolean