GQLSTATUS 错误代码列表
以下页面提供了 Neo4j 中所有 GQLSTATUS 服务器错误代码的概述。Neo4j 中的所有错误都具有严重级别 ERROR
。
请注意,GQLSTATUS 代码保持稳定(对其进行的任何更改都是破坏性的),但与这些代码相关的状态描述的更改并非破坏性,并且可能随时发生。因此,不建议解析状态描述或将其集成到脚本中。 |
连接异常
当客户端(例如 Browser/Bloom/Cypher Shell)由于各种原因(例如网络问题、服务器端路由被禁用或数据库不可用等)无法连接到服务器时,会发生连接异常。
08N01
- 状态描述
-
错误:连接异常 - 无法写入数据库。无法在此服务器上写入数据库
{ $db }
。服务器端路由已禁用。请直接连接到数据库 leader,或通过设置 '{ $cfgSetting }=true' 启用服务器端路由。
08N02
- 状态描述
-
错误:连接异常 - 无法连接到数据库。无法连接到数据库
{ $db }
。服务器端路由已禁用。请直接连接到{ $db }
,或通过设置 '{ $cfgSetting }=true' 启用服务器端路由。 - 错误描述示例
-
错误:连接异常 - 无法路由到数据库。无法连接到数据库
my_db
。服务器端路由已禁用。请直接连接到my_db
,或通过设置 'dbms.routing.enabled=true' 启用服务器端路由。
数据异常
当客户端请求包含错误的格式、类型或其他不受支持的输入时,会发生数据库异常。例如,与现有约束冲突的数据和约束创建、非可存储类型的属性以及包含无效组件的空间和时间值。
22N03
- 状态描述
-
错误:数据异常 - 指定的数值超出范围。期望
{ $component }
的类型为{ $valueType }
且范围在{ $lower }
到{ $upper }
之间,但实际值为{ $value }
。
22N10
- 状态描述
-
错误:数据异常 - 无效的预解析器选项值。无效的预解析器选项,指定的值
{ $input }
对于选项{ $option }
无效。有效选项为:{ $optionList }
。
22N20
- 状态描述
-
错误:数据异常 - 无效的空间值维度。不能使用
{ $dim1 }D
坐标参考系统 (CRS) 和{ $value }
坐标创建 POINT。请改用等效的{ $dim2 }D
坐标参考系统。
22N26
- 状态描述
-
错误:数据异常 - 不支持的舍入模式。未知的舍入模式。有效值为:
CEILING
,FLOOR
,UP
,DOWN
,HALF_EVEN
,HALF_UP
,HALF_DOWN
,UNNECESSARY
。
22N35
- 状态描述
-
错误:数据异常 - 无效日期格式。无法将
{ $input }
解析为 DATE。日历日期需要使用格式 'YYYY-MM' 指定,而序数日期需要使用格式 'YYYY-DDD' 指定。
22N47
- 状态描述
-
错误:数据异常 - 无效的并行运行时配置。未为并行运行时配置任何 worker。请将 'server.cypher.parallel.worker_limit' 设置为更大的值。
22N49
- 状态描述
-
错误:数据异常 - CSV 缓冲区大小溢出。无法读取大于设置的缓冲区大小的 CSV 字段。请确保字段没有未终止的引号,或通过 'dbms.import.csv.buffer_size' 增加缓冲区大小。
22N77
- 状态描述
-
错误:数据异常 - 属性存在性验证失败。具有
{ $tokenType }
{ $token }
的{ $entityType }
({ $entityId }
) 必须具有以下属性:{ $propKeyList }
。
22N78
- 状态描述
-
错误:数据异常 - 属性类型验证失败。具有
{ $tokenType }
{ $token }
的{ $entityType }
({ $entityId }
) 的属性$propKey
的值类型必须是{ $valueType }
。
22NA6
- 状态描述
-
错误:数据异常 - 涉及 IS NOT NULL 的无效的基于属性的访问控制规则。属性值访问规则模式
{ $pred }
总是评估为 'NULL'。请改用 'IS NOT NULL'。
无效的事务状态
语法错误或访问规则冲突
当 Cypher 查询包含无效语法或客户端请求违反访问规则时(例如查询尝试访问没有足够权限的数据库等),会发生语法错误或访问规则冲突错误。
42I13
- 状态描述
-
错误:语法错误或访问规则冲突 - 无效的过程或函数参数数量。过程或函数调用未提供所需数量的参数;期望
{ $count1 }
,但实际获取到{ $count2 }
。过程或函数{ $procFun }
的签名是:{ $sig }
。
42I25
- 状态描述
-
错误:语法错误或访问规则冲突 - 无效使用
CALL IN TRANSACTIONS
。在 write 子句之后不支持 'CALL { … } IN TRANSACTIONS'。
42N05
- 状态描述
-
错误:语法错误或访问规则冲突 - 不支持访问标准数据库。连接到复合会话数据库
{ $db2 }
时无法访问由{ $db1 }
标识的数据库。请直接连接到{ $db3 }
或在复合数据库中创建别名。
42N31
- 状态描述
-
错误:语法错误或访问规则冲突 - 指定的数值超出范围。期望
{ $component }
的类型为{ $valueType }
且范围在{ $lower }
到{ $upper }
之间,但实际值为{ $value }
。
42N73
- 状态描述
-
错误:语法错误或访问规则冲突 - USE 子句位置无效。USE 子句必须是查询的第一个子句或 '… UNION …' 的操作数。在 CALL 子查询中,如果第一个子句是导入 WITH,它也可以是第二个子句。
42N74
- 状态描述
-
错误:语法错误或访问规则冲突 - 无效的嵌套 USE 子句。无法访问
{ $db1 }
和{ $db2 }
。子 USE 子句必须与其父查询的目标图相同。请改在单独的(子)查询中运行。
42N77
- 状态描述
-
错误:语法错误或访问规则冲突 - 缺少提示谓词。无法满足提示
{ $hint }
。查询中不包含与变量{ $variable }
上{ $entityType }
兼容的谓词。
通用处理异常
当发生通用处理错误时,例如内部错误、死锁、执行失败、无效的服务器状态转换、约束创建或删除失败等,会发生通用处理异常。
50N42
- 状态描述
-
错误:通用处理异常 - 意外错误。发生了意外错误。请参阅调试日志了解详情。
50N42 是没有 GQL 对象的异常的默认 GQLSTATUS 代码。有关更多信息,请参阅 操作手册 → 使用 JSON 格式记录查询日志。 |
系统配置或操作异常
当系统配置或操作出现错误时,例如过程注册失败、缺少类字段注解、不支持的可注入组件类型、重复字段名称、无效 Map 键类型等,会发生系统配置或操作异常。
51N01
- 状态描述
-
错误:系统配置或操作异常 - 类字段注解应为 public、non-final 和 non-static。类
{ $procClass }
中的字段{ $procField }
被注解为 '@Context' 字段,但被声明为 static。'@Context' 字段必须是 public、non-final 和 non-static。
51N02
- 状态描述
-
错误:系统配置或操作异常 - 不支持的可注入组件类型。无法为过程
{ $procClass }
设置注入。字段{ $procField }
的类型为{ $procFieldType }
,这不是受支持的可注入组件。
51N05
- 状态描述
-
错误:系统配置或操作异常 - 类字段应为 public 和 non-final。类
{ $procClass }
上的字段{ $procField }
必须声明为 non-final 和 public。
51N08
- 状态描述
-
错误:系统配置或操作异常 - 需要且仅需要一个 @UserAggregationResult 方法和一个 @UserAggregationUpdate 方法。类
{ $procClass }
必须包含且仅包含一个 '@UserAggregationResult' 方法和一个 '@UserAggregationUpdate' 方法。
51N09
- 状态描述
-
错误:系统配置或操作异常 - @UserAggregationUpdate 方法必须是 public 和 void。类
{ $procClass }
的 '@UserAggregationUpdate' 方法{ $procMethod }
必须是 public 且返回类型为 'void'。
51N17
- 状态描述
-
错误:系统配置或操作异常 - 无效的过程或函数名称。过程和函数不能定义在根命名空间中,或使用保留命名空间。请改用包名(例如,org.example.com.
{ $procFun }
)。
51N22
- 状态描述
-
错误:系统配置或操作异常 - 穷举最短路径搜索已禁用。为给定模式查找最短路径需要穷举搜索。要启用穷举搜索,请将 'cypher.forbid_exhaustive_shortestpath' 设置为 false。
51N23
- 状态描述
-
错误:系统配置或操作异常 - 循环最短路径搜索已禁用。当起始节点和结束节点相同时,无法找到最短路径。要启用此行为,请将 'dbms.cypher.forbid_shortestpath_common_nodes' 设置为 false。
51N56
- 状态描述
-
错误:系统配置或操作异常 - 拓扑超出范围。
{ $serverType }
种子服务器的数量{ $count1 }
大于所需{ $allocType }
分配数量{ $count2 }
。