GaussDB-SPM计划管理函数

38 阅读3分钟

GaussDB-SPM计划管理函数

当前SPM计划管理特性在分布式下不支持,所以在分布式下调用下面的这些函数都会给出分布式下不支持的错误提示。

  • GS_SPM_EVOLUTE_PLAN(sql_hash, plan_hash)

    描述: GS_SPM_EVOLUTE_PLAN属于DBE_SQL_UTIL schema,是SPM特性用于计划演进的接口函数。

    参数: 参数介绍见表1

    参数类型描述取值范围
    sql_hashIN bigintSQL文本的hash值。-
    plan_hashIN bigintSQL计划outline文本的hash值。-
    evolute_statusOUT boolean演进行为是否正常完成:t表示正常;异常会报错。t/f

    返回值类型: boolean

  • GS_SPM_SET_PLAN_STATUS(sql_hash, plan_hash, plan_status)

    描述: GS_SPM_SET_PLAN_STATUS属于DBE_SQL_UTIL schema,它是SPM特性用于修改baseline状态的接口函数。

    参数:参数介绍见表2

    参数类型描述取值范围
    sql_hashIN bigintSQL文本的hash值。-
    plan_hashIN bigintSQL计划outline文本的hash值。-
    plan_statusIN text计划的状态。- ACC:表示已经接受的计划。
    • UNACC:表示未接受的计划。
    • FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 | | execute_status | OUT boolean | 修改计划状态行为是否正常完成:t表示正常;异常会报错。 | t/f |

    返回值类型:boolean

  • GS_SPM_DISPLAY_PLANS(sql_hash)

    描述: GS_SPM_DISPLAY_PLANS属于DBE_SQL_UTIL schema,它是SPM特性用于查看单条SQL所有baseline的接口函数。

    参数: 参数介绍见表3

    参数类型描述取值范围
    sql_hashIN bigintSQL唯一标识。-
    sql_hashOUT bigintSQL文本的hash值。-
    plan_hashOUT bigintSQL计划outline文本的hash值。-
    outlineOUT text当前计划对应outline的所有Hint的组合字符串。-
    costOUT double当前计划的代价。-
    statusOUT text当前计划的状态。- ACC:表示已经接受的计划。
    • UNACC:表示未接受的计划。
    • FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 | | gplan | OUT boolean | 当前计划是否是gplan。t表示是gplan;异常会报错。 | t/f |

    返回值类型: bigint, text, double, text, boolean

  • GS_SPM_RELOAD_PLAN(sql_hash,plan_hash)

    描述: GS_SPM_RELOAD_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于加载baseline系统表中某baseline到SPM global cache中的接口函数。

    参数: 参数介绍见表4

    参数类型描述取值范围
    sql_hashIN bigintSQL文本的hash值。-
    plan_hashIN bigintSQL计划outline文本的hash值。-
    execute_statusOUT booleanbaseine的加载行为是否正常完成:t表示正常;异常会报错。t/f

    返回值类型: boolean

  • GS_SPM_VALIDATE_PLAN(sql_hash, plan_hash)

    描述:GS_SPM_VALIDATE_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于计划可用性验证的接口函数。

    参数: 参数介绍见表5

    参数类型取值范围
    sql_hashIN bigintSQL文本的hash值。-
    plan_hashIN bigintSQL计划outline文本的hash值。-
    execute_statusOUT boolean被验证的计划是否可用:t:被验证的计划可用;f: 被验证的计划不可用t/f

    返回值类型:boolean

  • GS_SPM_DELETE_PLAN(sql_hash, plan_hash)

    描述: GS_SPM_DELETE_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于计划删除baseline的接口函数。

    参数: 参数介绍见表6

    参数类型描述取值范围
    sql_hashIN bigintSQL文本的hash值。-
    plan_hashIN bigintSQL计划outline文本的hash值。-
    execute_statusOUT boolean计划删除行为是否正常完成:t表示正常;异常会报错。t/f

    返回值类型: boolean

更多详情请参考GaussDB 文档中心:doc.hcs.huawei.com/db/zh-cn/ga…