
# GAUSS-02021 -- GAUSS-02030
GAUSS-02021: "Unexpected seek in the walreceiver buffer. xlogrecptr is (%u:%u) but local xlogptr is (%u:%u)."
SQLSTATE: XX000
错误原因：当前收到的日志位置和buffer中可以写入的日志位置不匹配。
解决办法：重新建立主备关系，备机会以最后的有效日志段重新进行同步。
GAUSS-02022: "rm xlog command is not from primary,peer_role=%d"
SQLSTATE: XX000
错误原因：系统内部错误。
解决办法：请联系技术支持工程师提供技术支持。
GAUSS-02023: "return type must be a row type"
SQLSTATE: XX000
错误原因：构建的元组描述符不是一个行结果信息。
解决办法：重新执行查询，如果仍然是报错，请联系技术支持工程师提供技术支持。
GAUSS-02024: "cannot use a replication slot created for changeset extraction for streaming replication"
SQLSTATE: 55000
错误原因：主备replication slot不会指定特定的database，逻辑slot指定。
解决办法：根据报错的信息，请联系技术支持工程师提供技术支持。
GAUSS-02025: "cannot handle changeset extraction yet"
SQLSTATE: XX000
错误原因：系统内部错误。
解决办法：请联系技术支持工程师提供技术支持。
GAUSS-02026: "requested WAL segment %s has already been removed"
SQLSTATE: XX000
错误原因：备机/从备请求的日志在主机上已经被删除了。
解决办法：检查主机实例的pg_xlog目录，确定是否存在名字不连续的日志。需要去重建备机或重启从备，集群环境下，CM会自动重建备机。
GAUSS-02027: "could not open file '%s' (log file %u, segment %u): %m"
SQLSTATE: XX000
错误原因：无法打开特定的日志段文件。
解决办法：检查实例的pg_xlog目录，确认当前打开的文件是否存在，权限是否正确。根据具体的日志错误码进行处理。
GAUSS-02028: "could not read from log file %u, segment %u, offset %u, length %lu: %m"
SQLSTATE: XX000
错误原因：无法读取特定的日志段文件。
解决办法：检查实例的pg_xlog目录，确认当前读取的文件是否存在，权限是否正确。根据具体的日志错误码进行处理。
GAUSS-02030: "%u/%u/%u invalid bcm buffer %u"
SQLSTATE: XX000
错误原因：无法读取到指定的BCM buffer。
解决办法：通过检查日志以及数据文件，确认是否存在异常删除的情况。重新启动实例。
