↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

百科 / SQL 状态码 / Class HV 外部数据包装器错误(SQL/MED)

HV00P fdw_no_schemas

HV00P — fdw_no_schemas

ERROR 源码确认 参考 未实测

条件名
fdw_no_schemas
宏名称
ERRCODE_FDW_NO_SCHEMAS
最早已知存在
9.1.0
状态
有效

手册收录:9.1、9.2、9.3、9.4、9.5、9.6、10、11、12、13、14、15、16、17、18、19、20。此处仅表示同版本手册收录,运行证据仍以原核验构建为准。

版本覆盖

  1. 18
  2. 17
  3. 16
  4. 15
  1. 14
  2. 13
  3. 12
  4. 11
  5. 10
  6. 9.6
  7. 9.5
  8. 9.4
  9. 9.3
  10. 9.2
  11. 9.1
  12. 9.0
  1. 19 rc
  2. 20 dev

版本条依据已采样构建显示;灰色版本可能尚未采样,悬停可查看。手册链接随版本选择,源码和运行证据保持原核验构建。

HV00P — fdw_no_schemas

速览 {#at-a-glance}

当选定的 FDW 没有 ImportForeignSchema 回调时,核心的 IMPORT FOREIGN SCHEMA 命令会产生 HV00P。它表示包装器不支持该导入机制,不表示远端模式为空。

含义与消息 {#meaning}

当 fdw_routine->ImportForeignSchema 为空时,核心路径以 ERROR: foreign-data wrapper "%s" does not support IMPORT FOREIGN SCHEMA 报告。包装器名称是动态字段;此时未必已经查询远端模式。

诊断 {#diagnosis}

确认 SERVER 子句中的 FDW,并检查其 handler 是否实现 ImportForeignSchema。将这种能力缺失与 HV00Q 区分开;后者是 postgres_fdw 支持导入却找不到请求的远端模式。

处理 {#response}

使用显式的 CREATE FOREIGN TABLE 定义,改用实现了模式导入的包装器,或为包装器增加受支持的回调。对同一个 handler 重复执行相同的 IMPORT FOREIGN SCHEMA 只会得到同一能力错误。

消息与诊断 {#messages}

确认的严重级别为 ERROR,该调用组没有 detail 或 hint。保留 fdwname、服务器身份和 handler 扩展版本。

版本 {#versions}

锁定的 9.1.0 及后续快照中已有 HV00P 条件定义,但这不表示 IMPORT FOREIGN SCHEMA 在 9.1 已存在。固定的 PostgreSQL 9.5.0 源码快照已经包含该命令及其 ImportForeignSchema 回调;上面的 18.6 路径是本文确认的当前消息实现。没有可用的 9.1 之前定义观察资料。

相关 {#related}

HV00Q 是 postgres_fdw 找不到远端模式;HV00D 是无效选项名称;HV000 是一般 FDW 错误。

来源 {#sources}

  • errcodes.txt — 定义,SHA-256 6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba。
  • foreigncmds.c — 回调检查与消息。
  • fdwapi.h — ImportForeignSchema 回调定义;SHA-256 572ba892e6435ca92d3b3bc84dde5bbd3160cc3a082693daab8daa835c4d2cd7。
  • REL9_5_0 快照中的 foreigncmds.c — 命令及回调的功能边界;SHA-256 d2ab3a8883ed1e27c38a0a7ff83f0fc9d493c488d7e30f56eef7d1ae449f9a16。
  • 结构化证据 — 来源路径和有界运行范围。

来源

证据

断言

每条断言都写明了是怎么核实的,以及它不覆盖什么。这一层是核验时留下的原始英文记录,照原样呈现,未经翻译。

  • HV00P is fdw_no_schemas in SQL/MED Class HV.

    核实方式Read the fixed definition row and macro.

    来源 来源:src/backend/utils/errcodes.txt @ REL_18_6

  • The core IMPORT FOREIGN SCHEMA command emits HV00P when the selected FDW handler has no ImportForeignSchema callback.

    核实方式Read the callback-null branch and handler definition.

    来源 来源:src/backend/commands/foreigncmds.c @ REL_18_6 · 来源:src/include/foreign/fdwapi.h @ REL_18_6

  • The IMPORT FOREIGN SCHEMA command and its ImportForeignSchema handler callback are present in the fixed PostgreSQL 9.5.0 source snapshot; the 9.1.0 directory observation for HV00P is a condition-definition boundary, not evidence that this command existed in 9.1.

    核实方式Read the fixed REL9_5_0 foreigncmds.c command path and callback invocation.

    不覆盖This establishes presence in the REL9_5_0 source snapshot; it does not claim the exact development commit or behavior of every wrapper before or after that snapshot.

    来源 来源:src/backend/commands/foreigncmds.c @ REL9_5_0

报文模板

源码里的格式串,不是某一次运行的输出。%s 之类是占位符,实际报文会填入对象名与取值。适用范围一栏是核验时留下的原始英文记录,未经翻译。

主消息 · observed foreign-data wrapper "%s" does not support IMPORT FOREIGN SCHEMA

来源: 来源:src/backend/commands/foreigncmds.c @ REL_18_6

同类 SQL 状态码

状态码 条件名 宏名称 严重等级 版本
Class HV 外部数据包装器错误(SQL/MED) Foreign Data Wrapper Error (SQL/MED) 27 个 ↗
HV000 fdw_error ERRCODE_FDW_ERROR ERROR 9.1.0 起已知
外部数据包装器的通用错误,需看包装器诊断。 有效
HV001 fdw_out_of_memory ERRCODE_FDW_OUT_OF_MEMORY ERROR 9.1.0 起已知
包装器分配内存失败,如获取 libpq 默认选项时。 有效
HV002 fdw_dynamic_parameter_value_needed ERRCODE_FDW_DYNAMIC_PARAMETER_VALUE_NEEDED ERROR 9.1.0 起已知
包装器缺少必需的参数值,如未给 filename。 有效
HV004 fdw_invalid_data_type ERRCODE_FDW_INVALID_DATA_TYPE ERROR 9.1.0 起已知
包装器无法使用该数据类型,类型映射不匹配。 有效
HV005 fdw_column_name_not_found ERRCODE_FDW_COLUMN_NAME_NOT_FOUND ERROR 9.1.0 起已知
包装器在远端或描述符中找不到该外部列名。 有效
HV006 fdw_invalid_data_type_descriptors ERRCODE_FDW_INVALID_DATA_TYPE_DESCRIPTORS ERROR 9.1.0 起已知
包装器的数据类型描述符不一致或不可用。 有效
HV007 fdw_invalid_column_name ERRCODE_FDW_INVALID_COLUMN_NAME ERROR 9.1.0 起已知
传给包装器的列名无效,不符合命名规则。 有效
HV008 fdw_invalid_column_number ERRCODE_FDW_INVALID_COLUMN_NUMBER ERROR 9.1.0 起已知
包装器描述符收到超出范围的列序号。 有效
HV009 fdw_invalid_use_of_null_pointer ERRCODE_FDW_INVALID_USE_OF_NULL_POINTER ERROR 9.1.0 起已知
包装器边界上非法使用了空指针。 有效
HV00A fdw_invalid_string_format ERRCODE_FDW_INVALID_STRING_FORMAT ERROR 9.1.0 起已知
包装器无法接受该字符串的格式。 有效
HV00B fdw_invalid_handle ERRCODE_FDW_INVALID_HANDLE ERROR 9.1.0 起已知
包装器收到未知、已关闭或无效的句柄。 有效
HV00C fdw_invalid_option_index ERRCODE_FDW_INVALID_OPTION_INDEX ERROR 9.1.0 起已知
包装器处理自身选项数组时收到无效索引。 有效
HV00D fdw_invalid_option_name ERRCODE_FDW_INVALID_OPTION_NAME ERROR 9.1.0 起已知
当前上下文不接受该外部数据包装器选项名。 有效
HV00J fdw_option_name_not_found ERRCODE_FDW_OPTION_NAME_NOT_FOUND ERROR 9.1.0 起已知
dblink 连接选项不在接受的选项集合中。 有效
HV00K fdw_reply_handle ERRCODE_FDW_REPLY_HANDLE ERROR 9.1.0 起已知
包装器读取回复时收到无效的回复句柄。 有效
HV00L fdw_unable_to_create_execution ERRCODE_FDW_UNABLE_TO_CREATE_EXECUTION ERROR 9.1.0 起已知
包装器准备执行时无法创建执行对象。 有效
HV00M fdw_unable_to_create_reply ERRCODE_FDW_UNABLE_TO_CREATE_REPLY ERROR 9.1.0 起已知
包装器无法创建存放结果的回复对象。 有效
HV00N fdw_unable_to_establish_connection ERRCODE_FDW_UNABLE_TO_ESTABLISH_CONNECTION ERROR 9.1.0 起已知
包装器无法与外部数据源建立连接。 有效
HV00P fdw_no_schemas ERRCODE_FDW_NO_SCHEMAS ERROR 9.1.0 起已知
包装器不支持 IMPORT FOREIGN SCHEMA 导入。 有效
HV00Q fdw_schema_not_found ERRCODE_FDW_SCHEMA_NOT_FOUND ERROR 9.1.0 起已知
IMPORT FOREIGN SCHEMA 找不到请求的远端模式。 有效
HV00R fdw_table_not_found ERRCODE_FDW_TABLE_NOT_FOUND ERROR 9.1.0 起已知
包装器在外部数据源中找不到请求的表。 有效
HV010 fdw_function_sequence_error ERRCODE_FDW_FUNCTION_SEQUENCE_ERROR ERROR 9.1.0 起已知
包装器的函数被以无效的顺序调用。 有效
HV014 fdw_too_many_handles ERRCODE_FDW_TOO_MANY_HANDLES ERROR 9.1.0 起已知
包装器的句柄数量达到上限。 有效
HV021 fdw_inconsistent_descriptor_information ERRCODE_FDW_INCONSISTENT_DESCRIPTOR_INFORMATION ERROR 9.1.0 起已知
包装器描述符中的信息互相不一致。 有效
HV024 fdw_invalid_attribute_value ERRCODE_FDW_INVALID_ATTRIBUTE_VALUE ERROR 9.1.0 起已知
包装器拒绝了某个属性值,取值无效。 有效
HV090 fdw_invalid_string_length_or_buffer_length ERRCODE_FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH ERROR 9.1.0 起已知
包装器边界的字符串或缓冲区长度无效。 有效
HV091 fdw_invalid_descriptor_field_identifier ERRCODE_FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER ERROR 9.1.0 起已知
包装器无法使用该描述符字段标识符。 有效