其他系统函数

    下述列表为openGauss实现系统内部功能所使用的函数,不推荐使用,若需使用,请联系华为技术支持工程师。

    • pv_compute_pool_workload()

      描述:提供云上加速数据库实例当前负载信息。

      返回值类型:record

    • locktag_decode(locktag text)

      描述:从locktag中解析锁的具体信息。

      返回值类型:text

    • smgreq(a smgr, b smgr)

      描述:比较两个smgr是否一样。

      参数:smgr, smgr

      返回值类型:boolean

    • smgrne(a smgr, b smgr)

      描述:判断两个smgr是否不一样。

      参数:smgr, smgr

      返回值类型:boolean

    • xidin4

      描述:输入4字节的xid。

      参数:cstring

      返回值类型:xid32

    • set_hashbucket_info

      描述:设置哈希桶信息。

      参数:text

      返回值类型:boolean

    • hs_concat

      描述:拼接两个hstore类型数据。

      参数:hstore, hstore

      返回值类型:hstore

    • hs_contained

      描述:判断两个hstore类型数据是否包含,返回值布尔类型。

      参数:hstore, hstore

      返回值类型:boolean

    • hs_contains

      描述:判断两个hstore类型数据是否包含,返回值布尔类型。

      参数:hstore, hstore

      返回值类型:boolean

    • hstore

      描述:将参数转为hstore类型。

      参数:text, text

      返回值类型:hstore

    • hstore_in

      描述:以string格式接收hstore数据。

      参数:cstring

      返回值类型:hstore

    • hstore_out

      描述:以string格式发送hstore数据。

      参数:hstore

      返回值类型:cstring

    • hstore_send

      描述:以bytea格式发送hstore数据。

      参数:hstore

      返回值类型:bytea

    • hstore_to_array

      描述:以text数组格式发送hstore数据。

      参数:hstore

      返回值类型:text[]

    • hstore_to_matrix

      描述:以text数组格式发送hstore数据。

      参数:hstore

      返回值类型:text[]

    • hstore_version_diag

      描述:以integer数组格式发送hstore数据。

      参数:hstore

      返回值类型:integer

    • int1send

      描述:将无符号一字节整数打包放入内部数据缓冲流。

      参数:tinyint

      返回值类型:bytea

    • isdefined

      描述:判断指定key是否存在。

      参数:hstore, text

      返回值类型:boolean

    • listagg

      描述:list类型agg聚集函数。

      参数:smallint, text

      返回值类型:text

    • log_fdw_validator

      描述:验证函数。

      参数:text[], oid

      返回值类型:void

    • nvarchar2typmodin

      描述:获取varchar的typmod信息。

      参数:cstring[]

      返回值类型:integer

    • nvarchar2typmodout

      描述:获取varchar的typmod信息,并构造字符串返回。

      参数:integer

      返回值类型:cstring

    • read_disable_conn_file

      描述:读取禁止的连接文件。

      参数:nan

      返回值类型:disconn_mode text, disconn_host text, disconn_port text, local_host text, local_port text, redo_finished text

    • regex_like_m

      描述:正则匹配,判断字符串是否符合给定的正则表达式。

      参数:text, text

      返回值类型:boolean

    • update_pgjob

      描述:更新job。

      参数:bigint, “char”, bigint, timestamp without time zone, timestamp without time zone, timestamp without time zone, timestamp without time zone, timestamp without time zone, smallint, text

      返回值类型:void

    • enum_cmp

      描述:枚举类比较函数,用于判断两个枚举类是否相等,以及相对大小。

      参数:anyenum, anyenum

      返回值类型:integer

    • enum_eq

      描述:枚举类比较函数,用于实现=符号。

      参数:anyenum, anyenum

      返回值类型:boolean

    • enum_first

      描述:返回枚举类中的第一个元素。

      参数:anyenum

      返回值类型:anyenum

    • enum_gt

      描述:枚举类比较函数,用于实现>符号。

      参数:anyenum, anyenum

      返回值类型:boolean

    • enum_in

      描述:枚举类比较函数,用于判断元素是否在枚举类中。

      参数:cstring, oid

      返回值类型:anyenum

    • enum_larger

      描述:枚举类比较函数,用于实现>符号。

      参数:anyenum, anyenum

      返回值类型:anyenum

    • enum_last

      描述:返回枚举类中的最后一个元素。

      参数:anyenum

      返回值类型:anyenum

    • enum_le

      描述:枚举类比较函数,用于实现<=符号。

      参数:anyenum, anyenum

      返回值类型:boolean

    • enum_lt

      描述:枚举类比较函数,用于实现<符号。

      参数:anyenum, anyenum

      返回值类型:boolean

    • enum_smaller

      描述:枚举类比较函数,用于实现<符号。

      参数:anyenum, anyenum

      返回值类型:boolean

    • node_oid_name

      描述:不支持。

      参数:oid

      返回值类型:cstring

    • pg_buffercache_pages

      描述:读取共享缓冲区的状态数据。

      参数:nan

      返回值类型:setof record,返回字段说明如下。

      表 1 返回字段说明

      名称

      类型

      描述

      bufferid

      integer

      缓冲区的内部ID。

      relfilenode

      oid

      缓冲区中页面所属关系的OID。

      bucketid

      integer

      缓冲区所处的哈希桶号。

      storage_type

      bigint

      缓冲区中数据的存储类型。

      reltablespace

      oid

      缓冲区中数据所处的表空间的OID。

      reldatabase

      oid

      缓冲区中数据所处的数据库的OID。

      relforknumber

      integer

      缓冲区中数据所在的关系文件分支类型。

      relblocknumber

      integer

      缓冲区中数据在其所属关系文件中的文件块号。

      isdirty

      boolean

      缓冲区是否为脏。

      isvalid

      boolean

      缓冲区是否有效。

      usage_count

      smallint

      缓冲区的使用计数。

      pinning_backends

      integer

      正在使用缓冲区的后端数。

    • pg_check_xidlimit

      描述:判断nextxid是否>= xidwarnlimit。

      参数:nan

      返回值类型:boolean

    • pg_comm_delay

      描述:展示单个DN的通信库时延状态。

      参数:nan

      返回值类型:text, text, integer, integer, integer, integer

    • pg_comm_recv_stream

      描述:展示单个DN上所有的通信库接收流状态。

      参数:nan

      返回值类型:text, bigint, text, bigint, integer, integer, integer, text, bigint, integer, integer, integer, bigint, bigint, bigint, bigint, bigint

    • pg_comm_send_stream

      描述:展示单个DN上所有的通信库发送流状态。

      参数:nan

      返回值类型:text, bigint, text, bigint, integer, integer, integer, text, bigint, integer, integer, integer, bigint, bigint, bigint, bigint, bigint

    • pg_comm_status

      描述:展示单个DN的通信状态。

      参数:nan

      返回值类型:text, integer, integer, bigint, bigint, bigint, bigint, bigint, integer, integer, integer, integer, integer

    • pg_log_comm_status

      描述:在DN上打印一些log。

      参数:nan

      返回值类型:boolean

    • pg_parse_clog

      描述:解析clog获取xid的status。

      参数:nan

      返回值类型:xid xid, status text

    • pg_pool_ping

      描述:设置PoolerPing。

      参数:boolean

      返回值类型:SETOF boolean

    • pg_resume_bkp_flag

      描述:用于备份恢复获取delay xlong标志。

      参数:slot_name name

      返回值类型:start_backup_flag boolean, to_delay boolean, ddl_delay_recycle_ptr text, rewind_time text

    • pgfadvise_DONTNEED

      描述: 这个函数为当前关系设置DONTNEED标记。这意味着如果需要释放一些内存,操作系统会首先卸载该文件的页。主要思想是卸载不再使用的文件(而不是可能会被使用的页面)。

      示例:

    • pgfadvise_WILLNEED

      描述:这个函数为当前关系设置WILLNEED标记。这意味着操作系统将尝试加载该关系尽可能多的页面。主要思想是在服务器启动时预加载文件,预加载文件时可能使用缓存命中率/失误率以及最可能被使用的关系/索引等信息。

      示例:

      1. relpath | os_page_size | rel_os_pages | os_pages_free
      2. --------------------+--------------+--------------+---------------
      3. base/11874/16447 | 4096 | 262144 | 80650
    • pgfadvise_NORMAL

      描述:这个函数为当前关系设置NORMAL标记。

    • pgfadvise_SEQUENTIAL

      描述:这个函数为当前关系设置SEQUENTIAL标记。

    • pgfadvise_RANDOM

      描述:这个函数为当前关系设置RANDOM标记。

    • pgfincore

      描述:这个函数提供关于文件系统缓存(页面缓存)的信息。

      示例:

      1. cedric=# select * from pgfincore('pgbench_accounts');
      2. relpath | segment | os_page_size | rel_os_pages | pages_mem | group_mem | os_pages_free | databit | pages_dirty | group_dirty
      3. --------------------+---------+--------------+--------------+-----------+-----------+---------------+---------+-------------+-------------
      4. base/11874/16447.1 | 1 | 4096 | 65726 | 0 | 0 | 408444 | | 0 | 0

      对于一个指定的关系,该函数返回包括以下字段:

      • relpath : 该关系的路径。
      • segment : 被分析的段号。
      • os_page_size : 一个页面的大小。
      • rel_os_pages : 该关系的总页面数。
      • pages_mem : 关系在页面缓存中的页面总数。 (不是来自PostgreSQL的共享缓冲区,而是操作系统缓存) 。
      • group_mem : 相邻pages_mem的组数。
      • os_page_free : 操作系统页面缓存中空闲的页面数。
      • databit : 该文件的varbit映射,因为该字段的大小关系,若需要输出该字段,需要使用pgfincore(‘pgbench_accounts’,true)来激活它。
      • pages_dirty : 如果定义了HAVE_FINCORE常量,平台将提供相关的信息,和pages_mem类似,只不过是对于脏页面的。
      • group_dirty : 如果定义了HAVE_FINCORE常量,平台将提供相关的信息,和group_mem类似,只不过是对于脏页面的。
    • pgsysconf

      描述: 这个函数输出操作系统块的大小,操作系统页面缓冲区中空闲页面的数量。

      示例:

    • pgsysconf_pretty

      描述:该函数的功能同上,不同之处在于该函数进行了单位转换,便于阅读。

      示例:

      1. cedric=# select * from pgsysconf_pretty();
      2. os_page_size | os_pages_free | os_total_pages
      3. 4096 bytes | 314 MB | 16 GB
    • pgfincore_drawer

      描述:一个非常简单的渲染器。这个函数需要一个varbit类型的参数。通常,这个参数的值来源于pgfincore函数的databit返回字段。databit字段的值由0和1组成,如果是0,意味着该页不在操作系统页面缓存中,如果是1,则意味着该页在操作系统页面缓存中。

      示例:

    • psortoptions

      描述:返回psort属性。

      参数:text[], boolean

      返回值类型:bytea

    • xideq4

      描述:对比两个xid类型的值是否相等。

      参数:xid32, xid32

      返回值类型:boolean

    • xideqint8

      描述:对比xid类型和int8类型的值是否相等。

      参数:xid, bigint

      返回值类型:boolean

    • xidlt

      描述:返回xid1 < xid2是否成立。

      参数:xid, xid

      返回值类型:boolean

    • xidlt4

      描述:返回xid1 < xid2是否成立。

      参数:xid32, xid32

      返回值类型:boolean