openGauss SQL参考—函数和操作符:Undo系统函数(2)

  • gs_stat_undo()

    描述:Undo统计信息。

    返回值类型:record

    示例:

    openGauss=# select * from gs_stat_undo();
     curr_used_zone_count |   top_used_zones    | curr_used_undo_size | undo_threshold | global_recycle_xid | oldest_xmin | total_undo_chain_len | max_undo_chain_len | create_undo_file_count | discard_undo_file_count 
    ----------------------+---------------------+---------------------+----------------+--------------------+-------------+----------------------+--------------------+------------------------+-------------------------
    

    表 3 gs_stat_undo参数说明

    参数类型

    参数名

    类型

    描述

    输出参数

    curr_used_zone_count

    uint32

    当前使用的Undo zone数量。

    输出参数

    top_used_zones

    text

    前三个使用量最大的Undo zone信息,格式输出为:

    (zoneId1:使用大小,zoneId2:使用大小,zoneId3:使用大小)。

    输出参数

    curr_used_undo_size

    uint32

    当前使用的Undo总空间大小,单位为MB。

    输出参数

    undo_threshold

    uint32

    为guc参数undo_space_limit_size * 80%计算的结果,单位为MB。

    输出参数

    oldest_xid_in_undo

    uint64

    当前Undo空间回收到的事务xid(小于该xid事务产生的Undo记录都已经被回收)。

    输出参数

    oldest_xmin

    uint64

    最老的活跃事务。

    输出参数

    total_undo_chain_len

    int64

    所有访问过的Undo链总长度。

    输出参数

    max_undo_chain_len

    int64

    最大访问过的Undo链长度。

    输出参数

    create_undo_file_count

    uint32

    创建的Undo文件数量统计。

    输出参数

    discard_undo_file_count

    uint32

    删除的Undo文件数量统计。

  • gs_undo_record(undoptr)

    描述:Undo记录解析。

    参数说明:

    • undoptr(undo记录指针)

    返回值类型:record

    示例:

    openGauss=# select * from gs_undo_record(4698);
     undoptr | xid |       cid        |      reloid      |   relfilenode    |      utype       |     blkprev      |     blockno      |      uoffset     |     prevurp      |    payloadlen    
    ---------+-----+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------
    
  • gs_undo_dump_parsepage_mv(relpath text, blkno bigint, reltype text, rmem boolean)

    描述:解析ustore数据表磁盘页面的页头信息,每个元组的头部信息,标识位信息以及所有可以查询到undo历史版本信息。

    返回值类型:text

    备注:必须是系统管理员或者运维管理人员才能执行此函数。

     说明: 该接口当前仅支持USTORE数据表。

    示例:

    openGauss=# select * from gs_undo_dump_parsepage_mv('base/16384/16391', -1, 'uheap', false);
                    output                   
      -------------------------------------------
    

    表 4 gs_undo_dump_parsepage_mv参数说明

    参数类型

    参数名

    类型

    描述

    输入参数

    relpath

    text

    ustore表数据文件相对路径,相对路径格式为:tablespace name/database oid/relfilenode,例如base/16603/16384, 表对应数据文件的相对路径查找可以通过pg_relation_filepath('tablename')查询。

    输入参数

    blkno

    bigint

    • -1 解析所有block页面。
    • 0-MaxBlocNumber 解析指定的block页面。

    输入参数

    reltype

    text

    表类型,目前仅支持ustore数据表,取值为uheap。

    输入参数

    rmem

    boolean

    • false
    • true

    目前仅支持false,从磁盘文件上解析对应的页面。

    输出参数

    output

    text

    解析结果文件的绝对路径。

posted @ 2024-07-31 10:01  openGauss-bot  阅读(15)  评论(0)    收藏  举报