24074 lines
		
	
	
		
			1.4 MiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			24074 lines
		
	
	
		
			1.4 MiB
		
	
	
	
	
	
	
	
 | 
						|
// DO NOT EDIT. This file is automatically generated from `ob_errno.def'.
 | 
						|
 | 
						|
// Copyright 2016 Alibaba Inc. All Rights Reserved.
 | 
						|
// This program is free software; you can redistribute it and/or
 | 
						|
// modify it under the terms of the GNU General Public License
 | 
						|
// version 2 as published by the Free Software Foundation.
 | 
						|
// ob_errno.h
 | 
						|
//   Author:
 | 
						|
//   Normalizer:
 | 
						|
 | 
						|
#define USING_LOG_PREFIX LIB_MYSQLC
 | 
						|
 | 
						|
// DO NOT DELETE `#include <iostream>` !!!
 | 
						|
// fix: ob_error.cpp file requires at least 20g memory for release(-O2) compilation
 | 
						|
// and will jam when asan turned on
 | 
						|
// it can be solved by introducing <iostream> header file currently
 | 
						|
// TODO: it is clang bug and the specific reason to be further located
 | 
						|
// issue: https://work.aone.alibaba-inc.com/issue/39615894
 | 
						|
#include <iostream>
 | 
						|
 | 
						|
#include "ob_errno.h"
 | 
						|
#ifndef __ERROR_CODE_PARSER_
 | 
						|
#include "ob_define.h"
 | 
						|
#include "lib/utility/ob_edit_distance.h"
 | 
						|
#else
 | 
						|
#define OB_LIKELY
 | 
						|
#define OB_UNLIKELY
 | 
						|
#include <string.h>
 | 
						|
#endif
 | 
						|
using namespace oceanbase::common;
 | 
						|
 | 
						|
struct _error {
 | 
						|
  public:
 | 
						|
    const char *error_name;
 | 
						|
    const char *error_cause;
 | 
						|
    const char *error_solution;
 | 
						|
    int         mysql_errno;
 | 
						|
    const char *sqlstate;
 | 
						|
    const char *str_error;
 | 
						|
    const char *str_user_error;
 | 
						|
    int         oracle_errno;
 | 
						|
    const char *oracle_str_error;
 | 
						|
    const char *oracle_str_user_error;
 | 
						|
};
 | 
						|
static _error _error_default;
 | 
						|
static _error const *_errors[OB_MAX_ERROR_CODE] = {NULL};
 | 
						|
static const _error _error_OB_ERROR = {
 | 
						|
      .error_name            = "OB_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Common error",
 | 
						|
      .str_user_error        = "Common error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4000, Common error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4000, Common error"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_TYPE_ERROR = {
 | 
						|
      .error_name            = "OB_OBJ_TYPE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY004",
 | 
						|
      .str_error             = "Object type error",
 | 
						|
      .str_user_error        = "Object type error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4001, Object type error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4001, Object type error"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_ARGUMENTS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid argument",
 | 
						|
      .str_user_error        = "Incorrect arguments to %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4002, Invalid argument",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4002, Incorrect arguments to %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARRAY_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ARRAY_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Array index out of range",
 | 
						|
      .str_user_error        = "Array index out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4003, Array index out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4003, Array index out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_LISTEN_ERROR = {
 | 
						|
      .error_name            = "OB_SERVER_LISTEN_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08S01",
 | 
						|
      .str_error             = "Failed to listen to the port",
 | 
						|
      .str_user_error        = "Failed to listen to the port",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4004, Failed to listen to the port",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4004, Failed to listen to the port"
 | 
						|
};
 | 
						|
static const _error _error_OB_INIT_TWICE = {
 | 
						|
      .error_name            = "OB_INIT_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The object is initialized twice",
 | 
						|
      .str_user_error        = "The object is initialized twice",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4005, The object is initialized twice",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4005, The object is initialized twice"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_INIT = {
 | 
						|
      .error_name            = "OB_NOT_INIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The object is not initialized",
 | 
						|
      .str_user_error        = "The object is not initialized",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4006, The object is not initialized",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4006, The object is not initialized"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_SUPPORTED = {
 | 
						|
      .error_name            = "OB_NOT_SUPPORTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NOT_SUPPORTED_YET,
 | 
						|
      .sqlstate              = "0A000",
 | 
						|
      .str_error             = "Not supported feature or function",
 | 
						|
      .str_user_error        = "%s not supported",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4007, Not supported feature or function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4007, %s not supported"
 | 
						|
};
 | 
						|
static const _error _error_OB_ITER_END = {
 | 
						|
      .error_name            = "OB_ITER_END",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "End of iteration",
 | 
						|
      .str_user_error        = "End of iteration",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4008, End of iteration",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4008, End of iteration"
 | 
						|
};
 | 
						|
static const _error _error_OB_IO_ERROR = {
 | 
						|
      .error_name            = "OB_IO_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "58030",
 | 
						|
      .str_error             = "IO error",
 | 
						|
      .str_user_error        = "IO error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4009, IO error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4009, IO error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERROR_FUNC_VERSION = {
 | 
						|
      .error_name            = "OB_ERROR_FUNC_VERSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Wrong RPC command version",
 | 
						|
      .str_user_error        = "Wrong RPC command version",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4010, Wrong RPC command version",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4010, Wrong RPC command version"
 | 
						|
};
 | 
						|
static const _error _error_OB_PACKET_NOT_SENT = {
 | 
						|
      .error_name            = "OB_PACKET_NOT_SENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can not send packet",
 | 
						|
      .str_user_error        = "Can not send packet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4011, Can not send packet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4011, Can not send packet"
 | 
						|
};
 | 
						|
static const _error _error_OB_TIMEOUT = {
 | 
						|
      .error_name            = "OB_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Timeout",
 | 
						|
      .str_user_error        = "Timeout, query has reached the maximum query timeout: %ld(us), maybe you can adjust the session variable ob_query_timeout or query_timeout hint, and try again.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4012, Timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4012, Timeout, query has reached the maximum query timeout: %ld(us), maybe you can adjust the session variable ob_query_timeout or query_timeout hint, and try again."
 | 
						|
};
 | 
						|
static const _error _error_OB_ALLOCATE_MEMORY_FAILED = {
 | 
						|
      .error_name            = "OB_ALLOCATE_MEMORY_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY001",
 | 
						|
      .str_error             = "No memory or reach tenant memory limit",
 | 
						|
      .str_user_error        = "No memory or reach tenant memory limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4013, No memory or reach tenant memory limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4013, No memory or reach tenant memory limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_INNER_STAT_ERROR = {
 | 
						|
      .error_name            = "OB_INNER_STAT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Inner state error",
 | 
						|
      .str_user_error        = "Inner state error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4014, Inner state error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4014, Inner state error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYS = {
 | 
						|
      .error_name            = "OB_ERR_SYS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "System error",
 | 
						|
      .str_user_error        = "System error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4015, System error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4015, System error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNEXPECTED = {
 | 
						|
      .error_name            = "OB_ERR_UNEXPECTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Internal error",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4016, Internal error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4016, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ENTRY_EXIST = {
 | 
						|
      .error_name            = "OB_ENTRY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Entry already exist",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4017, Entry already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4017, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ENTRY_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ENTRY_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Entry not exist",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4018, Entry not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4018, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_SIZE_OVERFLOW = {
 | 
						|
      .error_name            = "OB_SIZE_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Size overflow",
 | 
						|
      .str_user_error        = "Size overflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4019, Size overflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4019, Size overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_REF_NUM_NOT_ZERO = {
 | 
						|
      .error_name            = "OB_REF_NUM_NOT_ZERO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Reference count is not zero",
 | 
						|
      .str_user_error        = "Reference count is not zero",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4020, Reference count is not zero",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4020, Reference count is not zero"
 | 
						|
};
 | 
						|
static const _error _error_OB_CONFLICT_VALUE = {
 | 
						|
      .error_name            = "OB_CONFLICT_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Conflict value",
 | 
						|
      .str_user_error        = "Conflict value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4021, Conflict value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4021, Conflict value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ITEM_NOT_SETTED = {
 | 
						|
      .error_name            = "OB_ITEM_NOT_SETTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Item not set",
 | 
						|
      .str_user_error        = "Item not set",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4022, Item not set",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4022, Item not set"
 | 
						|
};
 | 
						|
static const _error _error_OB_EAGAIN = {
 | 
						|
      .error_name            = "OB_EAGAIN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Try again",
 | 
						|
      .str_user_error        = "Try again",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4023, Try again",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4023, Try again"
 | 
						|
};
 | 
						|
static const _error _error_OB_BUF_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_BUF_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Buffer not enough",
 | 
						|
      .str_user_error        = "Buffer not enough",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4024, Buffer not enough",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4024, Buffer not enough"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTIAL_FAILED = {
 | 
						|
      .error_name            = "OB_PARTIAL_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partial failed",
 | 
						|
      .str_user_error        = "Partial failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4025, Partial failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4025, Partial failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_READ_NOTHING = {
 | 
						|
      .error_name            = "OB_READ_NOTHING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_FETCH_NO_DATA,
 | 
						|
      .sqlstate              = "02000",
 | 
						|
      .str_error             = "No data - zero rows fetched, selected, or processed",
 | 
						|
      .str_user_error        = "No data - zero rows fetched, selected, or processed",
 | 
						|
      .oracle_errno          = 1403,
 | 
						|
      .oracle_str_error      = "ORA-01403: no data found",
 | 
						|
      .oracle_str_user_error = "ORA-01403: no data found"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_FILE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_FILE_NOT_FOUND,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "File not exist",
 | 
						|
      .str_user_error        = "File not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4027, File not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4027, File not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_DISCONTINUOUS_LOG = {
 | 
						|
      .error_name            = "OB_DISCONTINUOUS_LOG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log entry not continuous",
 | 
						|
      .str_user_error        = "Log entry not continuous",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4028, Log entry not continuous",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4028, Log entry not continuous"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEMA_ERROR = {
 | 
						|
      .error_name            = "OB_SCHEMA_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Schema error",
 | 
						|
      .str_user_error        = "Schema error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4029, Schema error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4029, Schema error"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_OUT_OF_MEM = {
 | 
						|
      .error_name            = "OB_TENANT_OUT_OF_MEM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Over tenant memory limits",
 | 
						|
      .str_user_error        = "Over tenant memory limits",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4030, Over tenant memory limits",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4030, Over tenant memory limits"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNKNOWN_OBJ = {
 | 
						|
      .error_name            = "OB_UNKNOWN_OBJ",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY004",
 | 
						|
      .str_error             = "Unknown object",
 | 
						|
      .str_user_error        = "Unknown object",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4031, Unknown object",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4031, Unknown object"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_MONITOR_DATA = {
 | 
						|
      .error_name            = "OB_NO_MONITOR_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "02000",
 | 
						|
      .str_error             = "No monitor data",
 | 
						|
      .str_user_error        = "No monitor data",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4032, No monitor data",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4032, No monitor data"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERIALIZE_ERROR = {
 | 
						|
      .error_name            = "OB_SERIALIZE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Serialize error",
 | 
						|
      .str_user_error        = "Serialize error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4033, Serialize error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4033, Serialize error"
 | 
						|
};
 | 
						|
static const _error _error_OB_DESERIALIZE_ERROR = {
 | 
						|
      .error_name            = "OB_DESERIALIZE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Deserialize error",
 | 
						|
      .str_user_error        = "Deserialize error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4034, Deserialize error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4034, Deserialize error"
 | 
						|
};
 | 
						|
static const _error _error_OB_AIO_TIMEOUT = {
 | 
						|
      .error_name            = "OB_AIO_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Asynchronous IO error",
 | 
						|
      .str_user_error        = "Asynchronous IO error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4035, Asynchronous IO error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4035, Asynchronous IO error"
 | 
						|
};
 | 
						|
static const _error _error_OB_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Need retry",
 | 
						|
      .str_user_error        = "Need retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4036, Need retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4036, Need retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_SSTABLE = {
 | 
						|
      .error_name            = "OB_TOO_MANY_SSTABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too many sstable",
 | 
						|
      .str_user_error        = "Too many sstable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4037, Too many sstable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4037, Too many sstable"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_MASTER = {
 | 
						|
      .error_name            = "OB_NOT_MASTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The observer or zone is not the master",
 | 
						|
      .str_user_error        = "The observer or zone is not the master",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4038, The observer or zone is not the master",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4038, The observer or zone is not the master"
 | 
						|
};
 | 
						|
static const _error _error_OB_KILLED_BY_THROTTLING = {
 | 
						|
      .error_name            = "OB_KILLED_BY_THROTTLING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Request has killed by sql throttle",
 | 
						|
      .str_user_error        = "Request has killed by sql throttle",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4039, Request has killed by sql throttle",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4039, Request has killed by sql throttle"
 | 
						|
};
 | 
						|
static const _error _error_OB_DECRYPT_FAILED = {
 | 
						|
      .error_name            = "OB_DECRYPT_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Decrypt error",
 | 
						|
      .str_user_error        = "Decrypt error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4041, Decrypt error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4041, Decrypt error"
 | 
						|
};
 | 
						|
static const _error _error_OB_USER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_USER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PASSWORD_NO_MATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Can not find any matching row in the user table",
 | 
						|
      .str_user_error        = "Can not find any matching row in the user table'%.*s'",
 | 
						|
      .oracle_errno          = 1918,
 | 
						|
      .oracle_str_error      = "ORA-01918: user does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01918: user '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_PASSWORD_WRONG = {
 | 
						|
      .error_name            = "OB_PASSWORD_WRONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ACCESS_DENIED_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Access denied for user",
 | 
						|
      .str_user_error        = "Access denied for user '%.*s'@'%.*s' (using password: %s)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4043, Access denied for user",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4043, Access denied for user '%.*s'@'%.*s' (using password: %s)"
 | 
						|
};
 | 
						|
static const _error _error_OB_SKEY_VERSION_WRONG = {
 | 
						|
      .error_name            = "OB_SKEY_VERSION_WRONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Wrong skey version",
 | 
						|
      .str_user_error        = "Wrong skey version",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4044, Wrong skey version",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4044, Wrong skey version"
 | 
						|
};
 | 
						|
static const _error _error_OB_PUSHDOWN_STATUS_CHANGED = {
 | 
						|
      .error_name            = "OB_PUSHDOWN_STATUS_CHANGED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "pushdown status changed",
 | 
						|
      .str_user_error        = "pushdown status changed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4045, pushdown status changed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4045, pushdown status changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_STORAGE_SCHEMA_INVALID = {
 | 
						|
      .error_name            = "OB_STORAGE_SCHEMA_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Storage schema is not valid",
 | 
						|
      .str_user_error        = "Storage schema is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4046, Storage schema is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4046, Storage schema is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_MEDIUM_COMPACTION_INFO_INVALID = {
 | 
						|
      .error_name            = "OB_MEDIUM_COMPACTION_INFO_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Medium compaction info is not valid",
 | 
						|
      .str_user_error        = "Medium compaction info is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4047, Medium compaction info is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4047, Medium compaction info is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_REGISTERED = {
 | 
						|
      .error_name            = "OB_NOT_REGISTERED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not registered",
 | 
						|
      .str_user_error        = "Not registered",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4048, Not registered",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4048, Not registered"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAITQUEUE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAITQUEUE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Task timeout and not executed",
 | 
						|
      .str_user_error        = "Task timeout and not executed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4049, Task timeout and not executed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4049, Task timeout and not executed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_THE_OBJECT = {
 | 
						|
      .error_name            = "OB_NOT_THE_OBJECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not the object",
 | 
						|
      .str_user_error        = "Not the object",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4050, Not the object",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4050, Not the object"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALREADY_REGISTERED = {
 | 
						|
      .error_name            = "OB_ALREADY_REGISTERED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Already registered",
 | 
						|
      .str_user_error        = "Already registered",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4051, Already registered",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4051, Already registered"
 | 
						|
};
 | 
						|
static const _error _error_OB_LAST_LOG_RUINNED = {
 | 
						|
      .error_name            = "OB_LAST_LOG_RUINNED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Corrupted log entry",
 | 
						|
      .str_user_error        = "Corrupted log entry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4052, Corrupted log entry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4052, Corrupted log entry"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_CS_SELECTED = {
 | 
						|
      .error_name            = "OB_NO_CS_SELECTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No Server selected",
 | 
						|
      .str_user_error        = "No Server selected",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4053, No Server selected",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4053, No Server selected"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_TABLETS_CREATED = {
 | 
						|
      .error_name            = "OB_NO_TABLETS_CREATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No tablets created",
 | 
						|
      .str_user_error        = "No tablets created",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4054, No tablets created",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4054, No tablets created"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ERROR = {
 | 
						|
      .error_name            = "OB_INVALID_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid entry",
 | 
						|
      .str_user_error        = "Invalid entry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4055, Invalid entry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4055, Invalid entry"
 | 
						|
};
 | 
						|
static const _error _error_OB_DECIMAL_OVERFLOW_WARN = {
 | 
						|
      .error_name            = "OB_DECIMAL_OVERFLOW_WARN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Decimal overflow warning",
 | 
						|
      .str_user_error        = "Decimal overflow warning",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4057, Decimal overflow warning",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4057, Decimal overflow warning"
 | 
						|
};
 | 
						|
static const _error _error_OB_DECIMAL_UNLEGAL_ERROR = {
 | 
						|
      .error_name            = "OB_DECIMAL_UNLEGAL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Decimal overflow error",
 | 
						|
      .str_user_error        = "Decimal overflow error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4058, Decimal overflow error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4058, Decimal overflow error"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_DIVIDE_ERROR = {
 | 
						|
      .error_name            = "OB_OBJ_DIVIDE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Divide error",
 | 
						|
      .str_user_error        = "Divide error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4060, Divide error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4060, Divide error"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_A_DECIMAL = {
 | 
						|
      .error_name            = "OB_NOT_A_DECIMAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not a decimal",
 | 
						|
      .str_user_error        = "Not a decimal",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4061, Not a decimal",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4061, Not a decimal"
 | 
						|
};
 | 
						|
static const _error _error_OB_DECIMAL_PRECISION_NOT_EQUAL = {
 | 
						|
      .error_name            = "OB_DECIMAL_PRECISION_NOT_EQUAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY104",
 | 
						|
      .str_error             = "Decimal precision error",
 | 
						|
      .str_user_error        = "Decimal precision error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4062, Decimal precision error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4062, Decimal precision error"
 | 
						|
};
 | 
						|
static const _error _error_OB_EMPTY_RANGE = {
 | 
						|
      .error_name            = "OB_EMPTY_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Empty range",
 | 
						|
      .str_user_error        = "Empty range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4063, Empty range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4063, Empty range"
 | 
						|
};
 | 
						|
static const _error _error_OB_SESSION_KILLED = {
 | 
						|
      .error_name            = "OB_SESSION_KILLED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Session killed",
 | 
						|
      .str_user_error        = "Session killed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4064, Session killed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4064, Session killed"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_NOT_SYNC = {
 | 
						|
      .error_name            = "OB_LOG_NOT_SYNC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log not sync",
 | 
						|
      .str_user_error        = "Log not sync",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4065, Log not sync",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4065, Log not sync"
 | 
						|
};
 | 
						|
static const _error _error_OB_DIR_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_DIR_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_READ_DIR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Directory not exist",
 | 
						|
      .str_user_error        = "Directory not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4066, Directory not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4066, Directory not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_SESSION_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_SESSION_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RPC session not found",
 | 
						|
      .str_user_error        = "RPC session not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4067, RPC session not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4067, RPC session not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_LOG = {
 | 
						|
      .error_name            = "OB_INVALID_LOG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid log",
 | 
						|
      .str_user_error        = "Invalid log",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4068, Invalid log",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4068, Invalid log"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_DATA = {
 | 
						|
      .error_name            = "OB_INVALID_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid data",
 | 
						|
      .str_user_error        = "Invalid data",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4070, Invalid data",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4070, Invalid data"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALREADY_DONE = {
 | 
						|
      .error_name            = "OB_ALREADY_DONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Already done",
 | 
						|
      .str_user_error        = "Already done",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4071, Already done",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4071, Already done"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANCELED = {
 | 
						|
      .error_name            = "OB_CANCELED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Operation canceled",
 | 
						|
      .str_user_error        = "Operation canceled",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4072, Operation canceled",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4072, Operation canceled"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_SRC_CHANGED = {
 | 
						|
      .error_name            = "OB_LOG_SRC_CHANGED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log source changed",
 | 
						|
      .str_user_error        = "Log source changed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4073, Log source changed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4073, Log source changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_NOT_ALIGN = {
 | 
						|
      .error_name            = "OB_LOG_NOT_ALIGN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log not aligned",
 | 
						|
      .str_user_error        = "Log not aligned",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4074, Log not aligned",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4074, Log not aligned"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_MISSING = {
 | 
						|
      .error_name            = "OB_LOG_MISSING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log entry missed",
 | 
						|
      .str_user_error        = "Log entry missed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4075, Log entry missed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4075, Log entry missed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NEED_WAIT = {
 | 
						|
      .error_name            = "OB_NEED_WAIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Need wait",
 | 
						|
      .str_user_error        = "Need wait",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4076, Need wait",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4076, Need wait"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_IMPLEMENT = {
 | 
						|
      .error_name            = "OB_NOT_IMPLEMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "0A000",
 | 
						|
      .str_error             = "Not implemented feature",
 | 
						|
      .str_user_error        = "Not implemented feature",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4077, Not implemented feature",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4077, Not implemented feature"
 | 
						|
};
 | 
						|
static const _error _error_OB_DIVISION_BY_ZERO = {
 | 
						|
      .error_name            = "OB_DIVISION_BY_ZERO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DIVISION_BY_ZERO,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Divided by zero",
 | 
						|
      .str_user_error        = "Divided by zero",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4078, Divided by zero",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4078, Divided by zero"
 | 
						|
};
 | 
						|
static const _error _error_OB_EXCEED_MEM_LIMIT = {
 | 
						|
      .error_name            = "OB_EXCEED_MEM_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY013",
 | 
						|
      .str_error             = "exceed memory limit",
 | 
						|
      .str_user_error        = "exceed memory limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4080, exceed memory limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4080, exceed memory limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESULT_UNKNOWN = {
 | 
						|
      .error_name            = "OB_RESULT_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown result",
 | 
						|
      .str_user_error        = "Unknown result",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4081, Unknown result",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4081, Unknown result"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_RESULT = {
 | 
						|
      .error_name            = "OB_NO_RESULT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "02000",
 | 
						|
      .str_error             = "No result",
 | 
						|
      .str_user_error        = "No result",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4084, No result",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4084, No result"
 | 
						|
};
 | 
						|
static const _error _error_OB_QUEUE_OVERFLOW = {
 | 
						|
      .error_name            = "OB_QUEUE_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Queue overflow",
 | 
						|
      .str_user_error        = "Queue overflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4085, Queue overflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4085, Queue overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ID_RANGE_NOT_CONTINUOUS = {
 | 
						|
      .error_name            = "OB_LOG_ID_RANGE_NOT_CONTINUOUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table log_id range no continuous",
 | 
						|
      .str_user_error        = "Table log_id range no continuous",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4090, Table log_id range no continuous",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4090, Table log_id range no continuous"
 | 
						|
};
 | 
						|
static const _error _error_OB_TERM_LAGGED = {
 | 
						|
      .error_name            = "OB_TERM_LAGGED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Term lagged",
 | 
						|
      .str_user_error        = "Term lagged",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4097, Term lagged",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4097, Term lagged"
 | 
						|
};
 | 
						|
static const _error _error_OB_TERM_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_TERM_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Term not match",
 | 
						|
      .str_user_error        = "Term not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4098, Term not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4098, Term not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_START_LOG_CURSOR_INVALID = {
 | 
						|
      .error_name            = "OB_START_LOG_CURSOR_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid log cursor",
 | 
						|
      .str_user_error        = "Invalid log cursor",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4099, Invalid log cursor",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4099, Invalid log cursor"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOCK_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_LOCK_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Lock not match",
 | 
						|
      .str_user_error        = "Lock not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4100, Lock not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4100, Lock not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_DEAD_LOCK = {
 | 
						|
      .error_name            = "OB_DEAD_LOCK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_LOCK_DEADLOCK,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Deadlock",
 | 
						|
      .str_user_error        = "Deadlock",
 | 
						|
      .oracle_errno          = 60,
 | 
						|
      .oracle_str_error      = "ORA-00060: deadlock detected while waiting for resource",
 | 
						|
      .oracle_str_user_error = "ORA-00060: deadlock detected while waiting for resource"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTIAL_LOG = {
 | 
						|
      .error_name            = "OB_PARTIAL_LOG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incomplete log entry",
 | 
						|
      .str_user_error        = "Incomplete log entry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4102, Incomplete log entry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4102, Incomplete log entry"
 | 
						|
};
 | 
						|
static const _error _error_OB_CHECKSUM_ERROR = {
 | 
						|
      .error_name            = "OB_CHECKSUM_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Data checksum error",
 | 
						|
      .str_user_error        = "Data checksum error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4103, Data checksum error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4103, Data checksum error"
 | 
						|
};
 | 
						|
static const _error _error_OB_INIT_FAIL = {
 | 
						|
      .error_name            = "OB_INIT_FAIL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Initialize error",
 | 
						|
      .str_user_error        = "Initialize error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4104, Initialize error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4104, Initialize error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROWKEY_ORDER_ERROR = {
 | 
						|
      .error_name            = "OB_ROWKEY_ORDER_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Rowkey order error",
 | 
						|
      .str_user_error        = "Rowkey order error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4105, Rowkey order error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4105, Rowkey order error"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_ENOUGH_STORE = {
 | 
						|
      .error_name            = "OB_NOT_ENOUGH_STORE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not enough commitlog store",
 | 
						|
      .str_user_error        = "not enough commitlog store",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4106, not enough commitlog store",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4106, not enough commitlog store"
 | 
						|
};
 | 
						|
static const _error _error_OB_BLOCK_SWITCHED = {
 | 
						|
      .error_name            = "OB_BLOCK_SWITCHED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "block switched when fill commitlog",
 | 
						|
      .str_user_error        = "block switched when fill commitlog",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4107, block switched when fill commitlog",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4107, block switched when fill commitlog"
 | 
						|
};
 | 
						|
static const _error _error_OB_PHYSIC_CHECKSUM_ERROR = {
 | 
						|
      .error_name            = "OB_PHYSIC_CHECKSUM_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Physic data checksum error",
 | 
						|
      .str_user_error        = "Physic data checksum error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4108, Physic data checksum error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4108, Physic data checksum error"
 | 
						|
};
 | 
						|
static const _error _error_OB_STATE_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_STATE_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Server state or role not the same as expected",
 | 
						|
      .str_user_error        = "Server state or role not the same as expected",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4109, Server state or role not the same as expected",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4109, Server state or role not the same as expected"
 | 
						|
};
 | 
						|
static const _error _error_OB_READ_ZERO_LOG = {
 | 
						|
      .error_name            = "OB_READ_ZERO_LOG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Read zero log",
 | 
						|
      .str_user_error        = "Read zero log",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4110, Read zero log",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4110, Read zero log"
 | 
						|
};
 | 
						|
static const _error _error_OB_BLOCK_NEED_FREEZE = {
 | 
						|
      .error_name            = "OB_BLOCK_NEED_FREEZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "block need freeze",
 | 
						|
      .str_user_error        = "block need freeze",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4111, block need freeze",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4111, block need freeze"
 | 
						|
};
 | 
						|
static const _error _error_OB_BLOCK_FROZEN = {
 | 
						|
      .error_name            = "OB_BLOCK_FROZEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "block frozen",
 | 
						|
      .str_user_error        = "block frozen",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4112, block frozen",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4112, block frozen"
 | 
						|
};
 | 
						|
static const _error _error_OB_IN_FATAL_STATE = {
 | 
						|
      .error_name            = "OB_IN_FATAL_STATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "In FATAL state",
 | 
						|
      .str_user_error        = "In FATAL state",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4113, In FATAL state",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4113, In FATAL state"
 | 
						|
};
 | 
						|
static const _error _error_OB_IN_STOP_STATE = {
 | 
						|
      .error_name            = "OB_IN_STOP_STATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08S01",
 | 
						|
      .str_error             = "In STOP state",
 | 
						|
      .str_user_error        = "In STOP state",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4114, In STOP state",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4114, In STOP state"
 | 
						|
};
 | 
						|
static const _error _error_OB_UPS_MASTER_EXISTS = {
 | 
						|
      .error_name            = "OB_UPS_MASTER_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Master UpdateServer already exists",
 | 
						|
      .str_user_error        = "Master UpdateServer already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4115, Master UpdateServer already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4115, Master UpdateServer already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_NOT_CLEAR = {
 | 
						|
      .error_name            = "OB_LOG_NOT_CLEAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Log not clear",
 | 
						|
      .str_user_error        = "Log not clear",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4116, Log not clear",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4116, Log not clear"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_ALREADY_EXIST = {
 | 
						|
      .error_name            = "OB_FILE_ALREADY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_FILE_EXISTS_ERROR,
 | 
						|
      .sqlstate              = "58000",
 | 
						|
      .str_error             = "File already exist",
 | 
						|
      .str_user_error        = "File already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4117, File already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4117, File already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNKNOWN_PACKET = {
 | 
						|
      .error_name            = "OB_UNKNOWN_PACKET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_COM_ERROR,
 | 
						|
      .sqlstate              = "HY001",
 | 
						|
      .str_error             = "Unknown packet",
 | 
						|
      .str_user_error        = "Unknown packet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4118, Unknown packet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4118, Unknown packet"
 | 
						|
};
 | 
						|
static const _error _error_OB_RPC_PACKET_TOO_LONG = {
 | 
						|
      .error_name            = "OB_RPC_PACKET_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08000",
 | 
						|
      .str_error             = "RPC packet to send too long",
 | 
						|
      .str_user_error        = "RPC packet to send too long",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4119, RPC packet to send too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4119, RPC packet to send too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_TOO_LARGE = {
 | 
						|
      .error_name            = "OB_LOG_TOO_LARGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log too large",
 | 
						|
      .str_user_error        = "Log too large",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4120, Log too large",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4120, Log too large"
 | 
						|
};
 | 
						|
static const _error _error_OB_RPC_SEND_ERROR = {
 | 
						|
      .error_name            = "OB_RPC_SEND_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RPC send error",
 | 
						|
      .str_user_error        = "RPC send error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4121, RPC send error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4121, RPC send error"
 | 
						|
};
 | 
						|
static const _error _error_OB_RPC_POST_ERROR = {
 | 
						|
      .error_name            = "OB_RPC_POST_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RPC post error",
 | 
						|
      .str_user_error        = "RPC post error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4122, RPC post error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4122, RPC post error"
 | 
						|
};
 | 
						|
static const _error _error_OB_LIBEASY_ERROR = {
 | 
						|
      .error_name            = "OB_LIBEASY_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08000",
 | 
						|
      .str_error             = "Libeasy error",
 | 
						|
      .str_user_error        = "Libeasy error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4123, Libeasy error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4123, Libeasy error"
 | 
						|
};
 | 
						|
static const _error _error_OB_CONNECT_ERROR = {
 | 
						|
      .error_name            = "OB_CONNECT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Connect error",
 | 
						|
      .str_user_error        = "Connect error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4124, Connect error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4124, Connect error"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_FREE = {
 | 
						|
      .error_name            = "OB_NOT_FREE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not free",
 | 
						|
      .str_user_error        = "Not free",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4125, Not free",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4125, Not free"
 | 
						|
};
 | 
						|
static const _error _error_OB_INIT_SQL_CONTEXT_ERROR = {
 | 
						|
      .error_name            = "OB_INIT_SQL_CONTEXT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Init SQL context error",
 | 
						|
      .str_user_error        = "Init SQL context error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4126, Init SQL context error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4126, Init SQL context error"
 | 
						|
};
 | 
						|
static const _error _error_OB_SKIP_INVALID_ROW = {
 | 
						|
      .error_name            = "OB_SKIP_INVALID_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Skip invalid row",
 | 
						|
      .str_user_error        = "Skip invalid row",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4127, Skip invalid row",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4127, Skip invalid row"
 | 
						|
};
 | 
						|
static const _error _error_OB_RPC_PACKET_INVALID = {
 | 
						|
      .error_name            = "OB_RPC_PACKET_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RPC packet is invalid",
 | 
						|
      .str_user_error        = "RPC packet is invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4128, RPC packet is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4128, RPC packet is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_TABLET = {
 | 
						|
      .error_name            = "OB_NO_TABLET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No tablets",
 | 
						|
      .str_user_error        = "No tablets",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4133, No tablets",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4133, No tablets"
 | 
						|
};
 | 
						|
static const _error _error_OB_SNAPSHOT_DISCARDED = {
 | 
						|
      .error_name            = "OB_SNAPSHOT_DISCARDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Request to read too old versioned data",
 | 
						|
      .str_user_error        = "Request to read too old versioned data",
 | 
						|
      .oracle_errno          = 1555,
 | 
						|
      .oracle_str_error      = "ORA-01555: snapshot too old",
 | 
						|
      .oracle_str_user_error = "ORA-01555: snapshot too old"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_NOT_UPTODATE = {
 | 
						|
      .error_name            = "OB_DATA_NOT_UPTODATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "State is stale",
 | 
						|
      .str_user_error        = "State is stale",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4139, State is stale",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4139, State is stale"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROW_MODIFIED = {
 | 
						|
      .error_name            = "OB_ROW_MODIFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Row modified",
 | 
						|
      .str_user_error        = "Row modified",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4142, Row modified",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4142, Row modified"
 | 
						|
};
 | 
						|
static const _error _error_OB_VERSION_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_VERSION_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Version not match",
 | 
						|
      .str_user_error        = "Version not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4143, Version not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4143, Version not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_BAD_ADDRESS = {
 | 
						|
      .error_name            = "OB_BAD_ADDRESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Bad address",
 | 
						|
      .str_user_error        = "Bad address",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4144, Bad address",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4144, Bad address"
 | 
						|
};
 | 
						|
static const _error _error_OB_ENQUEUE_FAILED = {
 | 
						|
      .error_name            = "OB_ENQUEUE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Enqueue error",
 | 
						|
      .str_user_error        = "Enqueue error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4146, Enqueue error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4146, Enqueue error"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_CONFIG = {
 | 
						|
      .error_name            = "OB_INVALID_CONFIG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid config",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4147, Invalid config",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4147, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_STMT_EXPIRED = {
 | 
						|
      .error_name            = "OB_STMT_EXPIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Expired statement",
 | 
						|
      .str_user_error        = "Expired statement",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4149, Expired statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4149, Expired statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MIN_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_MIN_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Min value",
 | 
						|
      .str_user_error        = "Min value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4150, Min value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4150, Min value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MAX_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_MAX_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Max value",
 | 
						|
      .str_user_error        = "Max value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4151, Max value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4151, Max value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NULL_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_NULL_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Null value",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4152, Null value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4152, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_OUT = {
 | 
						|
      .error_name            = "OB_RESOURCE_OUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_OUT_OF_RESOURCES,
 | 
						|
      .sqlstate              = "53000",
 | 
						|
      .str_error             = "Out of resource",
 | 
						|
      .str_user_error        = "Out of resource",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4153, Out of resource",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4153, Out of resource"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SQL_CLIENT = {
 | 
						|
      .error_name            = "OB_ERR_SQL_CLIENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Internal SQL client error",
 | 
						|
      .str_user_error        = "Internal SQL client error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4154, Internal SQL client error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4154, Internal SQL client error"
 | 
						|
};
 | 
						|
static const _error _error_OB_META_TABLE_WITHOUT_USE_TABLE = {
 | 
						|
      .error_name            = "OB_META_TABLE_WITHOUT_USE_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Meta table without use table",
 | 
						|
      .str_user_error        = "Meta table without use table",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4155, Meta table without use table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4155, Meta table without use table"
 | 
						|
};
 | 
						|
static const _error _error_OB_DISCARD_PACKET = {
 | 
						|
      .error_name            = "OB_DISCARD_PACKET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Discard packet",
 | 
						|
      .str_user_error        = "Discard packet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4156, Discard packet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4156, Discard packet"
 | 
						|
};
 | 
						|
static const _error _error_OB_OPERATE_OVERFLOW = {
 | 
						|
      .error_name            = "OB_OPERATE_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "value is out of range",
 | 
						|
      .str_user_error        = "%s value is out of range in '%s'",
 | 
						|
      .oracle_errno          = 25137,
 | 
						|
      .oracle_str_error      = "ORA-25137: Data value out of range",
 | 
						|
      .oracle_str_user_error = "ORA-25137: Data value %s out of range in '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_DATE_FORMAT = {
 | 
						|
      .error_name            = "OB_INVALID_DATE_FORMAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE,
 | 
						|
      .sqlstate              = "22007",
 | 
						|
      .str_error             = "Incorrect value",
 | 
						|
      .str_user_error        = "%s=%d must between %d and %d",
 | 
						|
      .oracle_errno          = 1821,
 | 
						|
      .oracle_str_error      = "ORA-01821: date format not recognized",
 | 
						|
      .oracle_str_user_error = "ORA-01821: date format not recognized, %s=%d must between %d and %d"
 | 
						|
};
 | 
						|
static const _error _error_OB_POOL_REGISTERED_FAILED = {
 | 
						|
      .error_name            = "OB_POOL_REGISTERED_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "register pool failed",
 | 
						|
      .str_user_error        = "register pool failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4159, register pool failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4159, register pool failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_POOL_UNREGISTERED_FAILED = {
 | 
						|
      .error_name            = "OB_POOL_UNREGISTERED_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unregister pool failed",
 | 
						|
      .str_user_error        = "unregister pool failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4160, unregister pool failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4160, unregister pool failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_NUM = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument num",
 | 
						|
      .str_user_error        = "Invalid argument num",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4161, Invalid argument num",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4161, Invalid argument num"
 | 
						|
};
 | 
						|
static const _error _error_OB_LEASE_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_LEASE_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "reserved lease not enough",
 | 
						|
      .str_user_error        = "reserved lease not enough",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4162, reserved lease not enough",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4162, reserved lease not enough"
 | 
						|
};
 | 
						|
static const _error _error_OB_LEASE_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_LEASE_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ups lease not match with rs",
 | 
						|
      .str_user_error        = "ups lease not match with rs",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4163, ups lease not match with rs",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4163, ups lease not match with rs"
 | 
						|
};
 | 
						|
static const _error _error_OB_UPS_SWITCH_NOT_HAPPEN = {
 | 
						|
      .error_name            = "OB_UPS_SWITCH_NOT_HAPPEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ups switch not happen",
 | 
						|
      .str_user_error        = "ups switch not happen",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4164, ups switch not happen",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4164, ups switch not happen"
 | 
						|
};
 | 
						|
static const _error _error_OB_EMPTY_RESULT = {
 | 
						|
      .error_name            = "OB_EMPTY_RESULT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Empty result",
 | 
						|
      .str_user_error        = "Empty result",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4165, Empty result",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4165, Empty result"
 | 
						|
};
 | 
						|
static const _error _error_OB_CACHE_NOT_HIT = {
 | 
						|
      .error_name            = "OB_CACHE_NOT_HIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cache not hit",
 | 
						|
      .str_user_error        = "Cache not hit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4166, Cache not hit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4166, Cache not hit"
 | 
						|
};
 | 
						|
static const _error _error_OB_NESTED_LOOP_NOT_SUPPORT = {
 | 
						|
      .error_name            = "OB_NESTED_LOOP_NOT_SUPPORT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Nested loop not support",
 | 
						|
      .str_user_error        = "Nested loop not support",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4167, Nested loop not support",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4167, Nested loop not support"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_INVALID_MOD_ID = {
 | 
						|
      .error_name            = "OB_LOG_INVALID_MOD_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid log module id",
 | 
						|
      .str_user_error        = "Invalid log module id",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4168, Invalid log module id",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4168, Invalid log module id"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_MODULE_UNKNOWN = {
 | 
						|
      .error_name            = "OB_LOG_MODULE_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown module name",
 | 
						|
      .str_user_error        = "Unknown module name. Invalid Setting:'%.*s'. Syntax:parMod.subMod:level, parMod.subMod:level",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4169, Unknown module name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4169, Unknown module name. Invalid Setting:'%.*s'. Syntax:parMod.subMod:level, parMod.subMod:level"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_LEVEL_INVALID = {
 | 
						|
      .error_name            = "OB_LOG_LEVEL_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid level",
 | 
						|
      .str_user_error        = "Invalid level. Invalid setting:'%.*s'. Syntax:parMod.subMod:level, parMod.subMod:level",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4170, Invalid level",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4170, Invalid level. Invalid setting:'%.*s'. Syntax:parMod.subMod:level, parMod.subMod:level"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_PARSER_SYNTAX_ERR = {
 | 
						|
      .error_name            = "OB_LOG_PARSER_SYNTAX_ERR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Syntax to set log_level error",
 | 
						|
      .str_user_error        = "Syntax to set log_level error. Invalid setting:'%.*s'. Syntax:parMod.subMod:level, parMod.subMod:level",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4171, Syntax to set log_level error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4171, Syntax to set log_level error. Invalid setting:'%.*s'. Syntax:parMod.subMod:level, parMod.subMod:level"
 | 
						|
};
 | 
						|
static const _error _error_OB_INDEX_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_INDEX_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Index out of range",
 | 
						|
      .str_user_error        = "Index out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4172, Index out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4172, Index out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_INT_UNDERFLOW = {
 | 
						|
      .error_name            = "OB_INT_UNDERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Int underflow",
 | 
						|
      .str_user_error        = "Int underflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4173, Int underflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4173, Int underflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNKNOWN_CONNECTION = {
 | 
						|
      .error_name            = "OB_UNKNOWN_CONNECTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_SUCH_THREAD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown thread id",
 | 
						|
      .str_user_error        = "Unknown thread id: %lu",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4174, Unknown thread id",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4174, Unknown thread id: %lu"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERROR_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERROR_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Out of range",
 | 
						|
      .str_user_error        = "Out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4175, Out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4175, Out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_CACHE_SHRINK_FAILED = {
 | 
						|
      .error_name            = "OB_CACHE_SHRINK_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY001",
 | 
						|
      .str_error             = "shrink cache failed, no available cache",
 | 
						|
      .str_user_error        = "shrink cache failed, no available cache",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4176, shrink cache failed, no available cache",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4176, shrink cache failed, no available cache"
 | 
						|
};
 | 
						|
static const _error _error_OB_OLD_SCHEMA_VERSION = {
 | 
						|
      .error_name            = "OB_OLD_SCHEMA_VERSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Schema version too old",
 | 
						|
      .str_user_error        = "Schema version too old",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4177, Schema version too old",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4177, Schema version too old"
 | 
						|
};
 | 
						|
static const _error _error_OB_RELEASE_SCHEMA_ERROR = {
 | 
						|
      .error_name            = "OB_RELEASE_SCHEMA_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Release schema error",
 | 
						|
      .str_user_error        = "Release schema error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4178, Release schema error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4178, Release schema error"
 | 
						|
};
 | 
						|
static const _error _error_OB_OP_NOT_ALLOW = {
 | 
						|
      .error_name            = "OB_OP_NOT_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Operation not allowed now",
 | 
						|
      .str_user_error        = "%s not allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4179, Operation not allowed now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4179, %s not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_EMPTY_ENTRY = {
 | 
						|
      .error_name            = "OB_NO_EMPTY_ENTRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No empty entry",
 | 
						|
      .str_user_error        = "No empty entry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4180, No empty entry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4180, No empty entry"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALREADY_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_ALREADY_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42S01",
 | 
						|
      .str_error             = "Already exist",
 | 
						|
      .str_user_error        = "Already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4181, Already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4181, Already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_SEARCH_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_SEARCH_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Value not found",
 | 
						|
      .str_user_error        = "Value not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4182, Value not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4182, Value not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_BEYOND_THE_RANGE = {
 | 
						|
      .error_name            = "OB_BEYOND_THE_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Key out of range",
 | 
						|
      .str_user_error        = "Key out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4183, Key out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4183, Key out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_OUTOF_DISK_SPACE = {
 | 
						|
      .error_name            = "OB_SERVER_OUTOF_DISK_SPACE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "53100",
 | 
						|
      .str_error             = "Server out of disk space",
 | 
						|
      .str_user_error        = "Server out of disk space",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4184, Server out of disk space",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4184, Server out of disk space"
 | 
						|
};
 | 
						|
static const _error _error_OB_COLUMN_GROUP_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_COLUMN_GROUP_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column group not found",
 | 
						|
      .str_user_error        = "Column group not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4185, Column group not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4185, Column group not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_CS_COMPRESS_LIB_ERROR = {
 | 
						|
      .error_name            = "OB_CS_COMPRESS_LIB_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Server failed to get compress library",
 | 
						|
      .str_user_error        = "Server failed to get compress library",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4186, Server failed to get compress library",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4186, Server failed to get compress library"
 | 
						|
};
 | 
						|
static const _error _error_OB_ITEM_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ITEM_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Item not match",
 | 
						|
      .str_user_error        = "Item not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4187, Item not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4187, Item not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEDULER_TASK_CNT_MISMATCH = {
 | 
						|
      .error_name            = "OB_SCHEDULER_TASK_CNT_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Running task cnt and unfinished task cnt not consistent",
 | 
						|
      .str_user_error        = "Running task cnt and unfinished task cnt not consistent",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4188, Running task cnt and unfinished task cnt not consistent",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4188, Running task cnt and unfinished task cnt not consistent"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_MACRO_BLOCK_TYPE = {
 | 
						|
      .error_name            = "OB_INVALID_MACRO_BLOCK_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the macro block type does not exist",
 | 
						|
      .str_user_error        = "the macro block type does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4189, the macro block type does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4189, the macro block type does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_DATE_FORMAT_END = {
 | 
						|
      .error_name            = "OB_INVALID_DATE_FORMAT_END",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE,
 | 
						|
      .sqlstate              = "22007",
 | 
						|
      .str_error             = "Incorrect value",
 | 
						|
      .str_user_error        = "Incorrect value",
 | 
						|
      .oracle_errno          = 1830,
 | 
						|
      .oracle_str_error      = "ORA-01830: date format picture ends before converting entire input string",
 | 
						|
      .oracle_str_user_error = "ORA-01830: date format picture ends before converting entire input string"
 | 
						|
};
 | 
						|
static const _error _error_OB_PG_IS_REMOVED = {
 | 
						|
      .error_name            = "OB_PG_IS_REMOVED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition group is removed",
 | 
						|
      .str_user_error        = "partition group is removed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4191, partition group is removed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4191, partition group is removed"
 | 
						|
};
 | 
						|
static const _error _error_OB_HASH_EXIST = {
 | 
						|
      .error_name            = "OB_HASH_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hash map/set entry exist",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4200, hash map/set entry exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4200, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_HASH_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_HASH_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hash map/set entry not exist",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4201, hash map/set entry not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4201, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_HASH_GET_TIMEOUT = {
 | 
						|
      .error_name            = "OB_HASH_GET_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hash map/set get timeout",
 | 
						|
      .str_user_error        = "hash map/set get timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4204, hash map/set get timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4204, hash map/set get timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_HASH_PLACEMENT_RETRY = {
 | 
						|
      .error_name            = "OB_HASH_PLACEMENT_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hash map/set retry",
 | 
						|
      .str_user_error        = "hash map/set retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4205, hash map/set retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4205, hash map/set retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_HASH_FULL = {
 | 
						|
      .error_name            = "OB_HASH_FULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hash map/set full",
 | 
						|
      .str_user_error        = "hash map/set full",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4206, hash map/set full",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4206, hash map/set full"
 | 
						|
};
 | 
						|
static const _error _error_OB_PACKET_PROCESSED = {
 | 
						|
      .error_name            = "OB_PACKET_PROCESSED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "packet processed",
 | 
						|
      .str_user_error        = "packet processed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4207, packet processed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4207, packet processed"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_NEXT_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_NEXT_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wait next packet timeout",
 | 
						|
      .str_user_error        = "wait next packet timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4208, wait next packet timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4208, wait next packet timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_LEADER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LEADER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition has not leader",
 | 
						|
      .str_user_error        = "partition has not leader",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4209, partition has not leader",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4209, partition has not leader"
 | 
						|
};
 | 
						|
static const _error _error_OB_PREPARE_MAJOR_FREEZE_FAILED = {
 | 
						|
      .error_name            = "OB_PREPARE_MAJOR_FREEZE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "prepare major freeze failed",
 | 
						|
      .str_user_error        = "prepare major freeze failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4210, prepare major freeze failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4210, prepare major freeze failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_COMMIT_MAJOR_FREEZE_FAILED = {
 | 
						|
      .error_name            = "OB_COMMIT_MAJOR_FREEZE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "commit major freeze failed",
 | 
						|
      .str_user_error        = "commit major freeze failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4211, commit major freeze failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4211, commit major freeze failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ABORT_MAJOR_FREEZE_FAILED = {
 | 
						|
      .error_name            = "OB_ABORT_MAJOR_FREEZE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "abort major freeze failed",
 | 
						|
      .str_user_error        = "abort major freeze failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4212, abort major freeze failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4212, abort major freeze failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_MAJOR_FREEZE_NOT_FINISHED = {
 | 
						|
      .error_name            = "OB_MAJOR_FREEZE_NOT_FINISHED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "last major freeze not finish",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4213, last major freeze not finish",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4213, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_NOT_LEADER = {
 | 
						|
      .error_name            = "OB_PARTITION_NOT_LEADER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition is not leader partition",
 | 
						|
      .str_user_error        = "partition is not leader partition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4214, partition is not leader partition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4214, partition is not leader partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_MAJOR_FREEZE_RESPONSE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_MAJOR_FREEZE_RESPONSE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wait major freeze response timeout",
 | 
						|
      .str_user_error        = "wait major freeze response timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4215, wait major freeze response timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4215, wait major freeze response timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_CURL_ERROR = {
 | 
						|
      .error_name            = "OB_CURL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "curl error",
 | 
						|
      .str_user_error        = "curl error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4216, curl error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4216, curl error"
 | 
						|
};
 | 
						|
static const _error _error_OB_MAJOR_FREEZE_NOT_ALLOW = {
 | 
						|
      .error_name            = "OB_MAJOR_FREEZE_NOT_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Major freeze not allowed now",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4217, Major freeze not allowed now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4217, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_PREPARE_FREEZE_FAILED = {
 | 
						|
      .error_name            = "OB_PREPARE_FREEZE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "prepare freeze failed",
 | 
						|
      .str_user_error        = "prepare freeze failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4218, prepare freeze failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4218, prepare freeze failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_DATE_VALUE = {
 | 
						|
      .error_name            = "OB_INVALID_DATE_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE,
 | 
						|
      .sqlstate              = "22007",
 | 
						|
      .str_error             = "Incorrect value",
 | 
						|
      .str_user_error        = "Incorrect datetime value: '%.*s' for column '%s'",
 | 
						|
      .oracle_errno          = 1861,
 | 
						|
      .oracle_str_error      = "ORA-01861: literal does not match format string",
 | 
						|
      .oracle_str_user_error = "ORA-01861: literal does not match format string: '%.*s' for column '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_INACTIVE_SQL_CLIENT = {
 | 
						|
      .error_name            = "OB_INACTIVE_SQL_CLIENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Inactive sql client, only read allowed",
 | 
						|
      .str_user_error        = "Inactive sql client, only read allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4220, Inactive sql client, only read allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4220, Inactive sql client, only read allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_INACTIVE_RPC_PROXY = {
 | 
						|
      .error_name            = "OB_INACTIVE_RPC_PROXY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Inactive rpc proxy, can not send RPC request",
 | 
						|
      .str_user_error        = "Inactive rpc proxy, can not send RPC request",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4221, Inactive rpc proxy, can not send RPC request",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4221, Inactive rpc proxy, can not send RPC request"
 | 
						|
};
 | 
						|
static const _error _error_OB_INTERVAL_WITH_MONTH = {
 | 
						|
      .error_name            = "OB_INTERVAL_WITH_MONTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Interval with year or month can not be converted to microseconds",
 | 
						|
      .str_user_error        = "Interval with year or month can not be converted to microseconds",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4222, Interval with year or month can not be converted to microseconds",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4222, Interval with year or month can not be converted to microseconds"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_DATETIME_PARTS = {
 | 
						|
      .error_name            = "OB_TOO_MANY_DATETIME_PARTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Interval has too many datetime parts",
 | 
						|
      .str_user_error        = "Interval has too many datetime parts",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4223, Interval has too many datetime parts",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4223, Interval has too many datetime parts"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_DATA_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "Out of range value for column",
 | 
						|
      .str_user_error        = "Out of range value for column '%.*s' at row %ld",
 | 
						|
      .oracle_errno          = 1438,
 | 
						|
      .oracle_str_error      = "ORA-01438: value larger than specified precision allowed for this column",
 | 
						|
      .oracle_str_user_error = "ORA-01438: value larger than specified precision allowed for this column '%.*s' at row %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_PARTITION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition entry not exists",
 | 
						|
      .str_user_error        = "Partition entry not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4225, Partition entry not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4225, Partition entry not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRUNCATED_WRONG_VALUE_FOR_FIELD = {
 | 
						|
      .error_name            = "OB_ERR_TRUNCATED_WRONG_VALUE_FOR_FIELD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE_FOR_FIELD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect integer value",
 | 
						|
      .str_user_error        = "Incorrect integer value: '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4226, Incorrect integer value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4226, Incorrect integer value: '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_DEFAULT_FOR_FIELD = {
 | 
						|
      .error_name            = "OB_ERR_NO_DEFAULT_FOR_FIELD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_DEFAULT_FOR_FIELD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Field doesn\'t have a default value",
 | 
						|
      .str_user_error        = "Field \'%s\' doesn't have a default value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4227, Field doesn\'t have a default value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4227, Field \'%s\' doesn't have a default value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FIELD_SPECIFIED_TWICE = {
 | 
						|
      .error_name            = "OB_ERR_FIELD_SPECIFIED_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_FIELD_SPECIFIED_TWICE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Column specified twice",
 | 
						|
      .str_user_error        = "Column \'%s\' specified twice",
 | 
						|
      .oracle_errno          = 957,
 | 
						|
      .oracle_str_error      = "ORA-00957: duplicate column name",
 | 
						|
      .oracle_str_user_error = "ORA-00957: duplicate column name \'%s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_TABLE_COMMENT = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_TABLE_COMMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_TABLE_COMMENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Comment for table is too long",
 | 
						|
      .str_user_error        = "Comment for table is too long (max = %ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4229, Comment for table is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4229, Comment for table is too long (max = %ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_FIELD_COMMENT = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_FIELD_COMMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_FIELD_COMMENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Comment for field is too long",
 | 
						|
      .str_user_error        = "Comment for field is too long (max = %ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4230, Comment for field is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4230, Comment for field is too long (max = %ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_INDEX_COMMENT = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_INDEX_COMMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_INDEX_COMMENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Comment for index is too long",
 | 
						|
      .str_user_error        = "Comment for index is too long (max = %ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4231, Comment for index is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4231, Comment for index is too long (max = %ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_FOLLOWER = {
 | 
						|
      .error_name            = "OB_NOT_FOLLOWER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The observer or zone is not a follower",
 | 
						|
      .str_user_error        = "The observer or zone is not a follower",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4232, The observer or zone is not a follower",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4232, The observer or zone is not a follower"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUT_OF_LOWER_BOUND = {
 | 
						|
      .error_name            = "OB_ERR_OUT_OF_LOWER_BOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "smaller than container lower bound",
 | 
						|
      .str_user_error        = "smaller than container lower bound",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4233, smaller than container lower bound",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4233, smaller than container lower bound"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUT_OF_UPPER_BOUND = {
 | 
						|
      .error_name            = "OB_ERR_OUT_OF_UPPER_BOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "bigger than container upper bound",
 | 
						|
      .str_user_error        = "bigger than container upper bound",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4234, bigger than container upper bound",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4234, bigger than container upper bound"
 | 
						|
};
 | 
						|
static const _error _error_OB_BAD_NULL_ERROR = {
 | 
						|
      .error_name            = "OB_BAD_NULL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_BAD_NULL_ERROR,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Column cannot be null",
 | 
						|
      .str_user_error        = "Column '%.*s' cannot be null",
 | 
						|
      .oracle_errno          = 1400,
 | 
						|
      .oracle_str_error      = "ORA-01400: cannot insert NULL",
 | 
						|
      .oracle_str_user_error = "ORA-01400: cannot insert NULL into '(%.*s)'"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBCONFIG_RETURN_ERROR = {
 | 
						|
      .error_name            = "OB_OBCONFIG_RETURN_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ObConfig return error code",
 | 
						|
      .str_user_error        = "ObConfig return error code",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4236, ObConfig return error code",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4236, ObConfig return error code"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBCONFIG_APPNAME_MISMATCH = {
 | 
						|
      .error_name            = "OB_OBCONFIG_APPNAME_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Appname mismatch with obconfig result",
 | 
						|
      .str_user_error        = "Appname mismatch with obconfig result",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4237, Appname mismatch with obconfig result",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4237, Appname mismatch with obconfig result"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIEW_SELECT_DERIVED = {
 | 
						|
      .error_name            = "OB_ERR_VIEW_SELECT_DERIVED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_SELECT_DERIVED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "View's SELECT contains a subquery in the FROM clause",
 | 
						|
      .str_user_error        = "View's SELECT contains a subquery in the FROM clause",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4238, View's SELECT contains a subquery in the FROM clause",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4238, View's SELECT contains a subquery in the FROM clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_MJ_PATH = {
 | 
						|
      .error_name            = "OB_CANT_MJ_PATH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can not use merge-join to join the tables without join conditions",
 | 
						|
      .str_user_error        = "Can not use merge-join to join the tables without join conditions",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4239, Can not use merge-join to join the tables without join conditions",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4239, Can not use merge-join to join the tables without join conditions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_JOIN_ORDER_GENERATED = {
 | 
						|
      .error_name            = "OB_ERR_NO_JOIN_ORDER_GENERATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No join order generated",
 | 
						|
      .str_user_error        = "No join order generated",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4240, No join order generated",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4240, No join order generated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_PATH_GENERATED = {
 | 
						|
      .error_name            = "OB_ERR_NO_PATH_GENERATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No join path generated",
 | 
						|
      .str_user_error        = "No join path generated",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4241, No join path generated",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4241, No join path generated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WAIT_REMOTE_SCHEMA_REFRESH = {
 | 
						|
      .error_name            = "OB_ERR_WAIT_REMOTE_SCHEMA_REFRESH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Schema error",
 | 
						|
      .str_user_error        = "Schema error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4242, Schema error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4242, Schema error"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_NOT_OPENED = {
 | 
						|
      .error_name            = "OB_FILE_NOT_OPENED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file not opened",
 | 
						|
      .str_user_error        = "file not opened",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4243, file not opened",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4243, file not opened"
 | 
						|
};
 | 
						|
static const _error _error_OB_TIMER_TASK_HAS_SCHEDULED = {
 | 
						|
      .error_name            = "OB_TIMER_TASK_HAS_SCHEDULED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Timer task has been scheduled",
 | 
						|
      .str_user_error        = "Timer task has been scheduled",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4244, Timer task has been scheduled",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4244, Timer task has been scheduled"
 | 
						|
};
 | 
						|
static const _error _error_OB_TIMER_TASK_HAS_NOT_SCHEDULED = {
 | 
						|
      .error_name            = "OB_TIMER_TASK_HAS_NOT_SCHEDULED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Timer task has not been scheduled",
 | 
						|
      .str_user_error        = "Timer task has not been scheduled",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4245, Timer task has not been scheduled",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4245, Timer task has not been scheduled"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARSE_DEBUG_SYNC_ERROR = {
 | 
						|
      .error_name            = "OB_PARSE_DEBUG_SYNC_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "parse debug sync string error",
 | 
						|
      .str_user_error        = "parse debug sync string error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4246, parse debug sync string error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4246, parse debug sync string error"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNKNOWN_DEBUG_SYNC_POINT = {
 | 
						|
      .error_name            = "OB_UNKNOWN_DEBUG_SYNC_POINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unknown debug sync point",
 | 
						|
      .str_user_error        = "unknown debug sync point",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4247, unknown debug sync point",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4247, unknown debug sync point"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERRUPTED = {
 | 
						|
      .error_name            = "OB_ERR_INTERRUPTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "task is interrupted while running",
 | 
						|
      .str_user_error        = "task is interrupted while running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4248, task is interrupted while running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4248, task is interrupted while running"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATA_TRUNCATED = {
 | 
						|
      .error_name            = "OB_ERR_DATA_TRUNCATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = WARN_DATA_TRUNCATED,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Data truncated for argument",
 | 
						|
      .str_user_error        = "Data truncated for column '%.*s' at row %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4249, Data truncated for argument",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4249, Data truncated for column '%.*s' at row %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_RUNNING = {
 | 
						|
      .error_name            = "OB_NOT_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "module is not running",
 | 
						|
      .str_user_error        = "module is not running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4250, module is not running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4250, module is not running"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_PARTITION = {
 | 
						|
      .error_name            = "OB_INVALID_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition not valid",
 | 
						|
      .str_user_error        = "partition not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4251, partition not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4251, partition not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TIMEOUT_TRUNCATED = {
 | 
						|
      .error_name            = "OB_ERR_TIMEOUT_TRUNCATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = WARN_DATA_TRUNCATED,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Timeout value truncated to 102 years",
 | 
						|
      .str_user_error        = "Timeout value truncated to 102 years",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4252, Timeout value truncated to 102 years",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4252, Timeout value truncated to 102 years"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_TENANT_COMMENT = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_TENANT_COMMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Comment for tenant is too long",
 | 
						|
      .str_user_error        = "Comment for tenant is too long (max = %ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4253, Comment for tenant is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4253, Comment for tenant is too long (max = %ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NET_PACKET_TOO_LARGE = {
 | 
						|
      .error_name            = "OB_ERR_NET_PACKET_TOO_LARGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NET_PACKET_TOO_LARGE,
 | 
						|
      .sqlstate              = "08S01",
 | 
						|
      .str_error             = "Got a packet bigger than \'max_allowed_packet\' bytes",
 | 
						|
      .str_user_error        = "Got a packet bigger than \'max_allowed_packet\' bytes",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4254, Got a packet bigger than \'max_allowed_packet\' bytes",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4254, Got a packet bigger than \'max_allowed_packet\' bytes"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRACE_DESC_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TRACE_DESC_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "trace log title or key not exist describle",
 | 
						|
      .str_user_error        = "trace log title or key not exist describle",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4255, trace log title or key not exist describle",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4255, trace log title or key not exist describle"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_DEFAULT = {
 | 
						|
      .error_name            = "OB_ERR_NO_DEFAULT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_DEFAULT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Variable doesn't have a default value",
 | 
						|
      .str_user_error        = "Variable '%.*s' doesn't have a default value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4256, Variable doesn't have a default value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4256, Variable '%.*s' doesn't have a default value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COMPRESS_DECOMPRESS_DATA = {
 | 
						|
      .error_name            = "OB_ERR_COMPRESS_DECOMPRESS_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "compress data or decompress data failed",
 | 
						|
      .str_user_error        = "compress data or decompress data failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4257, compress data or decompress data failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4257, compress data or decompress data failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INCORRECT_STRING_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INCORRECT_STRING_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE_FOR_FIELD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect string value",
 | 
						|
      .str_user_error        = "Incorrect string value for column '%.*s' at row %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4258, Incorrect string value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4258, Incorrect string value for column '%.*s' at row %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_IS_CHANGING_LEADER = {
 | 
						|
      .error_name            = "OB_IS_CHANGING_LEADER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the partition is changing leader",
 | 
						|
      .str_user_error        = "the partition is changing leader",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4260, the partition is changing leader",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4260, the partition is changing leader"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATETIME_FUNCTION_OVERFLOW = {
 | 
						|
      .error_name            = "OB_DATETIME_FUNCTION_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DATETIME_FUNCTION_OVERFLOW,
 | 
						|
      .sqlstate              = "22008",
 | 
						|
      .str_error             = "Datetime overflow",
 | 
						|
      .str_user_error        = "Datetime overflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4261, Datetime overflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4261, Datetime overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DOUBLE_TRUNCATED = {
 | 
						|
      .error_name            = "OB_ERR_DOUBLE_TRUNCATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Truncated incorrect DOUBLE value",
 | 
						|
      .str_user_error        = "Truncated incorrect DOUBLE value: '%.*s'",
 | 
						|
      .oracle_errno          = 1722,
 | 
						|
      .oracle_str_error      = "ORA-01722: invalid number",
 | 
						|
      .oracle_str_user_error = "ORA-01722: invalid number: '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_MINOR_FREEZE_NOT_ALLOW = {
 | 
						|
      .error_name            = "OB_MINOR_FREEZE_NOT_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Minor freeze not allowed now",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4263, Minor freeze not allowed now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4263, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_OUTOF_DISK_SPACE = {
 | 
						|
      .error_name            = "OB_LOG_OUTOF_DISK_SPACE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Log out of disk space",
 | 
						|
      .str_user_error        = "Log out of disk space",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4264, Log out of disk space",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4264, Log out of disk space"
 | 
						|
};
 | 
						|
static const _error _error_OB_RPC_CONNECT_ERROR = {
 | 
						|
      .error_name            = "OB_RPC_CONNECT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Rpc connect error",
 | 
						|
      .str_user_error        = "Rpc connect error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4265, Rpc connect error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4265, Rpc connect error"
 | 
						|
};
 | 
						|
static const _error _error_OB_MINOR_MERGE_NOT_ALLOW = {
 | 
						|
      .error_name            = "OB_MINOR_MERGE_NOT_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "minor merge not allow",
 | 
						|
      .str_user_error        = "minor merge not allow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4266, minor merge not allow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4266, minor merge not allow"
 | 
						|
};
 | 
						|
static const _error _error_OB_CACHE_INVALID = {
 | 
						|
      .error_name            = "OB_CACHE_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cache invalid",
 | 
						|
      .str_user_error        = "Cache invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4267, Cache invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4267, Cache invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_REACH_SERVER_DATA_COPY_IN_CONCURRENCY_LIMIT = {
 | 
						|
      .error_name            = "OB_REACH_SERVER_DATA_COPY_IN_CONCURRENCY_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "reach server data copy in concurrency",
 | 
						|
      .str_user_error        = "reach server data copy in concurrency",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4268, reach server data copy in concurrency",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4268, reach server data copy in concurrency"
 | 
						|
};
 | 
						|
static const _error _error_OB_WORKING_PARTITION_EXIST = {
 | 
						|
      .error_name            = "OB_WORKING_PARTITION_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Working partition entry already exists",
 | 
						|
      .str_user_error        = "Working partition entry already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4269, Working partition entry already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4269, Working partition entry already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_WORKING_PARTITION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_WORKING_PARTITION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Working partition entry does not exists",
 | 
						|
      .str_user_error        = "Working partition entry does not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4270, Working partition entry does not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4270, Working partition entry does not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_LIBEASY_REACH_MEM_LIMIT = {
 | 
						|
      .error_name            = "OB_LIBEASY_REACH_MEM_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "LIBEASY reach memory limit",
 | 
						|
      .str_user_error        = "LIBEASY reach memory limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4271, LIBEASY reach memory limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4271, LIBEASY reach memory limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_CACHE_FREE_BLOCK_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_CACHE_FREE_BLOCK_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "free memblock in cache is not enough",
 | 
						|
      .str_user_error        = "free memblock in cache is not enough",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4273, free memblock in cache is not enough",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4273, free memblock in cache is not enough"
 | 
						|
};
 | 
						|
static const _error _error_OB_SYNC_WASH_MB_TIMEOUT = {
 | 
						|
      .error_name            = "OB_SYNC_WASH_MB_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sync wash memblock timeout",
 | 
						|
      .str_user_error        = "sync wash memblock timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4274, sync wash memblock timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4274, sync wash memblock timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_ALLOW_MIGRATE_IN = {
 | 
						|
      .error_name            = "OB_NOT_ALLOW_MIGRATE_IN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not allow migrate in",
 | 
						|
      .str_user_error        = "not allow migrate in",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4275, not allow migrate in",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4275, not allow migrate in"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEDULER_TASK_CNT_MISTACH = {
 | 
						|
      .error_name            = "OB_SCHEDULER_TASK_CNT_MISTACH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Scheduler task cnt does not match",
 | 
						|
      .str_user_error        = "Scheduler task cnt does not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4276, Scheduler task cnt does not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4276, Scheduler task cnt does not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_MISS_ARGUMENT = {
 | 
						|
      .error_name            = "OB_MISS_ARGUMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_ARGUMENTS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Miss argument",
 | 
						|
      .str_user_error        = "Miss argument for %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4277, Miss argument",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4277, Miss argument for %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_LAST_LOG_NOT_COMPLETE = {
 | 
						|
      .error_name            = "OB_LAST_LOG_NOT_COMPLETE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "last log is not complete",
 | 
						|
      .str_user_error        = "last log is not complete",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4278, last log is not complete",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4278, last log is not complete"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLE_IS_DELETED = {
 | 
						|
      .error_name            = "OB_TABLE_IS_DELETED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table is deleted",
 | 
						|
      .str_user_error        = "table is deleted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4279, table is deleted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4279, table is deleted"
 | 
						|
};
 | 
						|
static const _error _error_OB_VERSION_RANGE_NOT_CONTINUES = {
 | 
						|
      .error_name            = "OB_VERSION_RANGE_NOT_CONTINUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "version range not continues",
 | 
						|
      .str_user_error        = "version range not continues",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4280, version range not continues",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4280, version range not continues"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_IO_BUFFER = {
 | 
						|
      .error_name            = "OB_INVALID_IO_BUFFER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "io buffer is invalid",
 | 
						|
      .str_user_error        = "io buffer is invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4281, io buffer is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4281, io buffer is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_REMOVED = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_REMOVED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition is removed",
 | 
						|
      .str_user_error        = "partition is removed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4282, partition is removed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4282, partition is removed"
 | 
						|
};
 | 
						|
static const _error _error_OB_GTS_NOT_READY = {
 | 
						|
      .error_name            = "OB_GTS_NOT_READY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "gts is not ready",
 | 
						|
      .str_user_error        = "gts is not ready",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4283, gts is not ready",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4283, gts is not ready"
 | 
						|
};
 | 
						|
static const _error _error_OB_MAJOR_SSTABLE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_MAJOR_SSTABLE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "major sstable not exist",
 | 
						|
      .str_user_error        = "major sstable not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4284, major sstable not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4284, major sstable not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_VERSION_RANGE_DISCARDED = {
 | 
						|
      .error_name            = "OB_VERSION_RANGE_DISCARDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Request to read too old version range data",
 | 
						|
      .str_user_error        = "Request to read too old version range data",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4285, Request to read too old version range data",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4285, Request to read too old version range data"
 | 
						|
};
 | 
						|
static const _error _error_OB_MAJOR_SSTABLE_HAS_MERGED = {
 | 
						|
      .error_name            = "OB_MAJOR_SSTABLE_HAS_MERGED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "major sstable may has been merged",
 | 
						|
      .str_user_error        = "major sstable may has been merged",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4286, major sstable may has been merged",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4286, major sstable may has been merged"
 | 
						|
};
 | 
						|
static const _error _error_OB_MINOR_SSTABLE_RANGE_CROSS = {
 | 
						|
      .error_name            = "OB_MINOR_SSTABLE_RANGE_CROSS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "minor sstable version range cross",
 | 
						|
      .str_user_error        = "minor sstable version range cross",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4287, minor sstable version range cross",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4287, minor sstable version range cross"
 | 
						|
};
 | 
						|
static const _error _error_OB_MEMTABLE_CANNOT_MINOR_MERGE = {
 | 
						|
      .error_name            = "OB_MEMTABLE_CANNOT_MINOR_MERGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "memtable cannot minor merge",
 | 
						|
      .str_user_error        = "memtable cannot minor merge",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4288, memtable cannot minor merge",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4288, memtable cannot minor merge"
 | 
						|
};
 | 
						|
static const _error _error_OB_TASK_EXIST = {
 | 
						|
      .error_name            = "OB_TASK_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "task exist",
 | 
						|
      .str_user_error        = "task exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4289, task exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4289, task exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALLOCATE_DISK_SPACE_FAILED = {
 | 
						|
      .error_name            = "OB_ALLOCATE_DISK_SPACE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot allocate disk space",
 | 
						|
      .str_user_error        = "cannot allocate disk space",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4290, cannot allocate disk space",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4290, cannot allocate disk space"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_FIND_UDF = {
 | 
						|
      .error_name            = "OB_CANT_FIND_UDF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_FIND_UDF,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't load function",
 | 
						|
      .str_user_error        = "Can not load function %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4291, Can't load function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4291, Can not load function %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_INITIALIZE_UDF = {
 | 
						|
      .error_name            = "OB_CANT_INITIALIZE_UDF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_INITIALIZE_UDF,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't initialize function",
 | 
						|
      .str_user_error        = "Can not initialize function '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4292, Can't initialize function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4292, Can not initialize function '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_UDF_NO_PATHS = {
 | 
						|
      .error_name            = "OB_UDF_NO_PATHS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UDF_NO_PATHS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No paths allowed for shared library",
 | 
						|
      .str_user_error        = "No paths allowed for shared library",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4293, No paths allowed for shared library",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4293, No paths allowed for shared library"
 | 
						|
};
 | 
						|
static const _error _error_OB_UDF_EXISTS = {
 | 
						|
      .error_name            = "OB_UDF_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UDF_EXISTS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Function already exists",
 | 
						|
      .str_user_error        = "Function %.*s already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4294, Function already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4294, Function %.*s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_OPEN_LIBRARY = {
 | 
						|
      .error_name            = "OB_CANT_OPEN_LIBRARY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_OPEN_LIBRARY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't open shared library",
 | 
						|
      .str_user_error        = "Can not open shared library '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4295, Can't open shared library",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4295, Can not open shared library '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_FIND_DL_ENTRY = {
 | 
						|
      .error_name            = "OB_CANT_FIND_DL_ENTRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_FIND_DL_ENTRY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't find symbol",
 | 
						|
      .str_user_error        = "Can't find symbol %.*s in library",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4296, Can't find symbol",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4296, Can't find symbol %.*s in library"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJECT_NAME_EXIST = {
 | 
						|
      .error_name            = "OB_OBJECT_NAME_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "name is already used by an existing object",
 | 
						|
      .str_user_error        = "name is already used by an existing object",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4297, name is already used by an existing object",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4297, name is already used by an existing object"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJECT_NAME_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_OBJECT_NAME_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object does not exist",
 | 
						|
      .str_user_error        = "%s does not exist",
 | 
						|
      .oracle_errno          = 2289,
 | 
						|
      .oracle_str_error      = "ORA-02289: object does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-02289: %s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_ARGUMENT = {
 | 
						|
      .error_name            = "OB_ERR_DUP_ARGUMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_ARGUMENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Option used twice in statement",
 | 
						|
      .str_user_error        = "Option '%s' used twice in statement",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4299, Option used twice in statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4299, Option '%s' used twice in statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SEQUENCE_NAME = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SEQUENCE_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid sequence name",
 | 
						|
      .str_user_error        = "invalid sequence name",
 | 
						|
      .oracle_errno          = 2277,
 | 
						|
      .oracle_str_error      = "ORA-02277: invalid sequence name",
 | 
						|
      .oracle_str_user_error = "ORA-02277: invalid sequence name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_MAXVALUE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_MAXVALUE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate MAXVALUE/NOMAXVALUE specifications",
 | 
						|
      .str_user_error        = "duplicate MAXVALUE/NOMAXVALUE specifications",
 | 
						|
      .oracle_errno          = 2278,
 | 
						|
      .oracle_str_error      = "ORA-02278: duplicate MAXVALUE/NOMAXVALUE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02278: duplicate MAXVALUE/NOMAXVALUE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_MINVALUE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_MINVALUE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate MINVALUE/NOMINVALUE specifications",
 | 
						|
      .str_user_error        = "duplicate MINVALUE/NOMINVALUE specifications",
 | 
						|
      .oracle_errno          = 2279,
 | 
						|
      .oracle_str_error      = "ORA-02279: duplicate MINVALUE/NOMINVALUE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02279: duplicate MINVALUE/NOMINVALUE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_CYCLE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_CYCLE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate CYCLE/NOCYCLE specifications",
 | 
						|
      .str_user_error        = "duplicate CYCLE/NOCYCLE specifications",
 | 
						|
      .oracle_errno          = 2280,
 | 
						|
      .oracle_str_error      = "ORA-02280: duplicate CYCLE/NOCYCLE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02280: duplicate CYCLE/NOCYCLE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_CACHE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_CACHE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate CACHE/NOCACHE specifications",
 | 
						|
      .str_user_error        = "duplicate CACHE/NOCACHE specifications",
 | 
						|
      .oracle_errno          = 2281,
 | 
						|
      .oracle_str_error      = "ORA-02281: duplicate CACHE/NOCACHE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02281: duplicate CACHE/NOCACHE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_ORDER_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_ORDER_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate ORDER/NOORDER specifications",
 | 
						|
      .str_user_error        = "duplicate ORDER/NOORDER specifications",
 | 
						|
      .oracle_errno          = 2282,
 | 
						|
      .oracle_str_error      = "ORA-02282: duplicate ORDER/NOORDER specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02282: duplicate ORDER/NOORDER specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONFL_MAXVALUE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_CONFL_MAXVALUE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "conflicting MAXVALUE/NOMAXVALUE specifications",
 | 
						|
      .str_user_error        = "conflicting MAXVALUE/NOMAXVALUE specifications",
 | 
						|
      .oracle_errno          = 2278,
 | 
						|
      .oracle_str_error      = "ORA-02278: conflicting MAXVALUE/NOMAXVALUE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02278: conflicting MAXVALUE/NOMAXVALUE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONFL_MINVALUE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_CONFL_MINVALUE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "conflicting MINVALUE/NOMINVALUE specifications",
 | 
						|
      .str_user_error        = "conflicting MINVALUE/NOMINVALUE specifications",
 | 
						|
      .oracle_errno          = 2279,
 | 
						|
      .oracle_str_error      = "ORA-02279: conflicting MINVALUE/NOMINVALUE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02279: conflicting MINVALUE/NOMINVALUE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONFL_CYCLE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_CONFL_CYCLE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "conflicting CYCLE/NOCYCLE specifications",
 | 
						|
      .str_user_error        = "conflicting CYCLE/NOCYCLE specifications",
 | 
						|
      .oracle_errno          = 2280,
 | 
						|
      .oracle_str_error      = "ORA-02280: conflicting CYCLE/NOCYCLE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02280: conflicting CYCLE/NOCYCLE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONFL_CACHE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_CONFL_CACHE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "conflicting CACHE/NOCACHE specifications",
 | 
						|
      .str_user_error        = "conflicting CACHE/NOCACHE specifications",
 | 
						|
      .oracle_errno          = 2281,
 | 
						|
      .oracle_str_error      = "ORA-02281: conflicting CACHE/NOCACHE specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02281: conflicting CACHE/NOCACHE specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONFL_ORDER_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_CONFL_ORDER_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "conflicting ORDER/NOORDER specifications",
 | 
						|
      .str_user_error        = "conflicting ORDER/NOORDER specifications",
 | 
						|
      .oracle_errno          = 2282,
 | 
						|
      .oracle_str_error      = "ORA-02282: conflicting ORDER/NOORDER specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02282: conflicting ORDER/NOORDER specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_START_SEQ_NUMBER_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_START_SEQ_NUMBER_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot alter starting sequence number",
 | 
						|
      .str_user_error        = "cannot alter starting sequence number",
 | 
						|
      .oracle_errno          = 2283,
 | 
						|
      .oracle_str_error      = "ORA-02283: cannot alter starting sequence number",
 | 
						|
      .oracle_str_user_error = "ORA-02283: cannot alter starting sequence number"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_INCREMENT_BY_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_INCREMENT_BY_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate INCREMENT BY specifications",
 | 
						|
      .str_user_error        = "duplicate INCREMENT BY specifications",
 | 
						|
      .oracle_errno          = 2284,
 | 
						|
      .oracle_str_error      = "ORA-02284: duplicate INCREMENT BY specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02284: duplicate INCREMENT BY specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_START_WITH_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_START_WITH_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate START WITH specifications",
 | 
						|
      .str_user_error        = "duplicate START WITH specifications",
 | 
						|
      .oracle_errno          = 2285,
 | 
						|
      .oracle_str_error      = "ORA-02285: duplicate START WITH specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02285: duplicate START WITH specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REQUIRE_ALTER_SEQ_OPTION = {
 | 
						|
      .error_name            = "OB_ERR_REQUIRE_ALTER_SEQ_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no options specified for ALTER SEQUENCE",
 | 
						|
      .str_user_error        = "no options specified for ALTER SEQUENCE",
 | 
						|
      .oracle_errno          = 2286,
 | 
						|
      .oracle_str_error      = "ORA-02286: no options specified for ALTER SEQUENCE",
 | 
						|
      .oracle_str_user_error = "ORA-02286: no options specified for ALTER SEQUENCE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_NOT_ALLOWED_HERE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_NOT_ALLOWED_HERE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence number not allowed here",
 | 
						|
      .str_user_error        = "sequence number not allowed here",
 | 
						|
      .oracle_errno          = 2287,
 | 
						|
      .oracle_str_error      = "ORA-02287: sequence number not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-02287: sequence number not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence does not exist",
 | 
						|
      .str_user_error        = "sequence does not exist",
 | 
						|
      .oracle_errno          = 2289,
 | 
						|
      .oracle_str_error      = "ORA-02289: sequence does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-02289: sequence does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_OPTION_MUST_BE_INTEGER = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_OPTION_MUST_BE_INTEGER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence parameter must be an integer",
 | 
						|
      .str_user_error        = "sequence parameter %s must be an integer",
 | 
						|
      .oracle_errno          = 4001,
 | 
						|
      .oracle_str_error      = "ORA-04001: sequence parameter must be an integer",
 | 
						|
      .oracle_str_user_error = "ORA-04001: sequence parameter %s must be an integer"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_INCREMENT_CAN_NOT_BE_ZERO = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_INCREMENT_CAN_NOT_BE_ZERO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "INCREMENT must be a nonzero integer",
 | 
						|
      .str_user_error        = "INCREMENT must be a nonzero integer",
 | 
						|
      .oracle_errno          = 4002,
 | 
						|
      .oracle_str_error      = "ORA-04002: INCREMENT must be a nonzero integer",
 | 
						|
      .oracle_str_user_error = "ORA-04002: INCREMENT must be a nonzero integer"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_OPTION_EXCEED_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_OPTION_EXCEED_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence parameter exceeds maximum size allowed",
 | 
						|
      .str_user_error        = "sequence parameter exceeds maximum size allowed",
 | 
						|
      .oracle_errno          = 4003,
 | 
						|
      .oracle_str_error      = "ORA-04003: sequence parameter exceeds maximum size allowed",
 | 
						|
      .oracle_str_user_error = "ORA-04003: sequence parameter exceeds maximum size allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MINVALUE_LARGER_THAN_MAXVALUE = {
 | 
						|
      .error_name            = "OB_ERR_MINVALUE_LARGER_THAN_MAXVALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MINVALUE must be less than MAXVALUE",
 | 
						|
      .str_user_error        = "MINVALUE must be less than MAXVALUE",
 | 
						|
      .oracle_errno          = 4004,
 | 
						|
      .oracle_str_error      = "ORA-04004: MINVALUE must be less than MAXVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-04004: MINVALUE must be less than MAXVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_INCREMENT_TOO_LARGE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_INCREMENT_TOO_LARGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "INCREMENT must be less than MAXVALUE minus MINVALUE",
 | 
						|
      .str_user_error        = "INCREMENT must be less than MAXVALUE minus MINVALUE",
 | 
						|
      .oracle_errno          = 4005,
 | 
						|
      .oracle_str_error      = "ORA-04005: INCREMENT must be less than MAXVALUE minus MINVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-04005: INCREMENT must be less than MAXVALUE minus MINVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_START_WITH_LESS_THAN_MINVALUE = {
 | 
						|
      .error_name            = "OB_ERR_START_WITH_LESS_THAN_MINVALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "START WITH cannot be less than MINVALUE",
 | 
						|
      .str_user_error        = "START WITH cannot be less than MINVALUE",
 | 
						|
      .oracle_errno          = 4006,
 | 
						|
      .oracle_str_error      = "ORA-04006: START WITH cannot be less than MINVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-04006: START WITH cannot be less than MINVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MINVALUE_EXCEED_CURRVAL = {
 | 
						|
      .error_name            = "OB_ERR_MINVALUE_EXCEED_CURRVAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MINVALUE cannot be made to exceed the current value",
 | 
						|
      .str_user_error        = "MINVALUE cannot be made to exceed the current value",
 | 
						|
      .oracle_errno          = 4007,
 | 
						|
      .oracle_str_error      = "ORA-04007: MINVALUE cannot be made to exceed the current value",
 | 
						|
      .oracle_str_user_error = "ORA-04007: MINVALUE cannot be made to exceed the current value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_START_WITH_EXCEED_MAXVALUE = {
 | 
						|
      .error_name            = "OB_ERR_START_WITH_EXCEED_MAXVALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "START WITH cannot be more than MAXVALUE",
 | 
						|
      .str_user_error        = "START WITH cannot be more than MAXVALUE",
 | 
						|
      .oracle_errno          = 4008,
 | 
						|
      .oracle_str_error      = "ORA-04008: START WITH cannot be more than MAXVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-04008: START WITH cannot be more than MAXVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MAXVALUE_EXCEED_CURRVAL = {
 | 
						|
      .error_name            = "OB_ERR_MAXVALUE_EXCEED_CURRVAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MAXVALUE cannot be made to be less than the current value",
 | 
						|
      .str_user_error        = "MAXVALUE cannot be made to be less than the current value",
 | 
						|
      .oracle_errno          = 4009,
 | 
						|
      .oracle_str_error      = "ORA-04009: MAXVALUE cannot be made to be less than the current value",
 | 
						|
      .oracle_str_user_error = "ORA-04009: MAXVALUE cannot be made to be less than the current value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_CACHE_TOO_SMALL = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_CACHE_TOO_SMALL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the number of values to CACHE must be greater than 1",
 | 
						|
      .str_user_error        = "the number of values to CACHE must be greater than 1",
 | 
						|
      .oracle_errno          = 4010,
 | 
						|
      .oracle_str_error      = "ORA-04010: the number of values to CACHE must be greater than 1",
 | 
						|
      .oracle_str_user_error = "ORA-04010: the number of values to CACHE must be greater than 1"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_OPTION_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_OPTION_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence option value out of range",
 | 
						|
      .str_user_error        = "sequence option value out of range",
 | 
						|
      .oracle_errno          = 4011,
 | 
						|
      .oracle_str_error      = "ORA-04011: sequence option value out of range",
 | 
						|
      .oracle_str_user_error = "ORA-04011: sequence option value out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_CACHE_TOO_LARGE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_CACHE_TOO_LARGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "number to CACHE must be less than one cycle",
 | 
						|
      .str_user_error        = "number to CACHE must be less than one cycle",
 | 
						|
      .oracle_errno          = 4013,
 | 
						|
      .oracle_str_error      = "ORA-04013: number to CACHE must be less than one cycle",
 | 
						|
      .oracle_str_user_error = "ORA-04013: number to CACHE must be less than one cycle"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_REQUIRE_MINVALUE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_REQUIRE_MINVALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "descending sequences that CYCLE must specify MINVALUE",
 | 
						|
      .str_user_error        = "descending sequences that CYCLE must specify MINVALUE",
 | 
						|
      .oracle_errno          = 4014,
 | 
						|
      .oracle_str_error      = "ORA-04014: descending sequences that CYCLE must specify MINVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-04014: descending sequences that CYCLE must specify MINVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_REQUIRE_MAXVALUE = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_REQUIRE_MAXVALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ascending sequences that CYCLE must specify MAXVALUE",
 | 
						|
      .str_user_error        = "ascending sequences that CYCLE must specify MAXVALUE",
 | 
						|
      .oracle_errno          = 4015,
 | 
						|
      .oracle_str_error      = "ORA-04015: ascending sequences that CYCLE must specify MAXVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-04015: ascending sequences that CYCLE must specify MAXVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_NO_LONGER_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_NO_LONGER_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence no longer exists",
 | 
						|
      .str_user_error        = "sequence %s no longer exists",
 | 
						|
      .oracle_errno          = 4015,
 | 
						|
      .oracle_str_error      = "ORA-04015: sequence no longer exists",
 | 
						|
      .oracle_str_user_error = "ORA-04015: sequence %s no longer exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SEQ_VALUE_EXCEED_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_SEQ_VALUE_EXCEED_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence exceeds limit and cannot be instantiated",
 | 
						|
      .str_user_error        = "sequence exceeds %s and cannot be instantiated",
 | 
						|
      .oracle_errno          = 8004,
 | 
						|
      .oracle_str_error      = "ORA-08004: sequence exceeds limit and cannot be instantiated",
 | 
						|
      .oracle_str_user_error = "ORA-08004: sequence exceeds %s and cannot be instantiated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DIVISOR_IS_ZERO = {
 | 
						|
      .error_name            = "OB_ERR_DIVISOR_IS_ZERO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "divisor is equal to zero",
 | 
						|
      .str_user_error        = "divisor is equal to zero",
 | 
						|
      .oracle_errno          = 1476,
 | 
						|
      .oracle_str_error      = "ORA-01476: divisor is equal to zero",
 | 
						|
      .oracle_str_user_error = "ORA-01476: divisor is equal to zero"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AES_DECRYPT = {
 | 
						|
      .error_name            = "OB_ERR_AES_DECRYPT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to decrypt data",
 | 
						|
      .str_user_error        = "fail to decrypt data",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4334, fail to decrypt data",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4334, fail to decrypt data"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AES_ENCRYPT = {
 | 
						|
      .error_name            = "OB_ERR_AES_ENCRYPT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to encrypt data",
 | 
						|
      .str_user_error        = "fail to encrypt data",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4335, fail to encrypt data",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4335, fail to encrypt data"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AES_IV_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_AES_IV_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_AES_INVALID_IV,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The initialization vector supplied to aes_encrypt is too short. Must be at least 16 bytes long",
 | 
						|
      .str_user_error        = "The initialization vector supplied to aes_encrypt is too short. Must be at least 16 bytes long",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4336, The initialization vector supplied to aes_encrypt is too short. Must be at least 16 bytes long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4336, The initialization vector supplied to aes_encrypt is too short. Must be at least 16 bytes long"
 | 
						|
};
 | 
						|
static const _error _error_OB_STORE_DIR_ERROR = {
 | 
						|
      .error_name            = "OB_STORE_DIR_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "store directory structure error",
 | 
						|
      .str_user_error        = "store directory structure error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4337, store directory structure error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4337, store directory structure error"
 | 
						|
};
 | 
						|
static const _error _error_OB_OPEN_TWICE = {
 | 
						|
      .error_name            = "OB_OPEN_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "open twice",
 | 
						|
      .str_user_error        = "open twice",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4338, open twice",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4338, open twice"
 | 
						|
};
 | 
						|
static const _error _error_OB_RAID_SUPER_BLOCK_NOT_MACTH = {
 | 
						|
      .error_name            = "OB_RAID_SUPER_BLOCK_NOT_MACTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "raid super block not match",
 | 
						|
      .str_user_error        = "raid super block not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4339, raid super block not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4339, raid super block not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_OPEN = {
 | 
						|
      .error_name            = "OB_NOT_OPEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not opened",
 | 
						|
      .str_user_error        = "not opened",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4340, not opened",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4340, not opened"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_IN_SERVICE = {
 | 
						|
      .error_name            = "OB_NOT_IN_SERVICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "target module is not in service",
 | 
						|
      .str_user_error        = "target module is not in service",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4341, target module is not in service",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4341, target module is not in service"
 | 
						|
};
 | 
						|
static const _error _error_OB_RAID_DISK_NOT_NORMAL = {
 | 
						|
      .error_name            = "OB_RAID_DISK_NOT_NORMAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "raid disk not in normal status",
 | 
						|
      .str_user_error        = "raid disk not in normal status",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4342, raid disk not in normal status",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4342, raid disk not in normal status"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_SCHEMA_NOT_FULL = {
 | 
						|
      .error_name            = "OB_TENANT_SCHEMA_NOT_FULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tenant schema is not full",
 | 
						|
      .str_user_error        = "tenant schema is not full",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4343, tenant schema is not full",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4343, tenant schema is not full"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_QUERY_TIMESTAMP = {
 | 
						|
      .error_name            = "OB_INVALID_QUERY_TIMESTAMP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid timestamp",
 | 
						|
      .str_user_error        = "invalid timestamp",
 | 
						|
      .oracle_errno          = 8186,
 | 
						|
      .oracle_str_error      = "ORA-08186: invalid timestamp",
 | 
						|
      .oracle_str_user_error = "ORA-08186: invalid timestamp"
 | 
						|
};
 | 
						|
static const _error _error_OB_DIR_NOT_EMPTY = {
 | 
						|
      .error_name            = "OB_DIR_NOT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "dir not empty",
 | 
						|
      .str_user_error        = "dir not empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4345, dir not empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4345, dir not empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEMA_NOT_UPTODATE = {
 | 
						|
      .error_name            = "OB_SCHEMA_NOT_UPTODATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "schema is not up to date for read",
 | 
						|
      .str_user_error        = "schema is not up to date for read",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4346, schema is not up to date for read",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4346, schema is not up to date for read"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROLE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ROLE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "role does not exist",
 | 
						|
      .str_user_error        = "role '%.*s' does not exist",
 | 
						|
      .oracle_errno          = 1919,
 | 
						|
      .oracle_str_error      = "ORA-01919: role does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01919: role '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROLE_EXIST = {
 | 
						|
      .error_name            = "OB_ROLE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "role exists",
 | 
						|
      .str_user_error        = "role '%.*s' exists",
 | 
						|
      .oracle_errno          = 1921,
 | 
						|
      .oracle_str_error      = "ORA-01921: role name conflicts with another user or role name",
 | 
						|
      .oracle_str_user_error = "ORA-01921: role name '%.*s' conflicts with another user or role name"
 | 
						|
};
 | 
						|
static const _error _error_OB_PRIV_DUP = {
 | 
						|
      .error_name            = "OB_PRIV_DUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate privilege listed",
 | 
						|
      .str_user_error        = "duplicate privilege listed",
 | 
						|
      .oracle_errno          = 1711,
 | 
						|
      .oracle_str_error      = "ORA-01711: duplicate privilege listed",
 | 
						|
      .oracle_str_user_error = "ORA-01711: duplicate privilege listed"
 | 
						|
};
 | 
						|
static const _error _error_OB_KEYSTORE_EXIST = {
 | 
						|
      .error_name            = "OB_KEYSTORE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the keystore already exists and each tenant can only have at most one",
 | 
						|
      .str_user_error        = "the keystore already exists and each tenant can only have at most one",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4350, the keystore already exists and each tenant can only have at most one",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4350, the keystore already exists and each tenant can only have at most one"
 | 
						|
};
 | 
						|
static const _error _error_OB_KEYSTORE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_KEYSTORE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the keystore is not exist",
 | 
						|
      .str_user_error        = "the keystore is not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4351, the keystore is not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4351, the keystore is not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_KEYSTORE_WRONG_PASSWORD = {
 | 
						|
      .error_name            = "OB_KEYSTORE_WRONG_PASSWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the password is wrong for keystore",
 | 
						|
      .str_user_error        = "the password is wrong for keystore",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4352, the password is wrong for keystore",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4352, the password is wrong for keystore"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLESPACE_EXIST = {
 | 
						|
      .error_name            = "OB_TABLESPACE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tablespace already exists",
 | 
						|
      .str_user_error        = "tablespace '%.*s' already exists",
 | 
						|
      .oracle_errno          = 1543,
 | 
						|
      .oracle_str_error      = "ORA-01543: tablespace already exists",
 | 
						|
      .oracle_str_user_error = "ORA-01543: tablespace '%.*s' already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLESPACE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TABLESPACE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tablespace does not exist",
 | 
						|
      .str_user_error        = "tablespace '%.*s' does not exist",
 | 
						|
      .oracle_errno          = 959,
 | 
						|
      .oracle_str_error      = "ORA-00959: tablespace does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00959: tablespace '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLESPACE_DELETE_NOT_EMPTY = {
 | 
						|
      .error_name            = "OB_TABLESPACE_DELETE_NOT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot delete a tablespace which is not empty",
 | 
						|
      .str_user_error        = "cannot delete a tablespace which is not empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4355, cannot delete a tablespace which is not empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4355, cannot delete a tablespace which is not empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_FLOAT_PRECISION_OUT_RANGE = {
 | 
						|
      .error_name            = "OB_FLOAT_PRECISION_OUT_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "floating point precision is out of range (1 to 126)",
 | 
						|
      .str_user_error        = "floating point precision is out of range (1 to 126)",
 | 
						|
      .oracle_errno          = 1724,
 | 
						|
      .oracle_str_error      = "ORA-01724: floating point precision is out of range (1 to 126)",
 | 
						|
      .oracle_str_user_error = "ORA-01724: floating point precision is out of range (1 to 126)"
 | 
						|
};
 | 
						|
static const _error _error_OB_NUMERIC_PRECISION_OUT_RANGE = {
 | 
						|
      .error_name            = "OB_NUMERIC_PRECISION_OUT_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "numeric precision specifier is out of range (1 to 38)",
 | 
						|
      .str_user_error        = "numeric precision specifier is out of range (1 to 38)",
 | 
						|
      .oracle_errno          = 1727,
 | 
						|
      .oracle_str_error      = "ORA-01727: numeric precision specifier is out of range (1 to 38)",
 | 
						|
      .oracle_str_user_error = "ORA-01727: numeric precision specifier is out of range (1 to 38)"
 | 
						|
};
 | 
						|
static const _error _error_OB_NUMERIC_SCALE_OUT_RANGE = {
 | 
						|
      .error_name            = "OB_NUMERIC_SCALE_OUT_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "numeric scale specifier is out of range (-84 to 127)",
 | 
						|
      .str_user_error        = "numeric scale specifier is out of range (-84 to 127)",
 | 
						|
      .oracle_errno          = 1728,
 | 
						|
      .oracle_str_error      = "ORA-01728: numeric scale specifier is out of range (-84 to 127)",
 | 
						|
      .oracle_str_user_error = "ORA-01728: numeric scale specifier is out of range (-84 to 127)"
 | 
						|
};
 | 
						|
static const _error _error_OB_KEYSTORE_NOT_OPEN = {
 | 
						|
      .error_name            = "OB_KEYSTORE_NOT_OPEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the keystore is not open",
 | 
						|
      .str_user_error        = "the keystore is not open",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4359, the keystore is not open",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4359, the keystore is not open"
 | 
						|
};
 | 
						|
static const _error _error_OB_KEYSTORE_OPEN_NO_MASTER_KEY = {
 | 
						|
      .error_name            = "OB_KEYSTORE_OPEN_NO_MASTER_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the keystore opened with dont have a master key",
 | 
						|
      .str_user_error        = "the keystore opened with dont have a master key",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4360, the keystore opened with dont have a master key",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4360, the keystore opened with dont have a master key"
 | 
						|
};
 | 
						|
static const _error _error_OB_SLOG_REACH_MAX_CONCURRENCY = {
 | 
						|
      .error_name            = "OB_SLOG_REACH_MAX_CONCURRENCY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "slog active transaction entries reach maximum",
 | 
						|
      .str_user_error        = "slog active transaction entries reach maximum",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4361, slog active transaction entries reach maximum",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4361, slog active transaction entries reach maximum"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BY_ACCESS_OR_SESSION_CLAUSE_NOT_ALLOWED_FOR_NOAUDIT = {
 | 
						|
      .error_name            = "OB_ERR_BY_ACCESS_OR_SESSION_CLAUSE_NOT_ALLOWED_FOR_NOAUDIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "BY ACCESS | SESSION clause not allowed for NOAUDIT",
 | 
						|
      .str_user_error        = "BY ACCESS | SESSION clause not allowed for NOAUDIT",
 | 
						|
      .oracle_errno          = 1718,
 | 
						|
      .oracle_str_error      = "ORA-01718: BY ACCESS | SESSION clause not allowed for NOAUDIT",
 | 
						|
      .oracle_str_user_error = "ORA-01718: BY ACCESS | SESSION clause not allowed for NOAUDIT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AUDITING_THE_OBJECT_IS_NOT_SUPPORTED = {
 | 
						|
      .error_name            = "OB_ERR_AUDITING_THE_OBJECT_IS_NOT_SUPPORTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "auditing the object is not supported",
 | 
						|
      .str_user_error        = "auditing the object is not supported",
 | 
						|
      .oracle_errno          = 1930,
 | 
						|
      .oracle_str_error      = "ORA-01930: auditing the object is not supported",
 | 
						|
      .oracle_str_user_error = "ORA-01930: auditing the object is not supported"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DDL_STATEMENT_CANNOT_BE_AUDITED_WITH_BY_SESSION_SPECIFIED = {
 | 
						|
      .error_name            = "OB_ERR_DDL_STATEMENT_CANNOT_BE_AUDITED_WITH_BY_SESSION_SPECIFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DDL statement cannot be audited with BY SESSION specified",
 | 
						|
      .str_user_error        = "DDL statement cannot be audited with BY SESSION specified",
 | 
						|
      .oracle_errno          = 32595,
 | 
						|
      .oracle_str_error      = "ORA-32595: DDL statement cannot be audited with BY SESSION specified",
 | 
						|
      .oracle_str_user_error = "ORA-32595: DDL statement cannot be audited with BY SESSION specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_VALID_PASSWORD = {
 | 
						|
      .error_name            = "OB_ERR_NOT_VALID_PASSWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NOT_VALID_PASSWORD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Your password does not satisfy the current policy requirements",
 | 
						|
      .str_user_error        = "Your password does not satisfy the current policy requirements",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4365, Your password does not satisfy the current policy requirements",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4365, Your password does not satisfy the current policy requirements"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MUST_CHANGE_PASSWORD = {
 | 
						|
      .error_name            = "OB_ERR_MUST_CHANGE_PASSWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MUST_CHANGE_PASSWORD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "You must reset your password using ALTER USER statement before executing this statement",
 | 
						|
      .str_user_error        = "You must reset your password using ALTER USER statement before executing this statement",
 | 
						|
      .oracle_errno          = 28001,
 | 
						|
      .oracle_str_error      = "ORA-28001: the password has expired",
 | 
						|
      .oracle_str_user_error = "ORA-28001: the password has expired"
 | 
						|
};
 | 
						|
static const _error _error_OB_OVERSIZE_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_OVERSIZE_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_OVERSIZE_NEED_RETRY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The data more than 64M(rpc limit), split into smaller task and retry",
 | 
						|
      .str_user_error        = "The data more than 64M(rpc limit), split into smaller task and retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4367, The data more than 64M(rpc limit), split into smaller task and retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4367, The data more than 64M(rpc limit), split into smaller task and retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBCONFIG_CLUSTER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_OBCONFIG_CLUSTER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cluster not exists",
 | 
						|
      .str_user_error        = "cluster not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4368, cluster not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4368, cluster not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GET_MASTER_KEY = {
 | 
						|
      .error_name            = "OB_ERR_GET_MASTER_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to get master key",
 | 
						|
      .str_user_error        = "fail to get master key",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4369, fail to get master key",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4369, fail to get master key"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TDE_METHOD = {
 | 
						|
      .error_name            = "OB_ERR_TDE_METHOD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tde_method parameter is invalid",
 | 
						|
      .str_user_error        = "tde_method parameter is invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4370, tde_method parameter is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4370, tde_method parameter is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_KMS_SERVER_CONNECT_ERROR = {
 | 
						|
      .error_name            = "OB_KMS_SERVER_CONNECT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "kms server connect failed, may be kms server is down",
 | 
						|
      .str_user_error        = "kms server connect failed, may be kms server is down",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4371, kms server connect failed, may be kms server is down",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4371, kms server connect failed, may be kms server is down"
 | 
						|
};
 | 
						|
static const _error _error_OB_KMS_SERVER_IS_BUSY = {
 | 
						|
      .error_name            = "OB_KMS_SERVER_IS_BUSY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "kms server is busy, try again",
 | 
						|
      .str_user_error        = "kms server is busy, try again",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4372, kms server is busy, try again",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4372, kms server is busy, try again"
 | 
						|
};
 | 
						|
static const _error _error_OB_KMS_SERVER_UPDATE_KEY_CONFLICT = {
 | 
						|
      .error_name            = "OB_KMS_SERVER_UPDATE_KEY_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "kms server update key conflict at the same time, please try again",
 | 
						|
      .str_user_error        = "kms server update key conflict at the same time, please try again",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4373, kms server update key conflict at the same time, please try again",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4373, kms server update key conflict at the same time, please try again"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VALUE_LARGER_THAN_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_VALUE_LARGER_THAN_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "value larger than specified precision allowed for this column",
 | 
						|
      .str_user_error        = "value larger than specified precision allowed for this column",
 | 
						|
      .oracle_errno          = 1438,
 | 
						|
      .oracle_str_error      = "ORA-01438: value larger than specified precision allowed for this column",
 | 
						|
      .oracle_str_user_error = "ORA-01438: value larger than specified precision allowed for this column"
 | 
						|
};
 | 
						|
static const _error _error_OB_DISK_ERROR = {
 | 
						|
      .error_name            = "OB_DISK_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "observer has disk error",
 | 
						|
      .str_user_error        = "observer has disk error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4375, observer has disk error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4375, observer has disk error"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNIMPLEMENTED_FEATURE = {
 | 
						|
      .error_name            = "OB_UNIMPLEMENTED_FEATURE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unimplemented feature",
 | 
						|
      .str_user_error        = "unimplemented feature",
 | 
						|
      .oracle_errno          = 3001,
 | 
						|
      .oracle_str_error      = "ORA-03001: unimplemented feature",
 | 
						|
      .oracle_str_user_error = "ORA-03001: unimplemented feature"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DEFENSIVE_CHECK = {
 | 
						|
      .error_name            = "OB_ERR_DEFENSIVE_CHECK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fatal internal error",
 | 
						|
      .str_user_error        = "fatal internal error in [%.*s]",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4377, fatal internal error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4377, fatal internal error in [%.*s]"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLUSTER_NAME_HASH_CONFLICT = {
 | 
						|
      .error_name            = "OB_CLUSTER_NAME_HASH_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cluster name conflict",
 | 
						|
      .str_user_error        = "cluster name conflict",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4378, cluster name conflict",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4378, cluster name conflict"
 | 
						|
};
 | 
						|
static const _error _error_OB_HEAP_TABLE_EXAUSTED = {
 | 
						|
      .error_name            = "OB_HEAP_TABLE_EXAUSTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "heap table has reached max row size, cannot insert anymore",
 | 
						|
      .str_user_error        = "heap table has reached max row size, cannot insert anymore",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4379, heap table has reached max row size, cannot insert anymore",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4379, heap table has reached max row size, cannot insert anymore"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INDEX_KEY_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_INDEX_KEY_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "index key not found",
 | 
						|
      .str_user_error        = "index key not found",
 | 
						|
      .oracle_errno          = 8102,
 | 
						|
      .oracle_str_error      = "ORA-08102: index key not found",
 | 
						|
      .oracle_str_user_error = "ORA-08102: index key not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNSUPPORTED_DEPRECATED_FEATURE = {
 | 
						|
      .error_name            = "OB_UNSUPPORTED_DEPRECATED_FEATURE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not supported, deprecated %s feature",
 | 
						|
      .str_user_error        = "Not supported, deprecated %s feature",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4381, Not supported, deprecated %s feature",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4381, Not supported, deprecated %s feature"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_RESTART_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_DUP_RESTART_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate RESTART specified",
 | 
						|
      .str_user_error        = "duplicate RESTART specified",
 | 
						|
      .oracle_errno          = 64601,
 | 
						|
      .oracle_str_error      = "ORA-64601: duplicate RESTART specified",
 | 
						|
      .oracle_str_user_error = "ORA-64601: duplicate RESTART specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_GTI_NOT_READY = {
 | 
						|
      .error_name            = "OB_GTI_NOT_READY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transaction id is not ready",
 | 
						|
      .str_user_error        = "transaction id is not ready",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4383, transaction id is not ready",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4383, transaction id is not ready"
 | 
						|
};
 | 
						|
static const _error _error_OB_STACK_OVERFLOW = {
 | 
						|
      .error_name            = "OB_STACK_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "stack overflow",
 | 
						|
      .str_user_error        = "stack overflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4385, stack overflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4385, stack overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_ALLOW_REMOVING_LEADER = {
 | 
						|
      .error_name            = "OB_NOT_ALLOW_REMOVING_LEADER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Do not allow removing leader",
 | 
						|
      .str_user_error        = "Do not allow removing leader",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4386, Do not allow removing leader",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4386, Do not allow removing leader"
 | 
						|
};
 | 
						|
static const _error _error_OB_NEED_SWITCH_CONSUMER_GROUP = {
 | 
						|
      .error_name            = "OB_NEED_SWITCH_CONSUMER_GROUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Need switch consumer group",
 | 
						|
      .str_user_error        = "Need switch consumer group",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4387, Need switch consumer group",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4387, Need switch consumer group"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNEXPECT_INTERNAL_ERROR = {
 | 
						|
      .error_name            = "OB_UNEXPECT_INTERNAL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unexpected internal error happen, please checkout the internal errcode",
 | 
						|
      .str_user_error        = "Unexpected internal error happen, please checkout the internal errcode",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4388, Unexpected internal error happen, please checkout the internal errcode",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4388, Unexpected internal error happen, please checkout the internal errcode"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MUCH_TIME = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MUCH_TIME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Porcessing time is too long",
 | 
						|
      .str_user_error        = "Porcessing time is too long",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4389, Porcessing time is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4389, Porcessing time is too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REMOTE_SCHEMA_NOT_FULL = {
 | 
						|
      .error_name            = "OB_ERR_REMOTE_SCHEMA_NOT_FULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Schema of remote server is not refreshed yet",
 | 
						|
      .str_user_error        = "Schema of remote server is not refreshed yet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4390, Schema of remote server is not refreshed yet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4390, Schema of remote server is not refreshed yet"
 | 
						|
};
 | 
						|
static const _error _error_OB_DDL_SSTABLE_RANGE_CROSS = {
 | 
						|
      .error_name            = "OB_DDL_SSTABLE_RANGE_CROSS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ddl sstable version range cross",
 | 
						|
      .str_user_error        = "ddl sstable version range cross",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4391, ddl sstable version range cross",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4391, ddl sstable version range cross"
 | 
						|
};
 | 
						|
static const _error _error_OB_IMPORT_NOT_IN_SERVER = {
 | 
						|
      .error_name            = "OB_IMPORT_NOT_IN_SERVER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Import not in service",
 | 
						|
      .str_user_error        = "Import not in service",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4505, Import not in service",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4505, Import not in service"
 | 
						|
};
 | 
						|
static const _error _error_OB_CONVERT_ERROR = {
 | 
						|
      .error_name            = "OB_CONVERT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Convert error",
 | 
						|
      .str_user_error        = "Convert error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4507, Convert error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4507, Convert error"
 | 
						|
};
 | 
						|
static const _error _error_OB_BYPASS_TIMEOUT = {
 | 
						|
      .error_name            = "OB_BYPASS_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Bypass timeout",
 | 
						|
      .str_user_error        = "Bypass timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4510, Bypass timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4510, Bypass timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_RS_STATE_NOT_ALLOW = {
 | 
						|
      .error_name            = "OB_RS_STATE_NOT_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RootServer state error",
 | 
						|
      .str_user_error        = "RootServer state error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4512, RootServer state error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4512, RootServer state error"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_REPLICA_VALID = {
 | 
						|
      .error_name            = "OB_NO_REPLICA_VALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No replica is valid",
 | 
						|
      .str_user_error        = "No replica is valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4515, No replica is valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4515, No replica is valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_NEED_UPDATE = {
 | 
						|
      .error_name            = "OB_NO_NEED_UPDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No need to update",
 | 
						|
      .str_user_error        = "No need to update",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4517, No need to update",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4517, No need to update"
 | 
						|
};
 | 
						|
static const _error _error_OB_CACHE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_CACHE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cache timeout",
 | 
						|
      .str_user_error        = "Cache timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4518, Cache timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4518, Cache timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_ITER_STOP = {
 | 
						|
      .error_name            = "OB_ITER_STOP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Iteration was stopped",
 | 
						|
      .str_user_error        = "Iteration was stopped",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4519, Iteration was stopped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4519, Iteration was stopped"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_ALREADY_MASTER = {
 | 
						|
      .error_name            = "OB_ZONE_ALREADY_MASTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The zone is the master already",
 | 
						|
      .str_user_error        = "The zone is the master already",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4523, The zone is the master already",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4523, The zone is the master already"
 | 
						|
};
 | 
						|
static const _error _error_OB_IP_PORT_IS_NOT_SLAVE_ZONE = {
 | 
						|
      .error_name            = "OB_IP_PORT_IS_NOT_SLAVE_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not slave zone",
 | 
						|
      .str_user_error        = "Not slave zone",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4524, Not slave zone",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4524, Not slave zone"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_IS_NOT_SLAVE = {
 | 
						|
      .error_name            = "OB_ZONE_IS_NOT_SLAVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not slave zone",
 | 
						|
      .str_user_error        = "Not slave zone",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4525, Not slave zone",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4525, Not slave zone"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_IS_NOT_MASTER = {
 | 
						|
      .error_name            = "OB_ZONE_IS_NOT_MASTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not master zone",
 | 
						|
      .str_user_error        = "Not master zone",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4526, Not master zone",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4526, Not master zone"
 | 
						|
};
 | 
						|
static const _error _error_OB_CONFIG_NOT_SYNC = {
 | 
						|
      .error_name            = "OB_CONFIG_NOT_SYNC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "F0000",
 | 
						|
      .str_error             = "Configuration not sync",
 | 
						|
      .str_user_error        = "Configuration not sync",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4527, Configuration not sync",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4527, Configuration not sync"
 | 
						|
};
 | 
						|
static const _error _error_OB_IP_PORT_IS_NOT_ZONE = {
 | 
						|
      .error_name            = "OB_IP_PORT_IS_NOT_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Not a zone address",
 | 
						|
      .str_user_error        = "Not a zone address",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4528, Not a zone address",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4528, Not a zone address"
 | 
						|
};
 | 
						|
static const _error _error_OB_MASTER_ZONE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_MASTER_ZONE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Master zone not exist",
 | 
						|
      .str_user_error        = "Master zone not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4529, Master zone not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4529, Master zone not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_INFO_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ZONE_INFO_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Zone info not exist",
 | 
						|
      .str_user_error        = "Zone info \'%s\' not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4530, Zone info not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4530, Zone info \'%s\' not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_GET_ZONE_MASTER_UPS_FAILED = {
 | 
						|
      .error_name            = "OB_GET_ZONE_MASTER_UPS_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Failed to get master UpdateServer",
 | 
						|
      .str_user_error        = "Failed to get master UpdateServer",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4531, Failed to get master UpdateServer",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4531, Failed to get master UpdateServer"
 | 
						|
};
 | 
						|
static const _error _error_OB_MULTIPLE_MASTER_ZONES_EXIST = {
 | 
						|
      .error_name            = "OB_MULTIPLE_MASTER_ZONES_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Multiple master zones",
 | 
						|
      .str_user_error        = "Multiple master zones",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4532, Multiple master zones",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4532, Multiple master zones"
 | 
						|
};
 | 
						|
static const _error _error_OB_INDEXING_ZONE_INVALID = {
 | 
						|
      .error_name            = "OB_INDEXING_ZONE_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "indexing zone is not exist anymore or not active",
 | 
						|
      .str_user_error        = "indexing zone is not exist anymore or not active",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4533, indexing zone is not exist anymore or not active",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4533, indexing zone is not exist anymore or not active"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROOT_TABLE_RANGE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ROOT_TABLE_RANGE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Tablet range not exist",
 | 
						|
      .str_user_error        = "Tablet range not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4537, Tablet range not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4537, Tablet range not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROOT_MIGRATE_CONCURRENCY_FULL = {
 | 
						|
      .error_name            = "OB_ROOT_MIGRATE_CONCURRENCY_FULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Migrate concurrency full",
 | 
						|
      .str_user_error        = "Migrate concurrency full",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4538, Migrate concurrency full",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4538, Migrate concurrency full"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROOT_MIGRATE_INFO_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ROOT_MIGRATE_INFO_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Migrate info not found",
 | 
						|
      .str_user_error        = "Migrate info not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4539, Migrate info not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4539, Migrate info not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_DATA_LOAD_TABLE = {
 | 
						|
      .error_name            = "OB_NOT_DATA_LOAD_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No data to load",
 | 
						|
      .str_user_error        = "No data to load",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4540, No data to load",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4540, No data to load"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_LOAD_TABLE_DUPLICATED = {
 | 
						|
      .error_name            = "OB_DATA_LOAD_TABLE_DUPLICATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicated table data to load",
 | 
						|
      .str_user_error        = "Duplicated table data to load",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4541, Duplicated table data to load",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4541, Duplicated table data to load"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROOT_TABLE_ID_EXIST = {
 | 
						|
      .error_name            = "OB_ROOT_TABLE_ID_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table ID exist",
 | 
						|
      .str_user_error        = "Table ID exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4542, Table ID exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4542, Table ID exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_INDEX_TIMEOUT = {
 | 
						|
      .error_name            = "OB_INDEX_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Building index timeout",
 | 
						|
      .str_user_error        = "Building index timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4543, Building index timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4543, Building index timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROOT_NOT_INTEGRATED = {
 | 
						|
      .error_name            = "OB_ROOT_NOT_INTEGRATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Root not integrated",
 | 
						|
      .str_user_error        = "Root not integrated",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4544, Root not integrated",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4544, Root not integrated"
 | 
						|
};
 | 
						|
static const _error _error_OB_INDEX_INELIGIBLE = {
 | 
						|
      .error_name            = "OB_INDEX_INELIGIBLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "index data not unique",
 | 
						|
      .str_user_error        = "index data not unique",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4545, index data not unique",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4545, index data not unique"
 | 
						|
};
 | 
						|
static const _error _error_OB_REBALANCE_EXEC_TIMEOUT = {
 | 
						|
      .error_name            = "OB_REBALANCE_EXEC_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "execute replication or migration task timeout",
 | 
						|
      .str_user_error        = "execute replication or migration task timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4546, execute replication or migration task timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4546, execute replication or migration task timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_MERGE_NOT_STARTED = {
 | 
						|
      .error_name            = "OB_MERGE_NOT_STARTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "global merge not started",
 | 
						|
      .str_user_error        = "global merge not started",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4547, global merge not started",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4547, global merge not started"
 | 
						|
};
 | 
						|
static const _error _error_OB_MERGE_ALREADY_STARTED = {
 | 
						|
      .error_name            = "OB_MERGE_ALREADY_STARTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "merge already started",
 | 
						|
      .str_user_error        = "merge already started",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4548, merge already started",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4548, merge already started"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROOTSERVICE_EXIST = {
 | 
						|
      .error_name            = "OB_ROOTSERVICE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rootservice already exist",
 | 
						|
      .str_user_error        = "rootservice already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4549, rootservice already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4549, rootservice already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_RS_SHUTDOWN = {
 | 
						|
      .error_name            = "OB_RS_SHUTDOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rootservice is shutdown",
 | 
						|
      .str_user_error        = "rootservice is shutdown",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4550, rootservice is shutdown",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4550, rootservice is shutdown"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_MIGRATE_IN_DENIED = {
 | 
						|
      .error_name            = "OB_SERVER_MIGRATE_IN_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server migrate in denied",
 | 
						|
      .str_user_error        = "server migrate in denied",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4551, server migrate in denied",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4551, server migrate in denied"
 | 
						|
};
 | 
						|
static const _error _error_OB_REBALANCE_TASK_CANT_EXEC = {
 | 
						|
      .error_name            = "OB_REBALANCE_TASK_CANT_EXEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rebalance task can not executing now",
 | 
						|
      .str_user_error        = "rebalance task can not executing now",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4552, rebalance task can not executing now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4552, rebalance task can not executing now"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_CNT_REACH_ROOTSERVER_LIMIT = {
 | 
						|
      .error_name            = "OB_PARTITION_CNT_REACH_ROOTSERVER_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rootserver can not hold more partition",
 | 
						|
      .str_user_error        = "rootserver can not hold more partition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4553, rootserver can not hold more partition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4553, rootserver can not hold more partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_REBALANCE_TASK_NOT_IN_PROGRESS = {
 | 
						|
      .error_name            = "OB_REBALANCE_TASK_NOT_IN_PROGRESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rebalance task not in progress on observer",
 | 
						|
      .str_user_error        = "rebalance task not in progress on observer",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4554, rebalance task not in progress on observer",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4554, rebalance task not in progress on observer"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source not exist",
 | 
						|
      .str_user_error        = "Data source not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4600, Data source not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4600, Data source not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_TABLE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_TABLE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source table not exist",
 | 
						|
      .str_user_error        = "Data source table not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4601, Data source table not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4601, Data source table not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_RANGE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_RANGE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source range not exist",
 | 
						|
      .str_user_error        = "Data source range not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4602, Data source range not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4602, Data source range not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_DATA_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_DATA_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source data not exist",
 | 
						|
      .str_user_error        = "Data source data not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4603, Data source data not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4603, Data source data not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_SYS_ERROR = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_SYS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source sys error",
 | 
						|
      .str_user_error        = "Data source sys error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4604, Data source sys error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4604, Data source sys error"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source timeout",
 | 
						|
      .str_user_error        = "Data source timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4605, Data source timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4605, Data source timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_CONCURRENCY_FULL = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_CONCURRENCY_FULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "53000",
 | 
						|
      .str_error             = "Data source concurrency full",
 | 
						|
      .str_user_error        = "Data source concurrency full",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4606, Data source concurrency full",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4606, Data source concurrency full"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_WRONG_URI_FORMAT = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_WRONG_URI_FORMAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Data source wrong URI format",
 | 
						|
      .str_user_error        = "Data source wrong URI format",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4607, Data source wrong URI format",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4607, Data source wrong URI format"
 | 
						|
};
 | 
						|
static const _error _error_OB_SSTABLE_VERSION_UNEQUAL = {
 | 
						|
      .error_name            = "OB_SSTABLE_VERSION_UNEQUAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "SSTable version not equal",
 | 
						|
      .str_user_error        = "SSTable version not equal",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4608, SSTable version not equal",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4608, SSTable version not equal"
 | 
						|
};
 | 
						|
static const _error _error_OB_UPS_RENEW_LEASE_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_UPS_RENEW_LEASE_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ups should not renew its lease",
 | 
						|
      .str_user_error        = "ups should not renew its lease",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4609, ups should not renew its lease",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4609, ups should not renew its lease"
 | 
						|
};
 | 
						|
static const _error _error_OB_UPS_COUNT_OVER_LIMIT = {
 | 
						|
      .error_name            = "OB_UPS_COUNT_OVER_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ups count over limit",
 | 
						|
      .str_user_error        = "ups count over limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4610, ups count over limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4610, ups count over limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_UPS_MAJORITY = {
 | 
						|
      .error_name            = "OB_NO_UPS_MAJORITY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ups not form a majority",
 | 
						|
      .str_user_error        = "ups not form a majority",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4611, ups not form a majority",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4611, ups not form a majority"
 | 
						|
};
 | 
						|
static const _error _error_OB_INDEX_COUNT_REACH_THE_LIMIT = {
 | 
						|
      .error_name            = "OB_INDEX_COUNT_REACH_THE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "created index tables count has reach the limit:128",
 | 
						|
      .str_user_error        = "created index tables count has reach the limit:128",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4613, created index tables count has reach the limit:128",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4613, created index tables count has reach the limit:128"
 | 
						|
};
 | 
						|
static const _error _error_OB_TASK_EXPIRED = {
 | 
						|
      .error_name            = "OB_TASK_EXPIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "task expired",
 | 
						|
      .str_user_error        = "task expired",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4614, task expired",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4614, task expired"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLEGROUP_NOT_EMPTY = {
 | 
						|
      .error_name            = "OB_TABLEGROUP_NOT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tablegroup is not empty",
 | 
						|
      .str_user_error        = "tablegroup is not empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4615, tablegroup is not empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4615, tablegroup is not empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_SERVER_STATUS = {
 | 
						|
      .error_name            = "OB_INVALID_SERVER_STATUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server status is not valid",
 | 
						|
      .str_user_error        = "server status is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4620, server status is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4620, server status is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_ELEC_LEADER_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_ELEC_LEADER_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wait elect partition leader timeout",
 | 
						|
      .str_user_error        = "wait elect partition leader timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4621, wait elect partition leader timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4621, wait elect partition leader timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_ALL_RS_ONLINE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_ALL_RS_ONLINE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wait all rs online timeout",
 | 
						|
      .str_user_error        = "wait all rs online timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4622, wait all rs online timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4622, wait all rs online timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALL_REPLICAS_ON_MERGE_ZONE = {
 | 
						|
      .error_name            = "OB_ALL_REPLICAS_ON_MERGE_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "all replicas of partition group are on zones to merge",
 | 
						|
      .str_user_error        = "all replicas of partition group are on zones to merge",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4623, all replicas of partition group are on zones to merge",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4623, all replicas of partition group are on zones to merge"
 | 
						|
};
 | 
						|
static const _error _error_OB_MACHINE_RESOURCE_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_MACHINE_RESOURCE_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "machine resource is not enough to hold a new unit",
 | 
						|
      .str_user_error        = "zone '%s' server \'%s\' %s resource is not enough to hold a new unit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4624, machine resource is not enough to hold a new unit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4624, zone '%s' server \'%s\' %s resource is not enough to hold a new unit"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_SERVER_CAN_HOLD_SOFTLY = {
 | 
						|
      .error_name            = "OB_NOT_SERVER_CAN_HOLD_SOFTLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not server can hold the unit and not over soft limit",
 | 
						|
      .str_user_error        = "not server can hold the unit and not over soft limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4625, not server can hold the unit and not over soft limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4625, not server can hold the unit and not over soft limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_POOL_ALREADY_GRANTED = {
 | 
						|
      .error_name            = "OB_RESOURCE_POOL_ALREADY_GRANTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource pool has already been granted to a tenant",
 | 
						|
      .str_user_error        = "resource pool \'%s\' has already been granted to a tenant",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4626, resource pool has already been granted to a tenant",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4626, resource pool \'%s\' has already been granted to a tenant"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_ALREADY_DELETED = {
 | 
						|
      .error_name            = "OB_SERVER_ALREADY_DELETED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server has already been deleted",
 | 
						|
      .str_user_error        = "server has already been deleted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4628, server has already been deleted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4628, server has already been deleted"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_NOT_DELETING = {
 | 
						|
      .error_name            = "OB_SERVER_NOT_DELETING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server is not in deleting status",
 | 
						|
      .str_user_error        = "server is not in deleting status",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4629, server is not in deleting status",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4629, server is not in deleting status"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_NOT_IN_WHITE_LIST = {
 | 
						|
      .error_name            = "OB_SERVER_NOT_IN_WHITE_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server not in server white list",
 | 
						|
      .str_user_error        = "server not in server white list",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4630, server not in server white list",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4630, server not in server white list"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_ZONE_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_SERVER_ZONE_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server zone not match",
 | 
						|
      .str_user_error        = "server zone not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4631, server zone not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4631, server zone not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_OVER_ZONE_NUM_LIMIT = {
 | 
						|
      .error_name            = "OB_OVER_ZONE_NUM_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone num has reach max zone num",
 | 
						|
      .str_user_error        = "zone num has reach max zone num",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4632, zone num has reach max zone num",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4632, zone num has reach max zone num"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_STATUS_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ZONE_STATUS_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone status not match",
 | 
						|
      .str_user_error        = "zone status not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4633, zone status not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4633, zone status not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_UNIT_IS_REFERENCED = {
 | 
						|
      .error_name            = "OB_RESOURCE_UNIT_IS_REFERENCED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource unit is referenced by resource pool",
 | 
						|
      .str_user_error        = "resource unit \'%s\' is referenced by some resource pool",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4634, resource unit is referenced by resource pool",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4634, resource unit \'%s\' is referenced by some resource pool"
 | 
						|
};
 | 
						|
static const _error _error_OB_DIFFERENT_PRIMARY_ZONE = {
 | 
						|
      .error_name            = "OB_DIFFERENT_PRIMARY_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table schema primary zone different with other table in sampe tablegroup",
 | 
						|
      .str_user_error        = "table schema primary zone different with other table in sampe tablegroup",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4636, table schema primary zone different with other table in sampe tablegroup",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4636, table schema primary zone different with other table in sampe tablegroup"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_NOT_ACTIVE = {
 | 
						|
      .error_name            = "OB_SERVER_NOT_ACTIVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server is not active",
 | 
						|
      .str_user_error        = "server is not active",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4637, server is not active",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4637, server is not active"
 | 
						|
};
 | 
						|
static const _error _error_OB_RS_NOT_MASTER = {
 | 
						|
      .error_name            = "OB_RS_NOT_MASTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The RootServer is not the master",
 | 
						|
      .str_user_error        = "The RootServer is not the master",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4638, The RootServer is not the master",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4638, The RootServer is not the master"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANDIDATE_LIST_ERROR = {
 | 
						|
      .error_name            = "OB_CANDIDATE_LIST_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The candidate list is invalid",
 | 
						|
      .str_user_error        = "The candidate list is invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4639, The candidate list is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4639, The candidate list is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_ZONE_DUPLICATED = {
 | 
						|
      .error_name            = "OB_PARTITION_ZONE_DUPLICATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The chosen partition servers belong to same zone.",
 | 
						|
      .str_user_error        = "The chosen partition servers belong to same zone.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4640, The chosen partition servers belong to same zone.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4640, The chosen partition servers belong to same zone."
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_DUPLICATED = {
 | 
						|
      .error_name            = "OB_ZONE_DUPLICATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicated zone in zone list",
 | 
						|
      .str_user_error        = "Duplicated zone \'%s\' in zone list %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4641, Duplicated zone in zone list",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4641, Duplicated zone \'%s\' in zone list %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_ALL_ZONE_ACTIVE = {
 | 
						|
      .error_name            = "OB_NOT_ALL_ZONE_ACTIVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not all zone in zone list are active",
 | 
						|
      .str_user_error        = "Not all zone in zone list are active",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4642, Not all zone in zone list are active",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4642, Not all zone in zone list are active"
 | 
						|
};
 | 
						|
static const _error _error_OB_PRIMARY_ZONE_NOT_IN_ZONE_LIST = {
 | 
						|
      .error_name            = "OB_PRIMARY_ZONE_NOT_IN_ZONE_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "primary zone not in zone list",
 | 
						|
      .str_user_error        = "primary zone \'%s\' not in zone list %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4643, primary zone not in zone list",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4643, primary zone \'%s\' not in zone list %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_REPLICA_NUM_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_REPLICA_NUM_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "replica num not same with zone count",
 | 
						|
      .str_user_error        = "replica num not same with zone count",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4644, replica num not same with zone count",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4644, replica num not same with zone count"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_LIST_POOL_LIST_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ZONE_LIST_POOL_LIST_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone list not a subset of  resource pool list",
 | 
						|
      .str_user_error        = "zone list %s not a subset of resource pool zone list %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4645, zone list not a subset of  resource pool list",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4645, zone list %s not a subset of resource pool zone list %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_TENANT_NAME = {
 | 
						|
      .error_name            = "OB_INVALID_TENANT_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tenant name is too long",
 | 
						|
      .str_user_error        = "tenant name \'%s\' over max_tenant_name_length %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4646, tenant name is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4646, tenant name \'%s\' over max_tenant_name_length %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_EMPTY_RESOURCE_POOL_LIST = {
 | 
						|
      .error_name            = "OB_EMPTY_RESOURCE_POOL_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource pool list is empty",
 | 
						|
      .str_user_error        = "resource pool list is empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4647, resource pool list is empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4647, resource pool list is empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_UNIT_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_RESOURCE_UNIT_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource unit not exist",
 | 
						|
      .str_user_error        = "resource unit \'%s\' not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4648, resource unit not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4648, resource unit \'%s\' not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_UNIT_EXIST = {
 | 
						|
      .error_name            = "OB_RESOURCE_UNIT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource unit already exist",
 | 
						|
      .str_user_error        = "resource unit \'%s\' already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4649, resource unit already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4649, resource unit \'%s\' already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_POOL_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_RESOURCE_POOL_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource pool not exist",
 | 
						|
      .str_user_error        = "resource pool \'%s\' not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4650, resource pool not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4650, resource pool \'%s\' not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_POOL_EXIST = {
 | 
						|
      .error_name            = "OB_RESOURCE_POOL_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource pool already exist",
 | 
						|
      .str_user_error        = "resource pool \'%s\' exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4651, resource pool already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4651, resource pool \'%s\' exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_LEADER_SWITCH_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_LEADER_SWITCH_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wait leader switch timeout",
 | 
						|
      .str_user_error        = "wait leader switch timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4652, wait leader switch timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4652, wait leader switch timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOCATION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LOCATION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "location not exist",
 | 
						|
      .str_user_error        = "location not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4653, location not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4653, location not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOCATION_LEADER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LOCATION_LEADER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "location leader not exist",
 | 
						|
      .str_user_error        = "location leader not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4654, location leader not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4654, location leader not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_NOT_ACTIVE = {
 | 
						|
      .error_name            = "OB_ZONE_NOT_ACTIVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone not active",
 | 
						|
      .str_user_error        = "zone not active",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4655, zone not active",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4655, zone not active"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNIT_NUM_OVER_SERVER_COUNT = {
 | 
						|
      .error_name            = "OB_UNIT_NUM_OVER_SERVER_COUNT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource pool unit num is bigger than zone server count",
 | 
						|
      .str_user_error        = "resource pool unit num is bigger than zone server count",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4656, resource pool unit num is bigger than zone server count",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4656, resource pool unit num is bigger than zone server count"
 | 
						|
};
 | 
						|
static const _error _error_OB_POOL_SERVER_INTERSECT = {
 | 
						|
      .error_name            = "OB_POOL_SERVER_INTERSECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource pool list unit server intersect",
 | 
						|
      .str_user_error        = "resource pool list %s unit servers intersect",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4657, resource pool list unit server intersect",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4657, resource pool list %s unit servers intersect"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_SINGLE_RESOURCE_POOL = {
 | 
						|
      .error_name            = "OB_NOT_SINGLE_RESOURCE_POOL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "create tenant only support single resource pool now",
 | 
						|
      .str_user_error        = "create tenant only support single resource pool now, but pool list is %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4658, create tenant only support single resource pool now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4658, create tenant only support single resource pool now, but pool list is %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_UNIT_VALUE_BELOW_LIMIT = {
 | 
						|
      .error_name            = "OB_RESOURCE_UNIT_VALUE_BELOW_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource unit value is below limit",
 | 
						|
      .str_user_error        = "invalid %s value, min value is %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4659, resource unit value is below limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4659, invalid %s value, min value is %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_STOP_SERVER_IN_MULTIPLE_ZONES = {
 | 
						|
      .error_name            = "OB_STOP_SERVER_IN_MULTIPLE_ZONES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can not stop server in multiple zones",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4660, Can not stop server in multiple zones",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4660, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_SESSION_ENTRY_EXIST = {
 | 
						|
      .error_name            = "OB_SESSION_ENTRY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Session already exist",
 | 
						|
      .str_user_error        = "Session already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4661, Session already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4661, Session already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_GOT_SIGNAL_ABORTING = {
 | 
						|
      .error_name            = "OB_GOT_SIGNAL_ABORTING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_GOT_SIGNAL,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Got signal. Aborting!",
 | 
						|
      .str_user_error        = "%s: Got signal %d. Aborting!",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4662, Got signal. Aborting!",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4662, %s: Got signal %d. Aborting!"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_NOT_ALIVE = {
 | 
						|
      .error_name            = "OB_SERVER_NOT_ALIVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "server is not alive",
 | 
						|
      .str_user_error        = "server is not alive",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4663, server is not alive",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4663, server is not alive"
 | 
						|
};
 | 
						|
static const _error _error_OB_GET_LOCATION_TIME_OUT = {
 | 
						|
      .error_name            = "OB_GET_LOCATION_TIME_OUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Timeout",
 | 
						|
      .str_user_error        = "Timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4664, Timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4664, Timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNIT_IS_MIGRATING = {
 | 
						|
      .error_name            = "OB_UNIT_IS_MIGRATING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unit is migrating, can not migrate again",
 | 
						|
      .str_user_error        = "Unit is migrating, can not migrate again",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4665, Unit is migrating, can not migrate again",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4665, Unit is migrating, can not migrate again"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLUSTER_NO_MATCH = {
 | 
						|
      .error_name            = "OB_CLUSTER_NO_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cluster name does not match",
 | 
						|
      .str_user_error        = "cluster name does not match to \'%s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4666, cluster name does not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4666, cluster name does not match to \'%s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_CHECK_ZONE_MERGE_ORDER = {
 | 
						|
      .error_name            = "OB_CHECK_ZONE_MERGE_ORDER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Please check new zone in zone_merge_order. You can show parameters like 'zone_merge_order'",
 | 
						|
      .str_user_error        = "Please check new zone in zone_merge_order. You can show parameters like 'zone_merge_order'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4667, Please check new zone in zone_merge_order. You can show parameters like 'zone_merge_order'",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4667, Please check new zone in zone_merge_order. You can show parameters like 'zone_merge_order'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ZONE_NOT_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_ZONE_NOT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone not empty",
 | 
						|
      .str_user_error        = "The zone is not empty and can not be deleted. You should delete the servers of the zone. There are %ld servers alive and %ld not alive.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4668, zone not empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4668, The zone is not empty and can not be deleted. You should delete the servers of the zone. There are %ld servers alive and %ld not alive."
 | 
						|
};
 | 
						|
static const _error _error_OB_DIFFERENT_LOCALITY = {
 | 
						|
      .error_name            = "OB_DIFFERENT_LOCALITY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "locality not match, check it",
 | 
						|
      .str_user_error        = "locality not match, check it",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4669, locality not match, check it",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4669, locality not match, check it"
 | 
						|
};
 | 
						|
static const _error _error_OB_EMPTY_LOCALITY = {
 | 
						|
      .error_name            = "OB_EMPTY_LOCALITY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "locality is empty",
 | 
						|
      .str_user_error        = "locality is empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4670, locality is empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4670, locality is empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_FULL_REPLICA_NUM_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_FULL_REPLICA_NUM_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "full replica num not enough",
 | 
						|
      .str_user_error        = "full replica num not enough",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4671, full replica num not enough",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4671, full replica num not enough"
 | 
						|
};
 | 
						|
static const _error _error_OB_REPLICA_NUM_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_REPLICA_NUM_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "replica num not enough",
 | 
						|
      .str_user_error        = "replica num not enough",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4672, replica num not enough",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4672, replica num not enough"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATA_SOURCE_NOT_VALID = {
 | 
						|
      .error_name            = "OB_DATA_SOURCE_NOT_VALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Data source not valid",
 | 
						|
      .str_user_error        = "Data source not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4673, Data source not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4673, Data source not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_RUN_JOB_NOT_SUCCESS = {
 | 
						|
      .error_name            = "OB_RUN_JOB_NOT_SUCCESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "run job not success yet",
 | 
						|
      .str_user_error        = "run job not success yet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4674, run job not success yet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4674, run job not success yet"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_NEED_REBUILD = {
 | 
						|
      .error_name            = "OB_NO_NEED_REBUILD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no need to rebuild",
 | 
						|
      .str_user_error        = "no need to rebuild",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4675, no need to rebuild",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4675, no need to rebuild"
 | 
						|
};
 | 
						|
static const _error _error_OB_NEED_REMOVE_UNNEED_TABLE = {
 | 
						|
      .error_name            = "OB_NEED_REMOVE_UNNEED_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "need remove unneed table",
 | 
						|
      .str_user_error        = "need remove unneed table",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4676, need remove unneed table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4676, need remove unneed table"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_NEED_MERGE = {
 | 
						|
      .error_name            = "OB_NO_NEED_MERGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no need to merge",
 | 
						|
      .str_user_error        = "no need to merge",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4677, no need to merge",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4677, no need to merge"
 | 
						|
};
 | 
						|
static const _error _error_OB_CONFLICT_OPTION = {
 | 
						|
      .error_name            = "OB_CONFLICT_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "conflicting specifications",
 | 
						|
      .str_user_error        = "conflicting %.*s specifications",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4678, conflicting specifications",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4678, conflicting %.*s specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_DUPLICATE_OPTION = {
 | 
						|
      .error_name            = "OB_DUPLICATE_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate specifications",
 | 
						|
      .str_user_error        = "duplicate %.*s specifications",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4679, duplicate specifications",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4679, duplicate %.*s specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_OPTION = {
 | 
						|
      .error_name            = "OB_INVALID_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid specifications",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4680, invalid specifications",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4680, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_RPC_NEED_RECONNECT = {
 | 
						|
      .error_name            = "OB_RPC_NEED_RECONNECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rpc need reconnect",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4681, rpc need reconnect",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4681, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_COPY_MAJOR_SSTABLE = {
 | 
						|
      .error_name            = "OB_CANNOT_COPY_MAJOR_SSTABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot copy major sstable now",
 | 
						|
      .str_user_error        = "cannot copy major sstable now",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4682, cannot copy major sstable now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4682, cannot copy major sstable now"
 | 
						|
};
 | 
						|
static const _error _error_OB_SRC_DO_NOT_ALLOWED_MIGRATE = {
 | 
						|
      .error_name            = "OB_SRC_DO_NOT_ALLOWED_MIGRATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "src do not allowed migrate",
 | 
						|
      .str_user_error        = "src do not allowed migrate",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4683, src do not allowed migrate",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4683, src do not allowed migrate"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_TENANT_PARTITIONS_ERROR = {
 | 
						|
      .error_name            = "OB_TOO_MANY_TENANT_PARTITIONS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too many partitions were defined for this tenant",
 | 
						|
      .str_user_error        = "Too many partitions were defined for this tenant",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4684, Too many partitions were defined for this tenant",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4684, Too many partitions were defined for this tenant"
 | 
						|
};
 | 
						|
static const _error _error_OB_ACTIVE_MEMTBALE_NOT_EXSIT = {
 | 
						|
      .error_name            = "OB_ACTIVE_MEMTBALE_NOT_EXSIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "active memtable not exist",
 | 
						|
      .str_user_error        = "active memtable not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4685, active memtable not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4685, active memtable not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_USE_DUP_FOLLOW_AFTER_DML = {
 | 
						|
      .error_name            = "OB_USE_DUP_FOLLOW_AFTER_DML",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Should use leader replica for duplicate table after DML operator",
 | 
						|
      .str_user_error        = "Should use leader replica for duplicate table after DML operator",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4686, Should use leader replica for duplicate table after DML operator",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4686, Should use leader replica for duplicate table after DML operator"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_DISK_NEED_REBUILD = {
 | 
						|
      .error_name            = "OB_NO_DISK_NEED_REBUILD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no disk need rebuild",
 | 
						|
      .str_user_error        = "no disk need rebuild",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4687, no disk need rebuild",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4687, no disk need rebuild"
 | 
						|
};
 | 
						|
static const _error _error_OB_STANDBY_READ_ONLY = {
 | 
						|
      .error_name            = "OB_STANDBY_READ_ONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "standby tenant is read only",
 | 
						|
      .str_user_error        = "standby tenant is read only",
 | 
						|
      .oracle_errno          = 16000,
 | 
						|
      .oracle_str_error      = "ORA-16000: standby tenant is read only",
 | 
						|
      .oracle_str_user_error = "ORA-16000: standby tenant is read only"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALD_WEB_SERVICE_CONTENT = {
 | 
						|
      .error_name            = "OB_INVALD_WEB_SERVICE_CONTENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "web service content not valid",
 | 
						|
      .str_user_error        = "web service content not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4689, web service content not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4689, web service content not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_PRIMARY_CLUSTER_EXIST = {
 | 
						|
      .error_name            = "OB_PRIMARY_CLUSTER_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "other primary cluster already exist, can not start as primary",
 | 
						|
      .str_user_error        = "other primary cluster already exist, can not start as primary",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4690, other primary cluster already exist, can not start as primary",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4690, other primary cluster already exist, can not start as primary"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARRAY_BINDING_SWITCH_ITERATOR = {
 | 
						|
      .error_name            = "OB_ARRAY_BINDING_SWITCH_ITERATOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "array binding needs to switch iterator",
 | 
						|
      .str_user_error        = "array binding needs to switch iterator",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4691, array binding needs to switch iterator",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4691, array binding needs to switch iterator"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STANDBY_CLUSTER_NOT_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_STANDBY_CLUSTER_NOT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "standby cluster not empty",
 | 
						|
      .str_user_error        = "standby cluster not empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4692, standby cluster not empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4692, standby cluster not empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_PRIMARY_CLUSTER = {
 | 
						|
      .error_name            = "OB_NOT_PRIMARY_CLUSTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not primary cluster",
 | 
						|
      .str_user_error        = "not primary cluster",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4693, not primary cluster",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4693, not primary cluster"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_DROP_COLUMN_FAILED = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_DROP_COLUMN_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "check drop column failed",
 | 
						|
      .str_user_error        = "check drop column failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4694, check drop column failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4694, check drop column failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_STANDBY_CLUSTER = {
 | 
						|
      .error_name            = "OB_NOT_STANDBY_CLUSTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not standby cluster",
 | 
						|
      .str_user_error        = "not standby cluster",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4695, not standby cluster",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4695, not standby cluster"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLUSTER_VERSION_NOT_COMPATIBLE = {
 | 
						|
      .error_name            = "OB_CLUSTER_VERSION_NOT_COMPATIBLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cluster version not compatible",
 | 
						|
      .str_user_error        = "cluster version not compatible",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4696, cluster version not compatible",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4696, cluster version not compatible"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_TRANS_TABLE_MERGE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_TRANS_TABLE_MERGE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wait trans table merge finish timeout",
 | 
						|
      .str_user_error        = "wait trans table merge finish timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4697, wait trans table merge finish timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4697, wait trans table merge finish timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_SKIP_RENEW_LOCATION_BY_RPC = {
 | 
						|
      .error_name            = "OB_SKIP_RENEW_LOCATION_BY_RPC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "skip renew location by rpc",
 | 
						|
      .str_user_error        = "skip renew location by rpc",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4698, skip renew location by rpc",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4698, skip renew location by rpc"
 | 
						|
};
 | 
						|
static const _error _error_OB_RENEW_LOCATION_BY_RPC_FAILED = {
 | 
						|
      .error_name            = "OB_RENEW_LOCATION_BY_RPC_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "renew location by rpc failed",
 | 
						|
      .str_user_error        = "renew location by rpc failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4699, renew location by rpc failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4699, renew location by rpc failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLUSTER_ID_NO_MATCH = {
 | 
						|
      .error_name            = "OB_CLUSTER_ID_NO_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cluster id does not match",
 | 
						|
      .str_user_error        = "cluster id does not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4700, cluster id does not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4700, cluster id does not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARAM_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_PARAM_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "parameter cannot be modified because specified value is invalid",
 | 
						|
      .str_user_error        = "parameter cannot be modified because specified value is invalid",
 | 
						|
      .oracle_errno          = 2097,
 | 
						|
      .oracle_str_error      = "ORA-02097: parameter cannot be modified because specified value is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-02097: parameter cannot be modified because specified value is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RES_OBJ_ALREADY_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_RES_OBJ_ALREADY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource object already exists",
 | 
						|
      .str_user_error        = "%s %.*s already exists",
 | 
						|
      .oracle_errno          = 29357,
 | 
						|
      .oracle_str_error      = "ORA-29357: resource object already exists",
 | 
						|
      .oracle_str_user_error = "ORA-29357: %s %.*s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RES_PLAN_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_RES_PLAN_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource plan does not exist",
 | 
						|
      .str_user_error        = "resource plan %.*s does not exist",
 | 
						|
      .oracle_errno          = 29358,
 | 
						|
      .oracle_str_error      = "ORA-29358: resource plan does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-29358: resource plan %.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PERCENTAGE_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_PERCENTAGE_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "value is outside valid range of 0 to 100",
 | 
						|
      .str_user_error        = "value %ld for %s is outside valid range of 0 to 100",
 | 
						|
      .oracle_errno          = 29361,
 | 
						|
      .oracle_str_error      = "ORA-29361: value is outside valid range of 0 to 100",
 | 
						|
      .oracle_str_user_error = "ORA-29361: value %ld for %s is outside valid range of 0 to 100"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PLAN_DIRECTIVE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_PLAN_DIRECTIVE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan directive does not exist",
 | 
						|
      .str_user_error        = "plan directive %.*s, %.*s does not exist",
 | 
						|
      .oracle_errno          = 29362,
 | 
						|
      .oracle_str_error      = "ORA-29362: plan directive does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-29362: plan directive %.*s, %.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PLAN_DIRECTIVE_ALREADY_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_PLAN_DIRECTIVE_ALREADY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan directive already exists",
 | 
						|
      .str_user_error        = "plan directive %.*s, %.*s already exists",
 | 
						|
      .oracle_errno          = 29364,
 | 
						|
      .oracle_str_error      = "ORA-29364: plan directive already exists",
 | 
						|
      .oracle_str_user_error = "ORA-29364: plan directive %.*s, %.*s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PLAN_DIRECTIVE_NAME = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PLAN_DIRECTIVE_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan directive name not supported.",
 | 
						|
      .str_user_error        = "plan directive name '%.*s' not supported.",
 | 
						|
      .oracle_errno          = 29366,
 | 
						|
      .oracle_str_error      = "ORA-29366: plan directive name not supported.",
 | 
						|
      .oracle_str_user_error = "ORA-29366: plan directive name '%.*s' not supported."
 | 
						|
};
 | 
						|
static const _error _error_OB_FAILOVER_NOT_ALLOW = {
 | 
						|
      .error_name            = "OB_FAILOVER_NOT_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Failover is not allowed",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4708, Failover is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4708, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ADD_CLUSTER_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ADD_CLUSTER_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Add cluster not allowed.",
 | 
						|
      .str_user_error        = "Add cluster not allowed. Actions: %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4709, Add cluster not allowed.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4709, Add cluster not allowed. Actions: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONSUMER_GROUP_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_CONSUMER_GROUP_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "consumer group does not exist",
 | 
						|
      .str_user_error        = "consumer group %.*s does not exist",
 | 
						|
      .oracle_errno          = 29368,
 | 
						|
      .oracle_str_error      = "ORA-29368: consumer group does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-29368: consumer group %.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLUSTER_NOT_ACCESSIBLE = {
 | 
						|
      .error_name            = "OB_CLUSTER_NOT_ACCESSIBLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cluster is not accessible",
 | 
						|
      .str_user_error        = "cluster is not accessible, cluster_id: %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4711, cluster is not accessible",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4711, cluster is not accessible, cluster_id: %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_RESOURCE_UNIT_EXIST = {
 | 
						|
      .error_name            = "OB_TENANT_RESOURCE_UNIT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tenant already has resource unit configured",
 | 
						|
      .str_user_error        = "tenant already has resource unit configured, tenant_id: %ld, observer: \'%s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4712, tenant already has resource unit configured",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4712, tenant already has resource unit configured, tenant_id: %ld, observer: \'%s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DROP_TRUNCATE_PARTITION_REBUILD_INDEX = {
 | 
						|
      .error_name            = "OB_ERR_DROP_TRUNCATE_PARTITION_REBUILD_INDEX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rebuild global index failed when drop/truncate partitions",
 | 
						|
      .str_user_error        = "rebuild global index:'%.*s' failed when drop/truncate partitions",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4713, rebuild global index failed when drop/truncate partitions",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4713, rebuild global index:'%.*s' failed when drop/truncate partitions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ATLER_TABLE_ILLEGAL_FK = {
 | 
						|
      .error_name            = "OB_ERR_ATLER_TABLE_ILLEGAL_FK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unique/primary keys in table referenced by enabled foreign keys",
 | 
						|
      .str_user_error        = "unique/primary keys in table referenced by enabled foreign keys",
 | 
						|
      .oracle_errno          = 02266,
 | 
						|
      .oracle_str_error      = "ORA-02266: unique/primary keys in table referenced by enabled foreign keys",
 | 
						|
      .oracle_str_user_error = "ORA-02266: unique/primary keys in table referenced by enabled foreign keys"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_RESOURCE_MANAGER_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_RESOURCE_MANAGER_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "insufficient Resource Manager privileges",
 | 
						|
      .str_user_error        = "insufficient Resource Manager privileges",
 | 
						|
      .oracle_errno          = 56713,
 | 
						|
      .oracle_str_error      = "ORA-56713: insufficient Resource Manager privileges",
 | 
						|
      .oracle_str_user_error = "ORA-56713: insufficient Resource Manager privileges"
 | 
						|
};
 | 
						|
static const _error _error_OB_LEADER_COORDINATOR_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_LEADER_COORDINATOR_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "leader coordinator needs retry",
 | 
						|
      .str_user_error        = "leader coordinator needs retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4716, leader coordinator needs retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4716, leader coordinator needs retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_REBALANCE_TASK_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_REBALANCE_TASK_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rebalance task needs retry",
 | 
						|
      .str_user_error        = "rebalance task needs retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4717, rebalance task needs retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4717, rebalance task needs retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RES_MGR_PLAN_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_RES_MGR_PLAN_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "specified resource manager plan does not exist in the data dictionary",
 | 
						|
      .str_user_error        = "specified resource manager plan does not exist in the data dictionary",
 | 
						|
      .oracle_errno          = 7452,
 | 
						|
      .oracle_str_error      = "ORA-07452: specified resource manager plan does not exist in the data dictionary",
 | 
						|
      .oracle_str_user_error = "ORA-07452: specified resource manager plan does not exist in the data dictionary"
 | 
						|
};
 | 
						|
static const _error _error_OB_LS_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LS_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream does not exist",
 | 
						|
      .str_user_error        = "log stream does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4719, log stream does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4719, log stream does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_TENANT_LS = {
 | 
						|
      .error_name            = "OB_TOO_MANY_TENANT_LS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many log streams were defined for this tenant",
 | 
						|
      .str_user_error        = "too many log streams were defined for this tenant",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4720, too many log streams were defined for this tenant",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4720, too many log streams were defined for this tenant"
 | 
						|
};
 | 
						|
static const _error _error_OB_LS_LOCATION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LS_LOCATION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream location does not exist",
 | 
						|
      .str_user_error        = "log stream location does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4721, log stream location does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4721, log stream location does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_LS_LOCATION_LEADER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LS_LOCATION_LEADER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream location leader does not exist",
 | 
						|
      .str_user_error        = "log stream location leader does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4722, log stream location leader does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4722, log stream location leader does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_MAPPING_BETWEEN_TABLET_AND_LS_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_MAPPING_BETWEEN_TABLET_AND_LS_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "mapping between tablet and log stream does not exist",
 | 
						|
      .str_user_error        = "mapping between tablet and log stream does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4723, mapping between tablet and log stream does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4723, mapping between tablet and log stream does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLET_EXIST = {
 | 
						|
      .error_name            = "OB_TABLET_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unexpected tablet existence",
 | 
						|
      .str_user_error        = "unexpected tablet existence",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4724, unexpected tablet existence",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4724, unexpected tablet existence"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLET_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TABLET_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tablet does not exist",
 | 
						|
      .str_user_error        = "tablet does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4725, tablet does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4725, tablet does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STANDBY_STATUS = {
 | 
						|
      .error_name            = "OB_ERR_STANDBY_STATUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "check standby cluster status",
 | 
						|
      .str_user_error        = "check standby cluster status",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4726, check standby cluster status",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4726, check standby cluster status"
 | 
						|
};
 | 
						|
static const _error _error_OB_LS_NEED_REVOKE = {
 | 
						|
      .error_name            = "OB_LS_NEED_REVOKE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ls need revoke",
 | 
						|
      .str_user_error        = "ls need revoke",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4727, ls need revoke",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4727, ls need revoke"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERVAL_PARTITION_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_INTERVAL_PARTITION_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "interval partition already exists",
 | 
						|
      .str_user_error        = "interval partition already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4728, interval partition already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4728, interval partition already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERVAL_PARTITION_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_INTERVAL_PARTITION_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the property of interval partition is changed",
 | 
						|
      .str_user_error        = "the property of interval partition is changed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4729, the property of interval partition is changed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4729, the property of interval partition is changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LAST_PARTITION_IN_THE_RANGE_SECTION_CANNOT_BE_DROPPED = {
 | 
						|
      .error_name            = "OB_ERR_LAST_PARTITION_IN_THE_RANGE_SECTION_CANNOT_BE_DROPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Last partition in the range section cannot be dropped",
 | 
						|
      .str_user_error        = "Last partition in the range section cannot be dropped",
 | 
						|
      .oracle_errno          = 14758,
 | 
						|
      .oracle_str_error      = "ORA-14758: Last partition in the range section cannot be dropped",
 | 
						|
      .oracle_str_user_error = "ORA-14758: Last partition in the range section cannot be dropped"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SET_INTERVAL_IS_NOT_LEGAL_ON_THIS_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_SET_INTERVAL_IS_NOT_LEGAL_ON_THIS_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SET INTERVAL is not legal on this table.",
 | 
						|
      .str_user_error        = "SET INTERVAL is not legal on this table.",
 | 
						|
      .oracle_errno          = 14759,
 | 
						|
      .oracle_str_error      = "ORA-14759: SET INTERVAL is not legal on this table.",
 | 
						|
      .oracle_str_user_error = "ORA-14759: SET INTERVAL is not legal on this table."
 | 
						|
};
 | 
						|
static const _error _error_OB_CHECK_CLUSTER_STATUS = {
 | 
						|
      .error_name            = "OB_CHECK_CLUSTER_STATUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "check cluster status",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4732, check cluster status",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4732, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_RESOURCE_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_ZONE_RESOURCE_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone resource is not enough to hold new units",
 | 
						|
      .str_user_error        = "zone '%s' resource not enough to hold %ld unit. You can check resource info by views: DBA_OB_UNITS, GV$OB_UNITS, GV$OB_SERVERS.\n%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4733, zone resource is not enough to hold new units",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4733, zone '%s' resource not enough to hold %ld unit. You can check resource info by views: DBA_OB_UNITS, GV$OB_UNITS, GV$OB_SERVERS.\n%s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ZONE_SERVER_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_ZONE_SERVER_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zone server not enough to hold all units",
 | 
						|
      .str_user_error        = "zone '%s' server not enough to hold %ld new unit, please check zone valid servers",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4734, zone server not enough to hold all units",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4734, zone '%s' server not enough to hold %ld new unit, please check zone valid servers"
 | 
						|
};
 | 
						|
static const _error _error_OB_SSTABLE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_SSTABLE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sstable not exist",
 | 
						|
      .str_user_error        = "sstable not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4735, sstable not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4735, sstable not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESOURCE_UNIT_VALUE_INVALID = {
 | 
						|
      .error_name            = "OB_RESOURCE_UNIT_VALUE_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resource unit value is invalid",
 | 
						|
      .str_user_error        = "resource unit value is invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4736, resource unit value is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4736, resource unit value is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_LS_EXIST = {
 | 
						|
      .error_name            = "OB_LS_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream already exist",
 | 
						|
      .str_user_error        = "log stream already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4737, log stream already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4737, log stream already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_DEVICE_EXIST = {
 | 
						|
      .error_name            = "OB_DEVICE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unexpected device existence",
 | 
						|
      .str_user_error        = "Unexpected device existence",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4738, Unexpected device existence",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4738, Unexpected device existence"
 | 
						|
};
 | 
						|
static const _error _error_OB_DEVICE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_DEVICE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Device does not exist",
 | 
						|
      .str_user_error        = "Device does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4739, Device does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4739, Device does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_LS_REPLICA_TASK_RESULT_UNCERTAIN = {
 | 
						|
      .error_name            = "OB_LS_REPLICA_TASK_RESULT_UNCERTAIN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream replica task result is uncertain",
 | 
						|
      .str_user_error        = "log stream replica task result is uncertain",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4740, log stream replica task result is uncertain",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4740, log stream replica task result is uncertain"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_REPLAY_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_REPLAY_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream wait log replay timeout",
 | 
						|
      .str_user_error        = "log stream wait log replay timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4741, log stream wait log replay timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4741, log stream wait log replay timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_WAIT_TABLET_READY_TIMEOUT = {
 | 
						|
      .error_name            = "OB_WAIT_TABLET_READY_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log stream wait tablet ready timeout",
 | 
						|
      .str_user_error        = "log stream wait tablet ready timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4742, log stream wait tablet ready timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4742, log stream wait tablet ready timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_FREEZE_SERVICE_EPOCH_MISMATCH = {
 | 
						|
      .error_name            = "OB_FREEZE_SERVICE_EPOCH_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "freeze service epoch is not expected",
 | 
						|
      .str_user_error        = "freeze service epoch is not expected",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4743, freeze service epoch is not expected",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4743, freeze service epoch is not expected"
 | 
						|
};
 | 
						|
static const _error _error_OB_FROZEN_INFO_ALREADY_EXIST = {
 | 
						|
      .error_name            = "OB_FROZEN_INFO_ALREADY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "already exist larger frozen_scn in __all_freeze_info",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4744, already exist larger frozen_scn in __all_freeze_info",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4744, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_DELETE_SERVER_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_DELETE_SERVER_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "delete server not allowed",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4745, delete server not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4745, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_PACKET_STATUS_UNKNOWN = {
 | 
						|
      .error_name            = "OB_PACKET_STATUS_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Network error and packet status unknown. Abort auto retry.",
 | 
						|
      .str_user_error        = "Network error and packet status unknown. Abort auto retry.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -4746, Network error and packet status unknown. Abort auto retry.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -4746, Network error and packet status unknown. Abort auto retry."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSER_INIT = {
 | 
						|
      .error_name            = "OB_ERR_PARSER_INIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARSE_ERROR,
 | 
						|
      .sqlstate              = "0B000",
 | 
						|
      .str_error             = "Failed to init SQL parser",
 | 
						|
      .str_user_error        = "Failed to init SQL parser",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5000, Failed to init SQL parser",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5000, Failed to init SQL parser"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSE_SQL = {
 | 
						|
      .error_name            = "OB_ERR_PARSE_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARSE_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Parse error",
 | 
						|
      .str_user_error        = "%s near \'%.*s\' at line %d",
 | 
						|
      .oracle_errno          = 900,
 | 
						|
      .oracle_str_error      = "ORA-00900: invalid SQL statement",
 | 
						|
      .oracle_str_user_error = "ORA-00900: %s near \'%.*s\' at line %d"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESOLVE_SQL = {
 | 
						|
      .error_name            = "OB_ERR_RESOLVE_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Resolve error",
 | 
						|
      .str_user_error        = "Resolve error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5002, Resolve error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5002, Resolve error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GEN_PLAN = {
 | 
						|
      .error_name            = "OB_ERR_GEN_PLAN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Generate plan error",
 | 
						|
      .str_user_error        = "Generate plan error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5003, Generate plan error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5003, Generate plan error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSER_SYNTAX = {
 | 
						|
      .error_name            = "OB_ERR_PARSER_SYNTAX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SYNTAX_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use",
 | 
						|
      .str_user_error        = "You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use",
 | 
						|
      .oracle_errno          = 900,
 | 
						|
      .oracle_str_error      = "ORA-00900: You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use",
 | 
						|
      .oracle_str_user_error = "ORA-00900: You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_SIZE = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_SIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT,
 | 
						|
      .sqlstate              = "21000",
 | 
						|
      .str_error             = "The used SELECT statements have a different number of columns",
 | 
						|
      .str_user_error        = "The used SELECT statements have a different number of columns",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5007, The used SELECT statements have a different number of columns",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5007, The used SELECT statements have a different number of columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_FIELDNAME,
 | 
						|
      .sqlstate              = "42S21",
 | 
						|
      .str_error             = "Duplicate column name",
 | 
						|
      .str_user_error        = "Duplicate column name '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5008, Duplicate column name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5008, Duplicate column name '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OPERATOR_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_OPERATOR_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "21000",
 | 
						|
      .str_error             = "Unknown operator",
 | 
						|
      .str_user_error        = "Unknown operator",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5010, Unknown operator",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5010, Unknown operator"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STAR_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_STAR_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicated star",
 | 
						|
      .str_user_error        = "Duplicated star",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5011, Duplicated star",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5011, Duplicated star"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_ID = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal ID",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5012, Illegal ID",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5012, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal value",
 | 
						|
      .str_user_error        = "Illegal value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5014, Illegal value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5014, Illegal value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_AMBIGUOUS = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_AMBIGUOUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_AMBIGUOUS_FIELD_TERM,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Ambiguous column",
 | 
						|
      .str_user_error        = "Ambiguous column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5015, Ambiguous column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5015, Ambiguous column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LOGICAL_PLAN_FAILD = {
 | 
						|
      .error_name            = "OB_ERR_LOGICAL_PLAN_FAILD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Generate logical plan error",
 | 
						|
      .str_user_error        = "Generate logical plan error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5016, Generate logical plan error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5016, Generate logical plan error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SCHEMA_UNSET = {
 | 
						|
      .error_name            = "OB_ERR_SCHEMA_UNSET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Schema not set",
 | 
						|
      .str_user_error        = "Schema not set",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5017, Schema not set",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5017, Schema not set"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_NAME = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Illegal name",
 | 
						|
      .str_user_error        = "Illegal name",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5018, Illegal name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5018, Illegal name"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TABLE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_SUCH_TABLE,
 | 
						|
      .sqlstate              = "42S02",
 | 
						|
      .str_error             = "Table doesn\'t exist",
 | 
						|
      .str_user_error        = "Table \'%s.%s\' doesn\'t exist",
 | 
						|
      .oracle_errno          = 942,
 | 
						|
      .oracle_str_error      = "ORA-00942: table or view does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00942: table or view \'%s.%s\' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLE_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_TABLE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TABLE_EXISTS_ERROR,
 | 
						|
      .sqlstate              = "42S01",
 | 
						|
      .str_error             = "Table already exists",
 | 
						|
      .str_user_error        = "Table '%.*s' already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5020, Table already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5020, Table '%.*s' already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXPR_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_EXPR_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Unknown expression",
 | 
						|
      .str_user_error        = "Unknown expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5022, Unknown expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5022, Unknown expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "S1004",
 | 
						|
      .str_error             = "Illegal type",
 | 
						|
      .str_user_error        = "unsupport MySQL type %d. Maybe you should use java.sql.Timestamp instead of java.util.Date.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5023, Illegal type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5023, unsupport MySQL type %d. Maybe you should use java.sql.Timestamp instead of java.util.Date."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRIMARY_KEY_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_PRIMARY_KEY_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_ENTRY,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Duplicated primary key",
 | 
						|
      .str_user_error        = "Duplicate entry \'%s\' for key \'%.*s\'",
 | 
						|
      .oracle_errno          = 1,
 | 
						|
      .oracle_str_error      = "ORA-00001: unique constraint violated",
 | 
						|
      .oracle_str_user_error = "ORA-00001: unique constraint \'%s\' for key \'%.*s\' violated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_KEY_NAME_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_KEY_NAME_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_KEYNAME,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicated key name",
 | 
						|
      .str_user_error        = "Duplicate key name \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5025, Duplicated key name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5025, Duplicate key name \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CREATETIME_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_CREATETIME_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicated createtime",
 | 
						|
      .str_user_error        = "Duplicated createtime",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5026, Duplicated createtime",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5026, Duplicated createtime"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFYTIME_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_MODIFYTIME_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicated modifytime",
 | 
						|
      .str_user_error        = "Duplicated modifytime",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5027, Duplicated modifytime",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5027, Duplicated modifytime"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_INDEX = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_INDEX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_SUCH_INDEX,
 | 
						|
      .sqlstate              = "42S12",
 | 
						|
      .str_error             = "Illegal index",
 | 
						|
      .str_user_error        = "Illegal index",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5028, Illegal index",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5028, Illegal index"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SCHEMA = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SCHEMA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid schema",
 | 
						|
      .str_user_error        = "Invalid schema",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5029, Invalid schema",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5029, Invalid schema"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INSERT_NULL_ROWKEY = {
 | 
						|
      .error_name            = "OB_ERR_INSERT_NULL_ROWKEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PRIMARY_CANT_HAVE_NULL,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Insert null rowkey",
 | 
						|
      .str_user_error        = "Insert null into %.*s",
 | 
						|
      .oracle_errno          = 1400,
 | 
						|
      .oracle_str_error      = "ORA-01400: cannot insert NULL into",
 | 
						|
      .oracle_str_user_error = "ORA-01400: cannot insert NULL into (%.*s)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column not found",
 | 
						|
      .str_user_error        = "Column not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5031, Column not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5031, Column not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DELETE_NULL_ROWKEY = {
 | 
						|
      .error_name            = "OB_ERR_DELETE_NULL_ROWKEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Delete null rowkey",
 | 
						|
      .str_user_error        = "Delete null rowkey",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5032, Delete null rowkey",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5032, Delete null rowkey"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_USER_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "01007",
 | 
						|
      .str_error             = "No user",
 | 
						|
      .str_user_error        = "No user",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5034, No user",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5034, No user"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_USER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_SUCH_USER,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "User not exist",
 | 
						|
      .str_user_error        = "User not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5035, User not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5035, User not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SPECIFIC_ACCESS_DENIED_ERROR,
 | 
						|
      .sqlstate              = "42501",
 | 
						|
      .str_error             = "Access denied",
 | 
						|
      .str_user_error        = "Access denied; you need (at least one of) the %s privilege(s) for this operation",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5036, Access denied",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5036, Access denied; you need (at least one of) the %s privilege(s) for this operation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_AVAILABLE_PRIVILEGE_ENTRY = {
 | 
						|
      .error_name            = "OB_ERR_NO_AVAILABLE_PRIVILEGE_ENTRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No privilege entry",
 | 
						|
      .str_user_error        = "No privilege entry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5037, No privilege entry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5037, No privilege entry"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_PASSWORD = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_PASSWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PASSWORD_NO_MATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect password",
 | 
						|
      .str_user_error        = "Incorrect password",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5038, Incorrect password",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5038, Incorrect password"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_IS_LOCKED = {
 | 
						|
      .error_name            = "OB_ERR_USER_IS_LOCKED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ACCOUNT_HAS_BEEN_LOCKED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "User locked",
 | 
						|
      .str_user_error        = "User locked",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5039, User locked",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5039, User locked"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_ROWKEY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_ROWKEY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Can not update rowkey column",
 | 
						|
      .str_user_error        = "Can not update rowkey column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5040, Can not update rowkey column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5040, Can not update rowkey column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_JOIN_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_JOIN_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Can not update join column",
 | 
						|
      .str_user_error        = "Can not update join column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5041, Can not update join column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5041, Can not update join column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_COLUMN_NUM = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_COLUMN_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_OPERAND_COLUMNS,
 | 
						|
      .sqlstate              = "21000",
 | 
						|
      .str_error             = "Invalid column number",
 | 
						|
      .str_user_error        = "Operand should contain %ld column(s)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5042, Invalid column number",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5042, Operand should contain %ld column(s)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PREPARE_STMT_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_PREPARE_STMT_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_STMT_HANDLER,
 | 
						|
      .sqlstate              = "HY007",
 | 
						|
      .str_error             = "Unknown prepared statement",
 | 
						|
      .str_user_error        = "statement not prepared, stmt_id=%u",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5043, Unknown prepared statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5043, statement not prepared, stmt_id=%u"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYS_VARIABLE_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_SYS_VARIABLE_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_SYSTEM_VARIABLE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown system variable",
 | 
						|
      .str_user_error        = "Unknown system variable '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5044, Unknown system variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5044, Unknown system variable '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OLDER_PRIVILEGE_VERSION = {
 | 
						|
      .error_name            = "OB_ERR_OLDER_PRIVILEGE_VERSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Older privilege version",
 | 
						|
      .str_user_error        = "Older privilege version",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5046, Older privilege version",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5046, Older privilege version"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LACK_OF_ROWKEY_COL = {
 | 
						|
      .error_name            = "OB_ERR_LACK_OF_ROWKEY_COL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_REQUIRES_PRIMARY_KEY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "No rowkey column specified",
 | 
						|
      .str_user_error        = "Primary key column(s) not specified in the WHERE clause",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5047, No rowkey column specified",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5047, Primary key column(s) not specified in the WHERE clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_USER_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42710",
 | 
						|
      .str_error             = "User exists",
 | 
						|
      .str_user_error        = "User exists",
 | 
						|
      .oracle_errno          = 1920,
 | 
						|
      .oracle_str_error      = "ORA-01920: user name conflicts with another user or role name",
 | 
						|
      .oracle_str_user_error = "ORA-01920: user name conflicts with another user or role name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PASSWORD_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_PASSWORD_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Empty password",
 | 
						|
      .str_user_error        = "Empty password",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5051, Empty password",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5051, Empty password"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GRANT_PRIVILEGES_TO_CREATE_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_GRANT_PRIVILEGES_TO_CREATE_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Failed to grant privelege",
 | 
						|
      .str_user_error        = "Failed to grant privelege",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5052, Failed to grant privelege",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5052, Failed to grant privelege"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_DYNAMIC_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_DYNAMIC_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY093",
 | 
						|
      .str_error             = "Wrong dynamic parameters",
 | 
						|
      .str_user_error        = "Incorrect arguments number to EXECUTE, need %ld arguments but give %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5053, Wrong dynamic parameters",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5053, Incorrect arguments number to EXECUTE, need %ld arguments but give %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARAM_SIZE = {
 | 
						|
      .error_name            = "OB_ERR_PARAM_SIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect parameter count",
 | 
						|
      .str_user_error        = "Incorrect parameter count in the call to native function '%.*s'",
 | 
						|
      .oracle_errno          = 909,
 | 
						|
      .oracle_str_error      = "ORA-00909: invalid number of arguments",
 | 
						|
      .oracle_str_user_error = "ORA-00909: invalid number of arguments in the call to native function '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FUNCTION_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_FUNCTION_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DOES_NOT_EXIST,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "FUNCTION does not exist",
 | 
						|
      .str_user_error        = "FUNCTION %.*s does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5055, FUNCTION does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5055, FUNCTION %.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CREAT_MODIFY_TIME_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CREAT_MODIFY_TIME_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "CreateTime or ModifyTime column cannot be modified",
 | 
						|
      .str_user_error        = "CreateTime or ModifyTime column cannot be modified",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5056, CreateTime or ModifyTime column cannot be modified",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5056, CreateTime or ModifyTime column cannot be modified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_PRIMARY_KEY = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_PRIMARY_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Primary key cannot be modified",
 | 
						|
      .str_user_error        = "Primary key cannot be modified",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5057, Primary key cannot be modified",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5057, Primary key cannot be modified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARAM_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_PARAM_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicated parameters",
 | 
						|
      .str_user_error        = "Duplicated parameters",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5058, Duplicated parameters",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5058, Duplicated parameters"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_SESSIONS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_SESSIONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_USER_CONNECTIONS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Too many sessions",
 | 
						|
      .str_user_error        = "Too many sessions",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5059, Too many sessions",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5059, Too many sessions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_PS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_PS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "54023",
 | 
						|
      .str_error             = "Too many prepared statements",
 | 
						|
      .str_user_error        = "Too many prepared statements",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5061, Too many prepared statements",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5061, Too many prepared statements"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_HINT_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_HINT_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Unknown hint",
 | 
						|
      .str_user_error        = "Unknown hint",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5063, Unknown hint",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5063, Unknown hint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WHEN_UNSATISFIED = {
 | 
						|
      .error_name            = "OB_ERR_WHEN_UNSATISFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "When condition not satisfied",
 | 
						|
      .str_user_error        = "When condition not satisfied",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5064, When condition not satisfied",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5064, When condition not satisfied"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_QUERY_INTERRUPTED = {
 | 
						|
      .error_name            = "OB_ERR_QUERY_INTERRUPTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_QUERY_INTERRUPTED,
 | 
						|
      .sqlstate              = "70100",
 | 
						|
      .str_error             = "Query execution was interrupted",
 | 
						|
      .str_user_error        = "Query execution was interrupted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5065, Query execution was interrupted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5065, Query execution was interrupted"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SESSION_INTERRUPTED = {
 | 
						|
      .error_name            = "OB_ERR_SESSION_INTERRUPTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Session interrupted",
 | 
						|
      .str_user_error        = "Session interrupted",
 | 
						|
      .oracle_errno          = 1092,
 | 
						|
      .oracle_str_error      = "ORA-01092: OceanBase instance terminated. Disconnection forced",
 | 
						|
      .oracle_str_user_error = "ORA-01092: OceanBase instance terminated. Disconnection forced"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_SESSION_ID = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_SESSION_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown session ID",
 | 
						|
      .str_user_error        = "Unknown session ID",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5067, Unknown session ID",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5067, Unknown session ID"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROTOCOL_NOT_RECOGNIZE = {
 | 
						|
      .error_name            = "OB_ERR_PROTOCOL_NOT_RECOGNIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect protocol",
 | 
						|
      .str_user_error        = "Incorrect protocol",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5068, Incorrect protocol",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5068, Incorrect protocol"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRITE_AUTH_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_WRITE_AUTH_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Write auth packet error",
 | 
						|
      .str_user_error        = "Write auth packet error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5069, Write auth packet error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5069, Write auth packet error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSE_JOIN_INFO = {
 | 
						|
      .error_name            = "OB_ERR_PARSE_JOIN_INFO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Wrong join info",
 | 
						|
      .str_user_error        = "Wrong join info",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5070, Wrong join info",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5070, Wrong join info"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_INDEX_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_INDEX_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Cannot alter index column",
 | 
						|
      .str_user_error        = "Cannot alter index column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5071, Cannot alter index column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5071, Cannot alter index column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_INDEX_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_INDEX_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Cannot modify index table",
 | 
						|
      .str_user_error        = "Cannot modify index table",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5072, Cannot modify index table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5072, Cannot modify index table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INDEX_UNAVAILABLE = {
 | 
						|
      .error_name            = "OB_ERR_INDEX_UNAVAILABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_SUCH_INDEX,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Index unavailable",
 | 
						|
      .str_user_error        = "Index unavailable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5073, Index unavailable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5073, Index unavailable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOP_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_NOP_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "NOP cannot be used here",
 | 
						|
      .str_user_error        = "NOP cannot be used here",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5074, NOP cannot be used here",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5074, NOP cannot be used here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PS_TOO_MANY_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_PS_TOO_MANY_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PS_MANY_PARAM,
 | 
						|
      .sqlstate              = "54000",
 | 
						|
      .str_error             = "Prepared statement contains too many placeholders",
 | 
						|
      .str_user_error        = "Prepared statement contains too many placeholders",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5080, Prepared statement contains too many placeholders",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5080, Prepared statement contains too many placeholders"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_READ_ONLY = {
 | 
						|
      .error_name            = "OB_ERR_READ_ONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "The server is read only now",
 | 
						|
      .str_user_error        = "The server is read only now",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5081, The server is read only now",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5081, The server is read only now"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TYPE_FOR_OP = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TYPE_FOR_OP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Invalid data type for the operation",
 | 
						|
      .str_user_error        = "invalid obj type for type promotion: left_type=%s right_type=%s",
 | 
						|
      .oracle_errno          = 932,
 | 
						|
      .oracle_str_error      = "ORA-00932: inconsistent datatypes",
 | 
						|
      .oracle_str_user_error = "ORA-00932: inconsistent datatypes: left_type=%s right_type=%s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CAST_VARCHAR_TO_BOOL = {
 | 
						|
      .error_name            = "OB_ERR_CAST_VARCHAR_TO_BOOL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Can not cast varchar value to bool type",
 | 
						|
      .str_user_error        = "Can not cast varchar value to bool type",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5084, Can not cast varchar value to bool type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5084, Can not cast varchar value to bool type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CAST_VARCHAR_TO_NUMBER = {
 | 
						|
      .error_name            = "OB_ERR_CAST_VARCHAR_TO_NUMBER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Not a number Can not cast varchar value to number type",
 | 
						|
      .str_user_error        = "Not a number Can not cast varchar value to number type",
 | 
						|
      .oracle_errno          = 1722,
 | 
						|
      .oracle_str_error      = "ORA-01722: invalid number",
 | 
						|
      .oracle_str_user_error = "ORA-01722: invalid number"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CAST_VARCHAR_TO_TIME = {
 | 
						|
      .error_name            = "OB_ERR_CAST_VARCHAR_TO_TIME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Not timestamp Can not cast varchar value to timestamp type",
 | 
						|
      .str_user_error        = "Not timestamp Can not cast varchar value to timestamp type",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5086, Not timestamp Can not cast varchar value to timestamp type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5086, Not timestamp Can not cast varchar value to timestamp type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CAST_NUMBER_OVERFLOW = {
 | 
						|
      .error_name            = "OB_ERR_CAST_NUMBER_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Result value was out of range when cast to number",
 | 
						|
      .str_user_error        = "Result value was out of range when cast to number",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5087, Result value was out of range when cast to number",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5087, Result value was out of range when cast to number"
 | 
						|
};
 | 
						|
static const _error _error_OB_INTEGER_PRECISION_OVERFLOW = {
 | 
						|
      .error_name            = "OB_INTEGER_PRECISION_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "Result value was out of range when casting varchar to number",
 | 
						|
      .str_user_error        = "value larger than specified precision(%ld,%ld) allowed for this column",
 | 
						|
      .oracle_errno          = 1426,
 | 
						|
      .oracle_str_error      = "ORA-01426: numeric overflow",
 | 
						|
      .oracle_str_user_error = "ORA-01426: numeric overflow, value larger than specified precision(%ld,%ld) allowed for this column"
 | 
						|
};
 | 
						|
static const _error _error_OB_DECIMAL_PRECISION_OVERFLOW = {
 | 
						|
      .error_name            = "OB_DECIMAL_PRECISION_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "Result value was out of range when casting varchar to number",
 | 
						|
      .str_user_error        = "value(%s) larger than specified precision(%ld,%ld) allowed for this column",
 | 
						|
      .oracle_errno          = 1426,
 | 
						|
      .oracle_str_error      = "ORA-01426: numeric overflow",
 | 
						|
      .oracle_str_user_error = "ORA-01426: numeric overflow, value(%s) larger than specified precision(%ld,%ld) allowed for this column"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEMA_NUMBER_PRECISION_OVERFLOW = {
 | 
						|
      .error_name            = "OB_SCHEMA_NUMBER_PRECISION_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Precision was out of range",
 | 
						|
      .str_user_error        = "Precision was out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5090, Precision was out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5090, Precision was out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEMA_NUMBER_SCALE_OVERFLOW = {
 | 
						|
      .error_name            = "OB_SCHEMA_NUMBER_SCALE_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22000",
 | 
						|
      .str_error             = "Scale value was out of range",
 | 
						|
      .str_user_error        = "Scale value was out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5091, Scale value was out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5091, Scale value was out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INDEX_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_INDEX_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Unknown index",
 | 
						|
      .str_user_error        = "Unknown index",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5092, Unknown index",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5092, Unknown index"
 | 
						|
};
 | 
						|
static const _error _error_OB_NUMERIC_OVERFLOW = {
 | 
						|
      .error_name            = "OB_NUMERIC_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "Result value was out of range when casting varchar to number",
 | 
						|
      .str_user_error        = "Result value was out of range when casting varchar to number",
 | 
						|
      .oracle_errno          = 1426,
 | 
						|
      .oracle_str_error      = "ORA-01426: numeric overflow",
 | 
						|
      .oracle_str_user_error = "ORA-01426: numeric overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_JOIN_TABLES = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_JOIN_TABLES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many joined tables",
 | 
						|
      .str_user_error        = "too many joined tables",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5094, too many joined tables",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5094, too many joined tables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DDL_ON_REMOTE_DATABASE = {
 | 
						|
      .error_name            = "OB_ERR_DDL_ON_REMOTE_DATABASE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DDL operations are not allowed on a remote database",
 | 
						|
      .str_user_error        = "DDL operations are not allowed on a remote database",
 | 
						|
      .oracle_errno          = 2021,
 | 
						|
      .oracle_str_error      = "ORA-02021: DDL operations are not allowed on a remote database",
 | 
						|
      .oracle_str_user_error = "ORA-02021: DDL operations are not allowed on a remote database"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_KEYWORD = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_KEYWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing keyword",
 | 
						|
      .str_user_error        = "missing keyword",
 | 
						|
      .oracle_errno          = 905,
 | 
						|
      .oracle_str_error      = "ORA-00905: missing keyword",
 | 
						|
      .oracle_str_user_error = "ORA-00905: missing keyword"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATABASE_LINK_EXPECTED = {
 | 
						|
      .error_name            = "OB_ERR_DATABASE_LINK_EXPECTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "database link name expected",
 | 
						|
      .str_user_error        = "database link name expected",
 | 
						|
      .oracle_errno          = 1729,
 | 
						|
      .oracle_str_error      = "ORA-01729: database link name expected",
 | 
						|
      .oracle_str_user_error = "ORA-01729: database link name expected"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VARCHAR_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_VARCHAR_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "22001",
 | 
						|
      .str_error             = "Varchar value is too long for the column",
 | 
						|
      .str_user_error        = "Data too long(%d>%ld) for column '%s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5098, Varchar value is too long for the column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5098, Data too long(%d>%ld) for column '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYS_CONFIG_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_SYS_CONFIG_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "System config unknown",
 | 
						|
      .str_user_error        = "System config unknown",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5099, System config unknown",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5099, System config unknown"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LOCAL_VARIABLE = {
 | 
						|
      .error_name            = "OB_ERR_LOCAL_VARIABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_LOCAL_VARIABLE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Local variable",
 | 
						|
      .str_user_error        = "Variable \'%.*s\' is a SESSION variable and can't be used with SET GLOBAL",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5100, Local variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5100, Variable \'%.*s\' is a SESSION variable and can't be used with SET GLOBAL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GLOBAL_VARIABLE = {
 | 
						|
      .error_name            = "OB_ERR_GLOBAL_VARIABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_GLOBAL_VARIABLE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Global variable",
 | 
						|
      .str_user_error        = "Variable \'%.*s\' is a GLOBAL variable and should be set with SET GLOBAL",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5101, Global variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5101, Variable \'%.*s\' is a GLOBAL variable and should be set with SET GLOBAL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VARIABLE_IS_READONLY = {
 | 
						|
      .error_name            = "OB_ERR_VARIABLE_IS_READONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VARIABLE_IS_READONLY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "variable is read only",
 | 
						|
      .str_user_error        = "%.*s variable '%.*s' is read-only. Use SET %.*s to assign the value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5102, variable is read only",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5102, %.*s variable '%.*s' is read-only. Use SET %.*s to assign the value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INCORRECT_GLOBAL_LOCAL_VAR = {
 | 
						|
      .error_name            = "OB_ERR_INCORRECT_GLOBAL_LOCAL_VAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INCORRECT_GLOBAL_LOCAL_VAR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "incorrect global or local variable",
 | 
						|
      .str_user_error        = "Variable '%.*s' is a %.*s variable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5103, incorrect global or local variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5103, Variable '%.*s' is a %.*s variable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXPIRE_INFO_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_EXPIRE_INFO_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Expire expression too long",
 | 
						|
      .str_user_error        = "length(%d) of expire_info is larger than the max allowed(%ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5104, Expire expression too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5104, length(%d) of expire_info is larger than the max allowed(%ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXPIRE_COND_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_EXPIRE_COND_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Expire condition too long",
 | 
						|
      .str_user_error        = "total length(%ld) of expire_info and its expression is larger than the max allowed(%ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5105, Expire condition too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5105, total length(%ld) of expire_info and its expression is larger than the max allowed(%ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_EXTRACT = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_EXTRACT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for extract()",
 | 
						|
      .str_user_error        = "EXTRACT() expected timestamp or a string as date argument",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5106, Invalid argument for extract()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5106, EXTRACT() expected timestamp or a string as date argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_IS = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_IS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for IS operator",
 | 
						|
      .str_user_error        = "Invalid operand type for IS operator, lval=%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5107, Invalid argument for IS operator",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5107, Invalid operand type for IS operator, lval=%s"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_LENGTH = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for length()",
 | 
						|
      .str_user_error        = "function LENGTH() expected a varchar argument",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5108, Invalid argument for length()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5108, function LENGTH() expected a varchar argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_SUBSTR = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_SUBSTR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for substr()",
 | 
						|
      .str_user_error        = "invalid input format. ret=%d text=%s start=%s length=%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5109, Invalid argument for substr()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5109, invalid input format. ret=%d text=%s start=%s length=%s"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_TIME_TO_USEC = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_TIME_TO_USEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for time_to_usec()",
 | 
						|
      .str_user_error        = "TIME_TO_USEC() expected timestamp or a string as date argument",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5110, Invalid argument for time_to_usec()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5110, TIME_TO_USEC() expected timestamp or a string as date argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_USEC_TO_TIME = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_USEC_TO_TIME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for usec_to_time()",
 | 
						|
      .str_user_error        = "USEC_TO_TIME expected a interger number as usec argument",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5111, Invalid argument for usec_to_time()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5111, USEC_TO_TIME expected a interger number as usec argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_VARIABLE_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_USER_VARIABLE_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42P01",
 | 
						|
      .str_error             = "Unknown user variable",
 | 
						|
      .str_user_error        = "Variable %.*s does not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5112, Unknown user variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5112, Variable %.*s does not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ILLEGAL_USAGE_OF_MERGING_FROZEN_TIME = {
 | 
						|
      .error_name            = "OB_ILLEGAL_USAGE_OF_MERGING_FROZEN_TIME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Illegal usage of merging_frozen_time()",
 | 
						|
      .str_user_error        = "MERGING_FROZEN_TIME() system function only be used in daily merging.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5113, Illegal usage of merging_frozen_time()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5113, MERGING_FROZEN_TIME() system function only be used in daily merging."
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_NUMERIC = {
 | 
						|
      .error_name            = "OB_INVALID_NUMERIC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid numeric",
 | 
						|
      .str_user_error        = "Invalid numeric char '%c'",
 | 
						|
      .oracle_errno          = 1722,
 | 
						|
      .oracle_str_error      = "ORA-01722: invalid number",
 | 
						|
      .oracle_str_user_error = "ORA-01722: invalid number char '%c'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_REGEXP_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Got error 'empty (sub)expression' from regexp",
 | 
						|
      .str_user_error        = "Got error 'empty (sub)expression' from regexp",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5115, Got error 'empty (sub)expression' from regexp",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5115, Got error 'empty (sub)expression' from regexp"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_LOG_OP_SETCHILD_OVERFLOW = {
 | 
						|
      .error_name            = "OB_SQL_LOG_OP_SETCHILD_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Logical operator child index overflow",
 | 
						|
      .str_user_error        = "Logical operator child index overflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5116, Logical operator child index overflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5116, Logical operator child index overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_EXPLAIN_FAILED = {
 | 
						|
      .error_name            = "OB_SQL_EXPLAIN_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to explain plan",
 | 
						|
      .str_user_error        = "fail to explain plan",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5117, fail to explain plan",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5117, fail to explain plan"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_OPT_COPY_OP_FAILED = {
 | 
						|
      .error_name            = "OB_SQL_OPT_COPY_OP_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to copy logical operator",
 | 
						|
      .str_user_error        = "fail to copy logical operator",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5118, fail to copy logical operator",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5118, fail to copy logical operator"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_OPT_GEN_PLAN_FALIED = {
 | 
						|
      .error_name            = "OB_SQL_OPT_GEN_PLAN_FALIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to generate plan",
 | 
						|
      .str_user_error        = "fail to generate plan",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5119, fail to generate plan",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5119, fail to generate plan"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_OPT_CREATE_RAWEXPR_FAILED = {
 | 
						|
      .error_name            = "OB_SQL_OPT_CREATE_RAWEXPR_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to create raw expr",
 | 
						|
      .str_user_error        = "fail to create raw expr",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5120, fail to create raw expr",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5120, fail to create raw expr"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_OPT_JOIN_ORDER_FAILED = {
 | 
						|
      .error_name            = "OB_SQL_OPT_JOIN_ORDER_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fail to generate join order",
 | 
						|
      .str_user_error        = "fail to generate join order",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5121, fail to generate join order",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5121, fail to generate join order"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_OPT_ERROR = {
 | 
						|
      .error_name            = "OB_SQL_OPT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "optimizer general error",
 | 
						|
      .str_user_error        = "optimizer general error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5122, optimizer general error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5122, optimizer general error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OCI_INIT_TIMEZONE = {
 | 
						|
      .error_name            = "OB_ERR_OCI_INIT_TIMEZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "failure to initialize timezone information",
 | 
						|
      .str_user_error        = "failure to initialize timezone information",
 | 
						|
      .oracle_errno          = 1804,
 | 
						|
      .oracle_str_error      = "ORA-01804: failure to initialize timezone information",
 | 
						|
      .oracle_str_user_error = "ORA-01804: failure to initialize timezone information"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ZLIB_DATA = {
 | 
						|
      .error_name            = "OB_ERR_ZLIB_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ZLIB_Z_DATA_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ZLIB: Input data corrupted",
 | 
						|
      .str_user_error        = "ZLIB: Input data corrupted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5124, ZLIB: Input data corrupted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5124, ZLIB: Input data corrupted"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_RESOLVER_NO_MEMORY = {
 | 
						|
      .error_name            = "OB_SQL_RESOLVER_NO_MEMORY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sql resolver no memory",
 | 
						|
      .str_user_error        = "sql resolver no memory",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5130, sql resolver no memory",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5130, sql resolver no memory"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_DML_ONLY = {
 | 
						|
      .error_name            = "OB_SQL_DML_ONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan cache support dml only",
 | 
						|
      .str_user_error        = "plan cache support dml only",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5131, plan cache support dml only",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5131, plan cache support dml only"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_GRANT = {
 | 
						|
      .error_name            = "OB_ERR_NO_GRANT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "No such grant defined",
 | 
						|
      .str_user_error        = "No such grant defined",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5133, No such grant defined",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5133, No such grant defined"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_DB_SELECTED = {
 | 
						|
      .error_name            = "OB_ERR_NO_DB_SELECTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_DB_ERROR,
 | 
						|
      .sqlstate              = "3D000",
 | 
						|
      .str_error             = "No database selected",
 | 
						|
      .str_user_error        = "No database selected",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5134, No database selected",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5134, No database selected"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_PC_OVERFLOW = {
 | 
						|
      .error_name            = "OB_SQL_PC_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan cache is overflow",
 | 
						|
      .str_user_error        = "plan cache is overflow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5135, plan cache is overflow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5135, plan cache is overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_PC_PLAN_DUPLICATE = {
 | 
						|
      .error_name            = "OB_SQL_PC_PLAN_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan exists in plan cache already",
 | 
						|
      .str_user_error        = "plan exists in plan cache already",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5136, plan exists in plan cache already",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5136, plan exists in plan cache already"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_PC_PLAN_EXPIRE = {
 | 
						|
      .error_name            = "OB_SQL_PC_PLAN_EXPIRE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan is expired",
 | 
						|
      .str_user_error        = "plan is expired",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5137, plan is expired",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5137, plan is expired"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_PC_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_SQL_PC_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no plan exist",
 | 
						|
      .str_user_error        = "no plan exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5138, no plan exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5138, no plan exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_PARAMS_LIMIT = {
 | 
						|
      .error_name            = "OB_SQL_PARAMS_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many params, plan cache not support",
 | 
						|
      .str_user_error        = "too many params, plan cache not support",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5139, too many params, plan cache not support",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5139, too many params, plan cache not support"
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_PC_PLAN_SIZE_LIMIT = {
 | 
						|
      .error_name            = "OB_SQL_PC_PLAN_SIZE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "plan is too big to add to plan cache",
 | 
						|
      .str_user_error        = "plan is too big to add to plan cache",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5140, plan is too big to add to plan cache",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5140, plan is too big to add to plan cache"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_CHARSET = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_CHARSET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_CHARACTER_SET,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Unknown character set",
 | 
						|
      .str_user_error        = "Unknown character set: '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5142, Unknown character set",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5142, Unknown character set: '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_COLLATION = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_COLLATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_COLLATION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown collation",
 | 
						|
      .str_user_error        = "Unknown collation: '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5143, Unknown collation",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5143, Unknown collation: '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLLATION_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_COLLATION_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_COLLATION_CHARSET_MISMATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "The collation is not valid for the character set",
 | 
						|
      .str_user_error        = "COLLATION '%.*s' is not valid for CHARACTER SET '%.*s'",
 | 
						|
      .oracle_errno          = 12704,
 | 
						|
      .oracle_str_error      = "ORA-12704: character set mismatch",
 | 
						|
      .oracle_str_user_error = "ORA-12704: COLLATION '%.*s' is not valid for CHARACTER SET '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_VALUE_FOR_VAR = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_VALUE_FOR_VAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_VALUE_FOR_VAR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Variable can't be set to the value",
 | 
						|
      .str_user_error        = "Variable \'%.*s\' can't be set to the value of \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5145, Variable can't be set to the value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5145, Variable \'%.*s\' can't be set to the value of \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNKNOWN_PARTITION = {
 | 
						|
      .error_name            = "OB_UNKNOWN_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_PARTITION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown partition",
 | 
						|
      .str_user_error        = "Unkown partition '%.*s' in table '%.*s'",
 | 
						|
      .oracle_errno          = 2149,
 | 
						|
      .oracle_str_error      = "ORA-02149: Specified partition does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-02149: Specified partition does not exist '%.*s' in table '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_PARTITION_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ROW_DOES_NOT_MATCH_GIVEN_PARTITION_SET,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Found a row not matching the given partition set",
 | 
						|
      .str_user_error        = "Found a row not matching the given partition set",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5147, Found a row not matching the given partition set",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5147, Found a row not matching the given partition set"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_PASSWD_LENGTH = {
 | 
						|
      .error_name            = "OB_ER_PASSWD_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = " Password hash should be a 40-digit hexadecimal number",
 | 
						|
      .str_user_error        = " Password hash should be a 40-digit hexadecimal number",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5148,  Password hash should be a 40-digit hexadecimal number",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5148,  Password hash should be a 40-digit hexadecimal number"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INSERT_INNER_JOIN_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_INSERT_INNER_JOIN_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "07000",
 | 
						|
      .str_error             = "Insert inner join column error",
 | 
						|
      .str_user_error        = "Insert inner join column error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5149, Insert inner join column error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5149, Insert inner join column error"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_NOT_IN_SERVER = {
 | 
						|
      .error_name            = "OB_TENANT_NOT_IN_SERVER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Tenant not in this server",
 | 
						|
      .str_user_error        = "Tenant not in this server",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5150, Tenant not in this server",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5150, Tenant not in this server"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLEGROUP_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TABLEGROUP_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42P01",
 | 
						|
      .str_error             = "tablegroup not exist",
 | 
						|
      .str_user_error        = "tablegroup not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5151, tablegroup not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5151, tablegroup not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_SUBQUERY_TOO_MANY_ROW = {
 | 
						|
      .error_name            = "OB_SUBQUERY_TOO_MANY_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SUBQUERY_NO_1_ROW,
 | 
						|
      .sqlstate              = "21000",
 | 
						|
      .str_error             = "Subquery returns more than 1 row",
 | 
						|
      .str_user_error        = "Subquery returns more than 1 row",
 | 
						|
      .oracle_errno          = 1427,
 | 
						|
      .oracle_str_error      = "ORA-01427: single-row subquery returns more than one row",
 | 
						|
      .oracle_str_user_error = "ORA-01427: single-row subquery returns more than one row"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_DATABASE = {
 | 
						|
      .error_name            = "OB_ERR_BAD_DATABASE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_BAD_DB_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Unknown database",
 | 
						|
      .str_user_error        = "Unknown database '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5154, Unknown database",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5154, Unknown database '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_USER = {
 | 
						|
      .error_name            = "OB_CANNOT_USER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANNOT_USER,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "User operation failed",
 | 
						|
      .str_user_error        = "Operation %.*s failed for %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5155, User operation failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5155, Operation %.*s failed for %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_EXIST = {
 | 
						|
      .error_name            = "OB_TENANT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tenant already exist",
 | 
						|
      .str_user_error        = "tenant \'%s\' already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5156, tenant already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5156, tenant \'%s\' already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TENANT_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown tenant",
 | 
						|
      .str_user_error        = "Unknown tenant '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5157, Unknown tenant",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5157, Unknown tenant '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_DATABASE_EXIST = {
 | 
						|
      .error_name            = "OB_DATABASE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DB_CREATE_EXISTS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't create database;database exists",
 | 
						|
      .str_user_error        = "Can't create database '%.*s'; database exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5158, Can't create database;database exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5158, Can't create database '%.*s'; database exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_TABLEGROUP_EXIST = {
 | 
						|
      .error_name            = "OB_TABLEGROUP_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tablegroup already exist",
 | 
						|
      .str_user_error        = "tablegroup already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5159, tablegroup already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5159, tablegroup already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TENANT_NAME = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TENANT_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid tenant name specified in connection string",
 | 
						|
      .str_user_error        = "invalid tenant name specified in connection string",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5160, invalid tenant name specified in connection string",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5160, invalid tenant name specified in connection string"
 | 
						|
};
 | 
						|
static const _error _error_OB_EMPTY_TENANT = {
 | 
						|
      .error_name            = "OB_EMPTY_TENANT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tenant is empty",
 | 
						|
      .str_user_error        = "tenant is empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5161, tenant is empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5161, tenant is empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_DB_NAME = {
 | 
						|
      .error_name            = "OB_WRONG_DB_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_DB_NAME,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect database name",
 | 
						|
      .str_user_error        = "Incorrect database name '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5162, Incorrect database name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5162, Incorrect database name '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_TABLE_NAME = {
 | 
						|
      .error_name            = "OB_WRONG_TABLE_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_TABLE_NAME,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect table name",
 | 
						|
      .str_user_error        = "Incorrect table name '%.*s'",
 | 
						|
      .oracle_errno          = 903,
 | 
						|
      .oracle_str_error      = "ORA-00903: invalid table name",
 | 
						|
      .oracle_str_user_error = "ORA-00903: invalid table name '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_COLUMN_NAME = {
 | 
						|
      .error_name            = "OB_WRONG_COLUMN_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_COLUMN_NAME,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect column name",
 | 
						|
      .str_user_error        = "Incorrect column name '%.*s'",
 | 
						|
      .oracle_errno          = 904,
 | 
						|
      .oracle_str_error      = "ORA-00904: invalid identifier",
 | 
						|
      .oracle_str_user_error = "ORA-00904: invalid identifier '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_FIELD_SPEC,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect column specifier",
 | 
						|
      .str_user_error        = "Incorrect column specifier for column '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5165, Incorrect column specifier",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5165, Incorrect column specifier for column '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DB_DROP_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_DB_DROP_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DB_DROP_EXISTS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't drop database;database doesn't exist",
 | 
						|
      .str_user_error        = "Can't drop database '%.*s'; database doesn't exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5166, Can't drop database;database doesn't exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5166, Can't drop database '%.*s'; database doesn't exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATA_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_DATA_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DATA_TOO_LONG,
 | 
						|
      .sqlstate              = "22001",
 | 
						|
      .str_error             = "Data too long for column",
 | 
						|
      .str_user_error        = "Data too long for column '%.*s' at row %ld",
 | 
						|
      .oracle_errno          = 12899,
 | 
						|
      .oracle_str_error      = "ORA-12899: value too large for column",
 | 
						|
      .oracle_str_user_error = "ORA-12899: value too large for column '%.*s' at row %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_VALUE_COUNT_ON_ROW = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_VALUE_COUNT_ON_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_VALUE_COUNT_ON_ROW,
 | 
						|
      .sqlstate              = "21S01",
 | 
						|
      .str_error             = "column count does not match value count",
 | 
						|
      .str_user_error        = "column count does not match value count at row '%d'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5168, column count does not match value count",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5168, column count does not match value count at row '%d'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CREATE_USER_WITH_GRANT = {
 | 
						|
      .error_name            = "OB_ERR_CREATE_USER_WITH_GRANT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_CREATE_USER_WITH_GRANT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "You are not allowed to create a user with GRANT",
 | 
						|
      .str_user_error        = "You are not allowed to create a user with GRANT",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5169, You are not allowed to create a user with GRANT",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5169, You are not allowed to create a user with GRANT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_DB_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_DB_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DBACCESS_DENIED_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Access denied for user to database",
 | 
						|
      .str_user_error        = "Access denied for user '%.*s'@'%.*s' to database '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5170, Access denied for user to database",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5170, Access denied for user '%.*s'@'%.*s' to database '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_TABLE_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_TABLE_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TABLEACCESS_DENIED_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Command denied to user for table",
 | 
						|
      .str_user_error        = "%.*s command denied to user '%.*s'@'%.*s' for table '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5171, Command denied to user for table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5171, %.*s command denied to user '%.*s'@'%.*s' for table '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ON_UPDATE = {
 | 
						|
      .error_name            = "OB_INVALID_ON_UPDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_ON_UPDATE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid ON UPDATE clause",
 | 
						|
      .str_user_error        = "Invalid ON UPDATE clause for \'%s\' column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5172, Invalid ON UPDATE clause",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5172, Invalid ON UPDATE clause for \'%s\' column"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_DEFAULT = {
 | 
						|
      .error_name            = "OB_INVALID_DEFAULT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_DEFAULT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid default value",
 | 
						|
      .str_user_error        = "Invalid default value for \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5173, Invalid default value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5173, Invalid default value for \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_TABLE_USED = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_TABLE_USED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UPDATE_TABLE_USED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Update table used",
 | 
						|
      .str_user_error        = "You can\'t specify target table \'%s\' for update in FROM clause",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5174, Update table used",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5174, You can\'t specify target table \'%s\' for update in FROM clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COULUMN_VALUE_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ERR_COULUMN_VALUE_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_VALUE_COUNT_ON_ROW,
 | 
						|
      .sqlstate              = "21S01",
 | 
						|
      .str_error             = "Column count doesn\'t match value count",
 | 
						|
      .str_user_error        = "Column count doesn\'t match value count at row %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5175, Column count doesn\'t match value count",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5175, Column count doesn\'t match value count at row %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_GROUP_FUNC_USE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_GROUP_FUNC_USE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_GROUP_FUNC_USE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid use of group function",
 | 
						|
      .str_user_error        = "Invalid use of group function",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5176, Invalid use of group function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5176, Invalid use of group function"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_AGGREGATE_2COLLATIONS = {
 | 
						|
      .error_name            = "OB_CANT_AGGREGATE_2COLLATIONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_AGGREGATE_2COLLATIONS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal mix of collations",
 | 
						|
      .str_user_error        = "Illegal mix of collations",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5177, Illegal mix of collations",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5177, Illegal mix of collations"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD = {
 | 
						|
      .error_name            = "OB_ERR_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Field is of a not allowed type for this type of partitioning",
 | 
						|
      .str_user_error        = "Field \'%.*s\' is of a not allowed type for this type of partitioning",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5178, Field is of a not allowed type for this type of partitioning",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5178, Field \'%.*s\' is of a not allowed type for this type of partitioning"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_IDENT = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_IDENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_IDENT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Identifier name is too long",
 | 
						|
      .str_user_error        = "Identifier name \'%.*s\' is too long",
 | 
						|
      .oracle_errno          = 972,
 | 
						|
      .oracle_str_error      = "ORA-00972: identifier is too long",
 | 
						|
      .oracle_str_user_error = "ORA-00972: identifier \'%.*s\' is too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_TYPE_FOR_VAR = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_TYPE_FOR_VAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_TYPE_FOR_VAR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect argument type to variable",
 | 
						|
      .str_user_error        = "Incorrect argument type to variable '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5180, Incorrect argument type to variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5180, Incorrect argument type to variable '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_USER_NAME_LENGTH = {
 | 
						|
      .error_name            = "OB_WRONG_USER_NAME_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_STRING_LENGTH,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "String is too long for user_name (should be no longer than 16)",
 | 
						|
      .str_user_error        = "String '%.*s' is too long for user name (should be no longer than 16)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5181, String is too long for user_name (should be no longer than 16)",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5181, String '%.*s' is too long for user name (should be no longer than 16)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRIV_USAGE = {
 | 
						|
      .error_name            = "OB_ERR_PRIV_USAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_USAGE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect usage of DB GRANT and GLOBAL PRIVILEGES",
 | 
						|
      .str_user_error        = "Incorrect usage of DB GRANT and GLOBAL PRIVILEGES",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5182, Incorrect usage of DB GRANT and GLOBAL PRIVILEGES",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5182, Incorrect usage of DB GRANT and GLOBAL PRIVILEGES"
 | 
						|
};
 | 
						|
static const _error _error_OB_ILLEGAL_GRANT_FOR_TABLE = {
 | 
						|
      .error_name            = "OB_ILLEGAL_GRANT_FOR_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ILLEGAL_GRANT_FOR_TABLE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Illegal GRANT/REVOKE command; please consult the manual to see which privileges can be used",
 | 
						|
      .str_user_error        = "Illegal GRANT/REVOKE command; please consult the manual to see which privileges can be used",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5183, Illegal GRANT/REVOKE command; please consult the manual to see which privileges can be used",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5183, Illegal GRANT/REVOKE command; please consult the manual to see which privileges can be used"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REACH_AUTOINC_MAX = {
 | 
						|
      .error_name            = "OB_ERR_REACH_AUTOINC_MAX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_AUTOINC_READ_FAILED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Failed to read auto-increment value from storage engine",
 | 
						|
      .str_user_error        = "Failed to read auto-increment value from storage engine",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5184, Failed to read auto-increment value from storage engine",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5184, Failed to read auto-increment value from storage engine"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_TABLES_USED = {
 | 
						|
      .error_name            = "OB_ERR_NO_TABLES_USED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_TABLES_USED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No tables used",
 | 
						|
      .str_user_error        = "No tables used",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5185, No tables used",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5185, No tables used"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_REMOVE_ALL_FIELDS = {
 | 
						|
      .error_name            = "OB_CANT_REMOVE_ALL_FIELDS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_REMOVE_ALL_FIELDS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "You can't delete all columns with ALTER TABLE; use DROP TABLE instead",
 | 
						|
      .str_user_error        = "You can't delete all columns with ALTER TABLE; use DROP TABLE instead",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5187, You can't delete all columns with ALTER TABLE; use DROP TABLE instead",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5187, You can't delete all columns with ALTER TABLE; use DROP TABLE instead"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_PARTITIONS_ERROR = {
 | 
						|
      .error_name            = "OB_TOO_MANY_PARTITIONS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_PARTITIONS_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too many partitions (including subpartitions) were defined",
 | 
						|
      .str_user_error        = "Too many partitions (including subpartitions) were defined",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5188, Too many partitions (including subpartitions) were defined",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5188, Too many partitions (including subpartitions) were defined"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_PARTS_ERROR = {
 | 
						|
      .error_name            = "OB_NO_PARTS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_PARTS_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Number of partitions = 0 is not an allowed value",
 | 
						|
      .str_user_error        = "Number of partitions = 0 is not an allowed value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5189, Number of partitions = 0 is not an allowed value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5189, Number of partitions = 0 is not an allowed value"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_SUB_KEY = {
 | 
						|
      .error_name            = "OB_WRONG_SUB_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_SUB_KEY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys",
 | 
						|
      .str_user_error        = "Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5190, Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5190, Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys"
 | 
						|
};
 | 
						|
static const _error _error_OB_KEY_PART_0 = {
 | 
						|
      .error_name            = "OB_KEY_PART_0",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_KEY_PART_0,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Key part length cannot be 0",
 | 
						|
      .str_user_error        = "Key part \'%.*s\' length cannot be 0",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5191, Key part length cannot be 0",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5191, Key part \'%.*s\' length cannot be 0"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_TIME_ZONE = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_TIME_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_TIME_ZONE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown or incorrect time zone",
 | 
						|
      .str_user_error        = "Unknown or incorrect time zone: \'%.*s\'",
 | 
						|
      .oracle_errno          = 1882,
 | 
						|
      .oracle_str_error      = "ORA-01882: timezone region string not found",
 | 
						|
      .oracle_str_user_error = "ORA-01882: timezone region \'%.*s\' not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_AUTO_KEY = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_AUTO_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_AUTO_KEY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect table definition; there can be only one auto column",
 | 
						|
      .str_user_error        = "Incorrect table definition; there can be only one auto column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5193, Incorrect table definition; there can be only one auto column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5193, Incorrect table definition; there can be only one auto column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_KEYS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_KEYS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_KEYS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Too many keys specified",
 | 
						|
      .str_user_error        = "Too many keys specified; max %ld keys allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5194, Too many keys specified",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5194, Too many keys specified; max %ld keys allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_ROWKEY_COLUMNS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_ROWKEY_COLUMNS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_KEY_PARTS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Too many key parts specified",
 | 
						|
      .str_user_error        = "Too many key parts specified; max %ld parts allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5195, Too many key parts specified",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5195, Too many key parts specified; max %ld parts allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_KEY_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_KEY_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_KEY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Specified key was too long",
 | 
						|
      .str_user_error        = "Specified key was too long; max key length is %ld bytes",
 | 
						|
      .oracle_errno          = 1450,
 | 
						|
      .oracle_str_error      = "ORA-01450: maximum key length exceeded",
 | 
						|
      .oracle_str_user_error = "ORA-01450: maximum key length (%ld) exceeded"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_COLUMNS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_COLUMNS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_FIELDS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Too many columns",
 | 
						|
      .str_user_error        = "Too many columns",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5197, Too many columns",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5197, Too many columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_COLUMN_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_COLUMN_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_FIELDLENGTH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Column length too big",
 | 
						|
      .str_user_error        = "Column length too big for column '%s' (max = %d)",
 | 
						|
      .oracle_errno          = 910,
 | 
						|
      .oracle_str_error      = "ORA-00910: specified length too long for its datatype",
 | 
						|
      .oracle_str_user_error = "ORA-00910: specified length too long for column '%s' (max = %d byte)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_BIG_ROWSIZE = {
 | 
						|
      .error_name            = "OB_ERR_TOO_BIG_ROWSIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_ROWSIZE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Row size too large",
 | 
						|
      .str_user_error        = "Row size too large",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5199, Row size too large",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5199, Row size too large"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_TABLE,
 | 
						|
      .sqlstate              = "42S02",
 | 
						|
      .str_error             = "Unknown table",
 | 
						|
      .str_user_error        = "Unknown table '%.*s' in %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5200, Unknown table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5200, Unknown table '%.*s' in %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_BAD_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_BAD_TABLE_ERROR,
 | 
						|
      .sqlstate              = "42S02",
 | 
						|
      .str_error             = "Unknown table",
 | 
						|
      .str_user_error        = "Unknown table '%.*s'",
 | 
						|
      .oracle_errno          = 942,
 | 
						|
      .oracle_str_error      = "ORA-00942: table or view does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00942: table or view '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_BIG_SCALE = {
 | 
						|
      .error_name            = "OB_ERR_TOO_BIG_SCALE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_SCALE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Too big scale specified for column",
 | 
						|
      .str_user_error        = "Too big scale %d specified for column '%s'. Maximum is %ld.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5202, Too big scale specified for column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5202, Too big scale %d specified for column '%s'. Maximum is %ld."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_BIG_PRECISION = {
 | 
						|
      .error_name            = "OB_ERR_TOO_BIG_PRECISION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_PRECISION,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Too big precision specified for column",
 | 
						|
      .str_user_error        = "Too big precision %d specified for column '%s'. Maximum is %ld.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5203, Too big precision specified for column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5203, Too big precision %d specified for column '%s'. Maximum is %ld."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_M_BIGGER_THAN_D = {
 | 
						|
      .error_name            = "OB_ERR_M_BIGGER_THAN_D",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_M_BIGGER_THAN_D,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "precision must be >= scale",
 | 
						|
      .str_user_error        = "For float(M,D), double(M,D) or decimal(M,D), M must be >= D (column '%s').",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5204, precision must be >= scale",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5204, For float(M,D), double(M,D) or decimal(M,D), M must be >= D (column '%s')."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_BIG_DISPLAYWIDTH = {
 | 
						|
      .error_name            = "OB_ERR_TOO_BIG_DISPLAYWIDTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_DISPLAYWIDTH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Display width out of range for column",
 | 
						|
      .str_user_error        = "Display width out of range for column '%s' (max = %ld)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5205, Display width out of range for column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5205, Display width out of range for column '%s' (max = %ld)"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_GROUP_FIELD = {
 | 
						|
      .error_name            = "OB_WRONG_GROUP_FIELD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_GROUP_FIELD,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Can't group on column",
 | 
						|
      .str_user_error        = "Can't group on '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5206, Can't group on column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5206, Can't group on '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_NON_UNIQ_ERROR = {
 | 
						|
      .error_name            = "OB_NON_UNIQ_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NON_UNIQ_ERROR,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Column is ambiguous",
 | 
						|
      .str_user_error        = "Column '%.*s' in %.*s is ambiguous",
 | 
						|
      .oracle_errno          = 918,
 | 
						|
      .oracle_str_error      = "ORA-00918: Column is ambiguous",
 | 
						|
      .oracle_str_user_error = "ORA-00918: column '%.*s' in %.*s ambiguously defined"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NONUNIQ_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_NONUNIQ_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NONUNIQ_TABLE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Not unique table/alias",
 | 
						|
      .str_user_error        = "Not unique table/alias: \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5208, Not unique table/alias",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5208, Not unique table/alias: \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANT_DROP_FIELD_OR_KEY = {
 | 
						|
      .error_name            = "OB_ERR_CANT_DROP_FIELD_OR_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_DROP_FIELD_OR_KEY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Can't DROP Column; check that column/key exists",
 | 
						|
      .str_user_error        = "Can't DROP '%.*s'; check that column/key exists",
 | 
						|
      .oracle_errno          = 1418,
 | 
						|
      .oracle_str_error      = "ORA-01418: specified index does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01418: specified index '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MULTIPLE_PRI_KEY = {
 | 
						|
      .error_name            = "OB_ERR_MULTIPLE_PRI_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MULTIPLE_PRI_KEY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Multiple primary key defined",
 | 
						|
      .str_user_error        = "Multiple primary key defined",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5210, Multiple primary key defined",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5210, Multiple primary key defined"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_KEY_COLUMN_DOES_NOT_EXITS = {
 | 
						|
      .error_name            = "OB_ERR_KEY_COLUMN_DOES_NOT_EXITS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_KEY_COLUMN_DOES_NOT_EXITS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Key column doesn't exist in table",
 | 
						|
      .str_user_error        = "Key column '%.*s' doesn't exist in table",
 | 
						|
      .oracle_errno          = 904,
 | 
						|
      .oracle_str_error      = "ORA-00904: invalid identifier",
 | 
						|
      .oracle_str_user_error = "ORA-00904: '%.*s': invalid identifier"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AUTO_PARTITION_KEY = {
 | 
						|
      .error_name            = "OB_ERR_AUTO_PARTITION_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "auto-increment column should not be part of partition key",
 | 
						|
      .str_user_error        = "auto-increment column '%.*s' should not be part of partition key",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5212, auto-increment column should not be part of partition key",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5212, auto-increment column '%.*s' should not be part of partition key"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANT_USE_OPTION_HERE = {
 | 
						|
      .error_name            = "OB_ERR_CANT_USE_OPTION_HERE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_USE_OPTION_HERE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect usage/placement",
 | 
						|
      .str_user_error        = "Incorrect usage/placement of '%s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5213, Incorrect usage/placement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5213, Incorrect usage/placement of '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_OBJECT = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_OBJECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_OBJECT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Wrong object",
 | 
						|
      .str_user_error        = "\'%s.%s\' is not %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5214, Wrong object",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5214, \'%s.%s\' is not %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ON_RENAME = {
 | 
						|
      .error_name            = "OB_ERR_ON_RENAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ERROR_ON_RENAME,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Error on rename table",
 | 
						|
      .str_user_error        = "Error on rename of \'%s.%s\' to \'%s.%s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5215, Error on rename table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5215, Error on rename of \'%s.%s\' to \'%s.%s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_KEY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_KEY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_KEY_COLUMN,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "The used storage engine can't index column",
 | 
						|
      .str_user_error        = "The used storage engine can't index column '%.*s'",
 | 
						|
      .oracle_errno          = 2329,
 | 
						|
      .oracle_str_error      = "ORA-02329: column of datatype string cannot be unique or a primary key",
 | 
						|
      .oracle_str_user_error = "ORA-02329: column '%.*s' of datatype string cannot be unique or a primary key"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_FIELD_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_BAD_FIELD_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_BAD_FIELD_ERROR,
 | 
						|
      .sqlstate              = "42S22",
 | 
						|
      .str_error             = "Unknown column",
 | 
						|
      .str_user_error        = "Unknown column '%.*s' in '%.*s'",
 | 
						|
      .oracle_errno          = 904,
 | 
						|
      .oracle_str_error      = "ORA-00904: invalid identifier",
 | 
						|
      .oracle_str_user_error = "ORA-00904: invalid identifier '%.*s' in '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_FIELD_WITH_GROUP = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_FIELD_WITH_GROUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_FIELD_WITH_GROUP,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "column is not in GROUP BY",
 | 
						|
      .str_user_error        = "\'%.*s\' is not in GROUP BY",
 | 
						|
      .oracle_errno          = 979,
 | 
						|
      .oracle_str_error      = "ORA-00979: not a GROUP BY expression",
 | 
						|
      .oracle_str_user_error = "ORA-00979: \'%.*s\' not a GROUP BY expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANT_CHANGE_TX_CHARACTERISTICS = {
 | 
						|
      .error_name            = "OB_ERR_CANT_CHANGE_TX_CHARACTERISTICS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_CHANGE_TX_CHARACTERISTICS,
 | 
						|
      .sqlstate              = "25001",
 | 
						|
      .str_error             = "Transaction characteristics can't be changed while a transaction is in progress",
 | 
						|
      .str_user_error        = "Transaction characteristics can't be changed while a transaction is in progress",
 | 
						|
      .oracle_errno          = 1453,
 | 
						|
      .oracle_str_error      = "ORA-01453: SET TRANSACTION must be first statement of transaction",
 | 
						|
      .oracle_str_user_error = "ORA-01453: SET TRANSACTION must be first statement of transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION = {
 | 
						|
      .error_name            = "OB_ERR_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION,
 | 
						|
      .sqlstate              = "25006",
 | 
						|
      .str_error             = "Cannot execute statement in a READ ONLY transaction.",
 | 
						|
      .str_user_error        = "Cannot execute statement in a READ ONLY transaction.",
 | 
						|
      .oracle_errno          = 1456,
 | 
						|
      .oracle_str_error      = "ORA-01456: may not perform insert/delete/update operation inside a READ ONLY transaction",
 | 
						|
      .oracle_str_user_error = "ORA-01456: may not perform insert/delete/update operation inside a READ ONLY transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MIX_OF_GROUP_FUNC_AND_FIELDS = {
 | 
						|
      .error_name            = "OB_ERR_MIX_OF_GROUP_FUNC_AND_FIELDS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MIX_OF_GROUP_FUNC_AND_FIELDS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause",
 | 
						|
      .str_user_error        = "Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5221, Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5221, Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRUNCATED_WRONG_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_TRUNCATED_WRONG_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATED_WRONG_VALUE,
 | 
						|
      .sqlstate              = "22007",
 | 
						|
      .str_error             = "Incorrect value",
 | 
						|
      .str_user_error        = "Truncated incorrect %.*s value: '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5222, Incorrect value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5222, Truncated incorrect %.*s value: '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_IDENT_NAME = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_IDENT_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "wrong ident name",
 | 
						|
      .str_user_error        = "wrong ident name",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5223, wrong ident name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5223, wrong ident name"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_NAME_FOR_INDEX = {
 | 
						|
      .error_name            = "OB_WRONG_NAME_FOR_INDEX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_NAME_FOR_INDEX,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect index name",
 | 
						|
      .str_user_error        = "Incorrect index name '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5224, Incorrect index name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5224, Incorrect index name '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ILLEGAL_REFERENCE = {
 | 
						|
      .error_name            = "OB_ILLEGAL_REFERENCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ILLEGAL_REFERENCE,
 | 
						|
      .sqlstate              = "42S22",
 | 
						|
      .str_error             = "Reference not supported (reference to group function)",
 | 
						|
      .str_user_error        = "Reference '%.*s' not supported (reference to group function)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5225, Reference not supported (reference to group function)",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5225, Reference '%.*s' not supported (reference to group function)"
 | 
						|
};
 | 
						|
static const _error _error_OB_REACH_MEMORY_LIMIT = {
 | 
						|
      .error_name            = "OB_REACH_MEMORY_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "plan cache memory used reach the high water mark.",
 | 
						|
      .str_user_error        = "plan cache memory used reach the high water mark.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5226, plan cache memory used reach the high water mark.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5226, plan cache memory used reach the high water mark."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PASSWORD_FORMAT = {
 | 
						|
      .error_name            = "OB_ERR_PASSWORD_FORMAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PASSWORD_FORMAT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function.",
 | 
						|
      .str_user_error        = "The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5227, The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5227, The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NON_UPDATABLE_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_NON_UPDATABLE_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NON_UPDATABLE_TABLE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The target table is not updatable",
 | 
						|
      .str_user_error        = "The target table %.*s of the %.*s is not updatable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5228, The target table is not updatable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5228, The target table %.*s of the %.*s is not updatable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WARN_DATA_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_WARN_DATA_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "Out of range value for column",
 | 
						|
      .str_user_error        = "Out of range value for column '%.*s' at row %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5229, Out of range value for column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5229, Out of range value for column '%.*s' at row %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_EXPR_IN_PARTITION_FUNC_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_EXPR_IN_PARTITION_FUNC_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Constant or random or timezone-dependent expressions in (sub)partitioning function are not allowed",
 | 
						|
      .str_user_error        = "Constant or random or timezone-dependent expressions in (sub)partitioning function are not allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5230, Constant or random or timezone-dependent expressions in (sub)partitioning function are not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5230, Constant or random or timezone-dependent expressions in (sub)partitioning function are not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIEW_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_VIEW_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_INVALID,
 | 
						|
      .sqlstate              = "42S22",
 | 
						|
      .str_error             = "view invalid",
 | 
						|
      .str_user_error        = "View \'%.*s.%.*s\' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them",
 | 
						|
      .oracle_errno          = 4063,
 | 
						|
      .oracle_str_error      = "ORA-04063: view invalid",
 | 
						|
      .oracle_str_user_error = "ORA-04063: view '%.*s.%.*s' has errors"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OPTION_PREVENTS_STATEMENT = {
 | 
						|
      .error_name            = "OB_ERR_OPTION_PREVENTS_STATEMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_OPTION_PREVENTS_STATEMENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The MySQL server is running with the --read-only option so it cannot execute this statement",
 | 
						|
      .str_user_error        = "The MySQL server is running with the --read-only option so it cannot execute this statement",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5233, The MySQL server is running with the --read-only option so it cannot execute this statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5233, The MySQL server is running with the --read-only option so it cannot execute this statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DB_READ_ONLY = {
 | 
						|
      .error_name            = "OB_ERR_DB_READ_ONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The database is read only so it cannot execute this statement",
 | 
						|
      .str_user_error        = "The database \'%.*s\' is read only so it cannot execute this statement",
 | 
						|
      .oracle_errno          = 16000,
 | 
						|
      .oracle_str_error      = "ORA-16000: database open for read-only access",
 | 
						|
      .oracle_str_user_error = "ORA-16000: database \'%.*s\' open for read-only access"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLE_READ_ONLY = {
 | 
						|
      .error_name            = "OB_ERR_TABLE_READ_ONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The table is read only so it cannot execute this statement",
 | 
						|
      .str_user_error        = "The table \'%.*s.%.*s\' is read only so it cannot execute this statement",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5235, The table is read only so it cannot execute this statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5235, The table \'%.*s.%.*s\' is read only so it cannot execute this statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LOCK_OR_ACTIVE_TRANSACTION = {
 | 
						|
      .error_name            = "OB_ERR_LOCK_OR_ACTIVE_TRANSACTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_LOCK_OR_ACTIVE_TRANSACTION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can't execute the given command because you have active locked tables or an active transaction",
 | 
						|
      .str_user_error        = "Can't execute the given command because you have active locked tables or an active transaction",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5236, Can't execute the given command because you have active locked tables or an active transaction",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5236, Can't execute the given command because you have active locked tables or an active transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SAME_NAME_PARTITION_FIELD = {
 | 
						|
      .error_name            = "OB_ERR_SAME_NAME_PARTITION_FIELD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SAME_NAME_PARTITION_FIELD,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate partition field name",
 | 
						|
      .str_user_error        = "Duplicate partition field name '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5237, Duplicate partition field name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5237, Duplicate partition field name '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLENAME_NOT_ALLOWED_HERE = {
 | 
						|
      .error_name            = "OB_ERR_TABLENAME_NOT_ALLOWED_HERE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TABLENAME_NOT_ALLOWED_HERE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Table from one of the SELECTs cannot be used in global ORDER clause",
 | 
						|
      .str_user_error        = "Table \'%.*s\' from one of the SELECTs cannot be used in global ORDER clause",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5238, Table from one of the SELECTs cannot be used in global ORDER clause",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5238, Table \'%.*s\' from one of the SELECTs cannot be used in global ORDER clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIEW_RECURSIVE = {
 | 
						|
      .error_name            = "OB_ERR_VIEW_RECURSIVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_RECURSIVE,
 | 
						|
      .sqlstate              = "42S02",
 | 
						|
      .str_error             = "view contains recursion",
 | 
						|
      .str_user_error        = "\'%.*s.%.*s\' contains view recursion",
 | 
						|
      .oracle_errno          = 1731,
 | 
						|
      .oracle_str_error      = "ORA-01731: circular view definition encountered",
 | 
						|
      .oracle_str_user_error = "ORA-01731: view '%.*s.%.*s' encounters circular definition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_QUALIFIER = {
 | 
						|
      .error_name            = "OB_ERR_QUALIFIER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column part of USING clause cannot have qualifier",
 | 
						|
      .str_user_error        = "Column part of USING clause cannot have qualifier",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5240, Column part of USING clause cannot have qualifier",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5240, Column part of USING clause cannot have qualifier"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_VALUE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect value",
 | 
						|
      .str_user_error        = "Incorrect %s value: '%s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5241, Incorrect value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5241, Incorrect %s value: '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIEW_WRONG_LIST = {
 | 
						|
      .error_name            = "OB_ERR_VIEW_WRONG_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_WRONG_LIST,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "View's SELECT and view's field list have different column counts",
 | 
						|
      .str_user_error        = "View's SELECT and view's field list have different column counts",
 | 
						|
      .oracle_errno          = 1730,
 | 
						|
      .oracle_str_error      = "ORA-01730: invalid number of column names specified",
 | 
						|
      .oracle_str_user_error = "ORA-01730: invalid number of column names specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_SYS_VARS_MAYBE_DIFF_VERSION = {
 | 
						|
      .error_name            = "OB_SYS_VARS_MAYBE_DIFF_VERSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "system variables' version maybe different",
 | 
						|
      .str_user_error        = "system variables' version maybe different",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5243, system variables' version maybe different",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5243, system variables' version maybe different"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AUTO_INCREMENT_CONFLICT = {
 | 
						|
      .error_name            = "OB_ERR_AUTO_INCREMENT_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_AUTO_INCREMENT_CONFLICT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Auto-increment value in UPDATE conflicts with internally generated values",
 | 
						|
      .str_user_error        = "Auto-increment value in UPDATE conflicts with internally generated values",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5244, Auto-increment value in UPDATE conflicts with internally generated values",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5244, Auto-increment value in UPDATE conflicts with internally generated values"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TASK_SKIPPED = {
 | 
						|
      .error_name            = "OB_ERR_TASK_SKIPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "some tasks are skipped",
 | 
						|
      .str_user_error        = "some tasks are skipped, skipped server addr is '%s', the orginal error code is %d",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5245, some tasks are skipped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5245, some tasks are skipped, skipped server addr is '%s', the orginal error code is %d"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NAME_BECOMES_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_NAME_BECOMES_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NAME_BECOMES_EMPTY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Name has become ''",
 | 
						|
      .str_user_error        = "Name \'%.*s\' has become ''",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5246, Name has become ''",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5246, Name \'%.*s\' has become ''"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REMOVED_SPACES = {
 | 
						|
      .error_name            = "OB_ERR_REMOVED_SPACES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_REMOVED_SPACES,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Leading spaces are removed from name ",
 | 
						|
      .str_user_error        = "Leading spaces are removed from name \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5247, Leading spaces are removed from name ",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5247, Leading spaces are removed from name \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_ADD_AUTOINCREMENT_COLUMN = {
 | 
						|
      .error_name            = "OB_WARN_ADD_AUTOINCREMENT_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Alter table add auto_increment column is dangerous",
 | 
						|
      .str_user_error        = "Alter table add auto_increment column is dangerous, table_name=\'%.*s\', column_name=\'%s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5248, Alter table add auto_increment column is dangerous",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5248, Alter table add auto_increment column is dangerous, table_name=\'%.*s\', column_name=\'%s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_CHAMGE_NULL_ATTRIBUTE = {
 | 
						|
      .error_name            = "OB_WARN_CHAMGE_NULL_ATTRIBUTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Alter table change nullable column to not nullable is dangerous",
 | 
						|
      .str_user_error        = "Alter table change nullable column to not nullable is dangerous, table_name=\'%.*s\', column_name=\'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5249, Alter table change nullable column to not nullable is dangerous",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5249, Alter table change nullable column to not nullable is dangerous, table_name=\'%.*s\', column_name=\'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CHARACTER_STRING = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CHARACTER_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_CHARACTER_STRING,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid character string",
 | 
						|
      .str_user_error        = "Invalid %.*s character string: \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5250, Invalid character string",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5250, Invalid %.*s character string: \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_KILL_DENIED = {
 | 
						|
      .error_name            = "OB_ERR_KILL_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_KILL_DENIED_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "You are not owner of thread",
 | 
						|
      .str_user_error        = "You are not owner of thread %lu",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5251, You are not owner of thread",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5251, You are not owner of thread %lu"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_DEFINITION_AMBIGUOUS = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_DEFINITION_AMBIGUOUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column definition is ambiguous. Column has both NULL and NOT NULL attributes",
 | 
						|
      .str_user_error        = "Column \'%.*s\' definition is ambiguous. Column has both NULL and NOT NULL attributes",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5252, Column definition is ambiguous. Column has both NULL and NOT NULL attributes",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5252, Column \'%.*s\' definition is ambiguous. Column has both NULL and NOT NULL attributes"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EMPTY_QUERY = {
 | 
						|
      .error_name            = "OB_ERR_EMPTY_QUERY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_EMPTY_QUERY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Query was empty",
 | 
						|
      .str_user_error        = "Query was empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5253, Query was empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5253, Query was empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CUT_VALUE_GROUP_CONCAT = {
 | 
						|
      .error_name            = "OB_ERR_CUT_VALUE_GROUP_CONCAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CUT_VALUE_GROUP_CONCAT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Row was cut by GROUP_CONCAT()",
 | 
						|
      .str_user_error        = "Row %ld was cut by GROUP_CONCAT()",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5254, Row was cut by GROUP_CONCAT()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5254, Row %ld was cut by GROUP_CONCAT()"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FIELD_NOT_FOUND_PART = {
 | 
						|
      .error_name            = "OB_ERR_FIELD_NOT_FOUND_PART",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_FIELD_NOT_FOUND_PART_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Field in list of fields for partition function not found in table",
 | 
						|
      .str_user_error        = "Field in list of fields for partition function not found in table",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5255, Field in list of fields for partition function not found in table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5255, Field in list of fields for partition function not found in table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRIMARY_CANT_HAVE_NULL = {
 | 
						|
      .error_name            = "OB_ERR_PRIMARY_CANT_HAVE_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PRIMARY_CANT_HAVE_NULL,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead",
 | 
						|
      .str_user_error        = "All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5256, All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5256, All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_FUNC_NOT_ALLOWED_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_FUNC_NOT_ALLOWED_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARTITION_FUNC_NOT_ALLOWED_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The PARTITION function returns the wrong type",
 | 
						|
      .str_user_error        = "The PARTITION function returns the wrong type",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5257, The PARTITION function returns the wrong type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5257, The PARTITION function returns the wrong type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_BLOCK_SIZE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_BLOCK_SIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid block size, block size should between 1024 and 1048576",
 | 
						|
      .str_user_error        = "Invalid block size, block size should between 1024 and 1048576",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5258, Invalid block size, block size should between 1024 and 1048576",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5258, Invalid block size, block size should between 1024 and 1048576"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_STORAGE_ENGINE = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_STORAGE_ENGINE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_STORAGE_ENGINE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Unknown storage engine",
 | 
						|
      .str_user_error        = "Unknown storage engine \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5259, Unknown storage engine",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5259, Unknown storage engine \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TENANT_IS_LOCKED = {
 | 
						|
      .error_name            = "OB_ERR_TENANT_IS_LOCKED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Tenant is locked",
 | 
						|
      .str_user_error        = "Tenant \'%.*s\' is locked",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5260, Tenant is locked",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5260, Tenant \'%.*s\' is locked"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF = {
 | 
						|
      .error_name            = "OB_EER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A UNIQUE INDEX/PRIMARY KEY must include all columns in the table's partitioning function",
 | 
						|
      .str_user_error        = "A %s must include all columns in the table's partitioning function",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5261, A UNIQUE INDEX/PRIMARY KEY must include all columns in the table's partitioning function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5261, A %s must include all columns in the table's partitioning function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_FUNCTION_IS_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_FUNCTION_IS_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "This partition function is not allowed",
 | 
						|
      .str_user_error        = "This partition function is not allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5262, This partition function is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5262, This partition function is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AGGREGATE_ORDER_FOR_UNION = {
 | 
						|
      .error_name            = "OB_ERR_AGGREGATE_ORDER_FOR_UNION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_AGGREGATE_ORDER_FOR_UNION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "aggregate order for union",
 | 
						|
      .str_user_error        = "Expression #%d of ORDER BY contains aggregate function and applies to a UNION",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5263, aggregate order for union",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5263, Expression #%d of ORDER BY contains aggregate function and applies to a UNION"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTLINE_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_OUTLINE_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Outline exists",
 | 
						|
      .str_user_error        = "Outline '%.*s' already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5264, Outline exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5264, Outline '%.*s' already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_OUTLINE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_OUTLINE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Outline not exists",
 | 
						|
      .str_user_error        = "Outline \'%.*s.%.*s\' doesn\'t exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5265, Outline not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5265, Outline \'%.*s.%.*s\' doesn\'t exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_OPTION_BELOW_LIMIT = {
 | 
						|
      .error_name            = "OB_WARN_OPTION_BELOW_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = WARN_OPTION_BELOW_LIMIT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The value should be no less than the limit",
 | 
						|
      .str_user_error        = "The value of \'%s\' should be no less than the value of \'%s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5266, The value should be no less than the limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5266, The value of \'%s\' should be no less than the value of \'%s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_OUTLINE = {
 | 
						|
      .error_name            = "OB_INVALID_OUTLINE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid outline",
 | 
						|
      .str_user_error        = "invalid outline ,error info:%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5267, invalid outline",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5267, invalid outline ,error info:%s"
 | 
						|
};
 | 
						|
static const _error _error_OB_REACH_MAX_CONCURRENT_NUM = {
 | 
						|
      .error_name            = "OB_REACH_MAX_CONCURRENT_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SQL reach max concurrent num",
 | 
						|
      .str_user_error        = "SQL reach max concurrent num %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5268, SQL reach max concurrent num",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5268, SQL reach max concurrent num %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OPERATION_ON_RECYCLE_OBJECT = {
 | 
						|
      .error_name            = "OB_ERR_OPERATION_ON_RECYCLE_OBJECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "can not perform DDL/DML over objects in Recycle Bin",
 | 
						|
      .str_user_error        = "can not perform DDL/DML over objects in Recycle Bin",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5269, can not perform DDL/DML over objects in Recycle Bin",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5269, can not perform DDL/DML over objects in Recycle Bin"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OBJECT_NOT_IN_RECYCLEBIN = {
 | 
						|
      .error_name            = "OB_ERR_OBJECT_NOT_IN_RECYCLEBIN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object not in RECYCLE BIN",
 | 
						|
      .str_user_error        = "object not in RECYCLE BIN",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5270, object not in RECYCLE BIN",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5270, object not in RECYCLE BIN"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CON_COUNT_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_CON_COUNT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CON_COUNT_ERROR,
 | 
						|
      .sqlstate              = "08004",
 | 
						|
      .str_error             = "Too many connections",
 | 
						|
      .str_user_error        = "Too many connections",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5271, Too many connections",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5271, Too many connections"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTLINE_CONTENT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_OUTLINE_CONTENT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Outline content already exists when added",
 | 
						|
      .str_user_error        = "Outline content '%.*s' of outline '%.*s' already exists when added",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5272, Outline content already exists when added",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5272, Outline content '%.*s' of outline '%.*s' already exists when added"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTLINE_MAX_CONCURRENT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_OUTLINE_MAX_CONCURRENT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Max concurrent already exists when added",
 | 
						|
      .str_user_error        = "Max concurrent in outline '%.*s' already exists when added",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5273, Max concurrent already exists when added",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5273, Max concurrent in outline '%.*s' already exists when added"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VALUES_IS_NOT_INT_TYPE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_VALUES_IS_NOT_INT_TYPE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VALUES_IS_NOT_INT_TYPE_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "VALUES value for partition must have type INT",
 | 
						|
      .str_user_error        = "VALUES value for partition \'%.*s\' must have type INT",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5274, VALUES value for partition must have type INT",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5274, VALUES value for partition \'%.*s\' must have type INT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_TYPE_COLUMN_VALUE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_TYPE_COLUMN_VALUE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_TYPE_COLUMN_VALUE_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition column values of incorrect type",
 | 
						|
      .str_user_error        = "Partition column values of incorrect type",
 | 
						|
      .oracle_errno          = 14019,
 | 
						|
      .oracle_str_error      = "ORA-14019: partition bound element must be one of: string, datetime or interval literal, number, or MAXVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-14019: partition bound element must be one of: string, datetime or interval literal, number, or MAXVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_COLUMN_LIST_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_COLUMN_LIST_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARTITION_COLUMN_LIST_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Inconsistency in usage of column lists for partitioning",
 | 
						|
      .str_user_error        = "Inconsistency in usage of column lists for partitioning",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5276, Inconsistency in usage of column lists for partitioning",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5276, Inconsistency in usage of column lists for partitioning"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_VALUES_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_VALUES_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_VALUES_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot have more than one value for this type of RANGE partitioning",
 | 
						|
      .str_user_error        = "Cannot have more than one value for this type of RANGE partitioning",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5277, Cannot have more than one value for this type of RANGE partitioning",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5277, Cannot have more than one value for this type of RANGE partitioning"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_VALUE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_VALUE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "This partition value with incorrect charset type",
 | 
						|
      .str_user_error        = "This partition value with incorrect charset type",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5278, This partition value with incorrect charset type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5278, This partition value with incorrect charset type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_INTERVAL_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_INTERVAL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition interval must have type INT",
 | 
						|
      .str_user_error        = "Partition interval must have type INT",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5279, Partition interval must have type INT",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5279, Partition interval must have type INT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SAME_NAME_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_SAME_NAME_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SAME_NAME_PARTITION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate partition name",
 | 
						|
      .str_user_error        = "Duplicate partition name \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5280, Duplicate partition name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5280, Duplicate partition name \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RANGE_NOT_INCREASING_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_RANGE_NOT_INCREASING_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_RANGE_NOT_INCREASING_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "VALUES LESS THAN value must be strictly increasing for each partition",
 | 
						|
      .str_user_error        = "VALUES LESS THAN value must be strictly increasing for each partition%.*s",
 | 
						|
      .oracle_errno          = 14037,
 | 
						|
      .oracle_str_error      = "ORA-14037: partition bound is too high",
 | 
						|
      .oracle_str_user_error = "ORA-14037: partition bound of partition '%.*s' is too high"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSE_PARTITION_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_PARSE_PARTITION_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARSE_ERROR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Wrong number of partitions defined, mismatch with previous setting",
 | 
						|
      .str_user_error        = "Wrong number of partitions defined, mismatch with previous setting",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5282, Wrong number of partitions defined, mismatch with previous setting",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5282, Wrong number of partitions defined, mismatch with previous setting"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF = {
 | 
						|
      .error_name            = "OB_ERR_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A PRIMARY KEY must include all columns in the table\'s partitioning function",
 | 
						|
      .str_user_error        = "A PRIMARY KEY must include all columns in the table\'s partitioning function",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5283, A PRIMARY KEY must include all columns in the table\'s partitioning function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5283, A PRIMARY KEY must include all columns in the table\'s partitioning function"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_PARTITION_FOR_GIVEN_VALUE = {
 | 
						|
      .error_name            = "OB_NO_PARTITION_FOR_GIVEN_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_PARTITION_FOR_GIVEN_VALUE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table has no partition for value",
 | 
						|
      .str_user_error        = "Table has no partition for value",
 | 
						|
      .oracle_errno          = 14400,
 | 
						|
      .oracle_str_error      = "ORA-14400: inserted partition key does not map to any partition",
 | 
						|
      .oracle_str_user_error = "ORA-14400: inserted partition key does not map to any partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_NULL_IN_VALUES_LESS_THAN = {
 | 
						|
      .error_name            = "OB_EER_NULL_IN_VALUES_LESS_THAN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NULL_IN_VALUES_LESS_THAN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not allowed to use NULL value in VALUES LESS THAN",
 | 
						|
      .str_user_error        = "Not allowed to use NULL value in VALUES LESS THAN",
 | 
						|
      .oracle_errno          = 14019,
 | 
						|
      .oracle_str_error      = "ORA-14019: partition bound element must be one of: datetime or interval literal, number, or MAXVALUE",
 | 
						|
      .oracle_str_user_error = "ORA-14019: partition bound element must be one of: datetime or interval literal, number, or MAXVALUE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_CONST_DOMAIN_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_CONST_DOMAIN_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARTITION_CONST_DOMAIN_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition constant is out of partition function domain",
 | 
						|
      .str_user_error        = "Partition constant is out of partition function domain",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5286, Partition constant is out of partition function domain",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5286, Partition constant is out of partition function domain"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_PARTITION_FUNC_FIELDS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_PARTITION_FUNC_FIELDS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too many fields in \'list of partition fields\'",
 | 
						|
      .str_user_error        = "Too many fields in \'list of partition fields\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5287, Too many fields in \'list of partition fields\'",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5287, Too many fields in \'list of partition fields\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_FT_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_BAD_FT_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_BAD_FT_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column cannot be part of FULLTEXT index",
 | 
						|
      .str_user_error        = "Column '%.*s' cannot be part of FULLTEXT index",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5288, Column cannot be part of FULLTEXT index",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5288, Column '%.*s' cannot be part of FULLTEXT index"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_KEY_DOES_NOT_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_KEY_DOES_NOT_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_KEY_DOES_NOT_EXITS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "key does not exist in table",
 | 
						|
      .str_user_error        = "Key '%.*s' doesn't exist in table '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5289, key does not exist in table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5289, Key '%.*s' doesn't exist in table '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN = {
 | 
						|
      .error_name            = "OB_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "non-default value for generated column is not allowed",
 | 
						|
      .str_user_error        = "The value specified for generated column '%.*s' in table '%.*s' is not allowed",
 | 
						|
      .oracle_errno          = 54013,
 | 
						|
      .oracle_str_error      = "ORA-54013: INSERT operation disallowed on virtual columns",
 | 
						|
      .oracle_str_user_error = "ORA-54013: INSERT operation disallowed on virtual columns '%.*s'.'%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_CTXCAT_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_BAD_CTXCAT_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The CTXCAT column must be contiguous in the index column list",
 | 
						|
      .str_user_error        = "The CTXCAT column must be contiguous in the index column list",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5291, The CTXCAT column must be contiguous in the index column list",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5291, The CTXCAT column must be contiguous in the index column list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not supported for generated columns",
 | 
						|
      .str_user_error        = "'%s' is not supported for generated columns.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5292, not supported for generated columns",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5292, '%s' is not supported for generated columns."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DEPENDENT_BY_GENERATED_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_DEPENDENT_BY_GENERATED_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DEPENDENT_BY_GENERATED_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column has a generated column dependency",
 | 
						|
      .str_user_error        = "Column '%.*s' has a generated column dependency",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5293, Column has a generated column dependency",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5293, Column '%.*s' has a generated column dependency"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_ROWS = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_ROWS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_MANY_ROWS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Result consisted of more than one row",
 | 
						|
      .str_user_error        = "Result consisted of more than one row",
 | 
						|
      .oracle_errno          = 1422,
 | 
						|
      .oracle_str_error      = "ORA-01422: exact fetch returns more than requested number of rows",
 | 
						|
      .oracle_str_user_error = "ORA-01422: exact fetch returns more than requested number of rows"
 | 
						|
};
 | 
						|
static const _error _error_OB_WRONG_FIELD_TERMINATORS = {
 | 
						|
      .error_name            = "OB_WRONG_FIELD_TERMINATORS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_FIELD_TERMINATORS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Field separator argument is not what is expected; check the manual",
 | 
						|
      .str_user_error        = "Field separator argument is not what is expected; check the manual",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5295, Field separator argument is not what is expected; check the manual",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5295, Field separator argument is not what is expected; check the manual"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_READABLE_REPLICA = {
 | 
						|
      .error_name            = "OB_NO_READABLE_REPLICA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "there has no readable replica",
 | 
						|
      .str_user_error        = "there has no readable replica",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5296, there has no readable replica",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5296, there has no readable replica"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNEXPECTED_TZ_TRANSITION = {
 | 
						|
      .error_name            = "OB_ERR_UNEXPECTED_TZ_TRANSITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unexpected time zone info transition",
 | 
						|
      .str_user_error        = "unexpected time zone info transition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5297, unexpected time zone info transition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5297, unexpected time zone info transition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYNONYM_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_SYNONYM_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "synonym exists",
 | 
						|
      .str_user_error        = "synonym '%.*s' already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5298, synonym exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5298, synonym '%.*s' already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_SYNONYM_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_SYNONYM_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "synonym not exists",
 | 
						|
      .str_user_error        = "synonym \'%.*s.%.*s\' doesn\'t exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5299, synonym not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5299, synonym \'%.*s.%.*s\' doesn\'t exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISS_ORDER_BY_EXPR = {
 | 
						|
      .error_name            = "OB_ERR_MISS_ORDER_BY_EXPR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing ORDER BY expression in the window specification",
 | 
						|
      .str_user_error        = "missing ORDER BY expression in the window specification",
 | 
						|
      .oracle_errno          = 30485,
 | 
						|
      .oracle_str_error      = "ORA-30485: missing ORDER BY expression in the window specification",
 | 
						|
      .oracle_str_user_error = "ORA-30485: missing ORDER BY expression in the window specification"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_CONST_EXPR = {
 | 
						|
      .error_name            = "OB_ERR_NOT_CONST_EXPR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The argument of the window function should be a constant for a partition",
 | 
						|
      .str_user_error        = "The argument of the window function should be a constant for a partition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5301, The argument of the window function should be a constant for a partition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5301, The argument of the window function should be a constant for a partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_MGMT_ON_NONPARTITIONED = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_MGMT_ON_NONPARTITIONED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARTITION_MGMT_ON_NONPARTITIONED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition management on a not partitioned table is not possible",
 | 
						|
      .str_user_error        = "Partition management on a not partitioned table is not possible",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5302, Partition management on a not partitioned table is not possible",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5302, Partition management on a not partitioned table is not possible"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DROP_PARTITION_NON_EXISTENT = {
 | 
						|
      .error_name            = "OB_ERR_DROP_PARTITION_NON_EXISTENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DROP_PARTITION_NON_EXISTENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Error in list of partitions to DROP",
 | 
						|
      .str_user_error        = "Error in list of partitions to DROP",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5303, Error in list of partitions to DROP",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5303, Error in list of partitions to DROP"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_MGMT_ON_TWOPART_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_MGMT_ON_TWOPART_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition management on a two-part table is not possible",
 | 
						|
      .str_user_error        = "Partition management on a two-part table is not possible",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5304, Partition management on a two-part table is not possible",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5304, Partition management on a two-part table is not possible"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_ON_RANGE_LIST_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_ON_RANGE_LIST_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ONLY_ON_RANGE_LIST_PARTITION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "can only be used on RANGE/LIST partitions",
 | 
						|
      .str_user_error        = "%s PARTITION can only be used on RANGE/LIST partitions",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5305, can only be used on RANGE/LIST partitions",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5305, %s PARTITION can only be used on RANGE/LIST partitions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DROP_LAST_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_DROP_LAST_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DROP_LAST_PARTITION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot remove all partitions, use DROP TABLE instead",
 | 
						|
      .str_user_error        = "Cannot remove all partitions, use DROP TABLE instead",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5306, Cannot remove all partitions, use DROP TABLE instead",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5306, Cannot remove all partitions, use DROP TABLE instead"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARALLEL_SERVERS_TARGET_NOT_ENOUGH = {
 | 
						|
      .error_name            = "OB_ERR_PARALLEL_SERVERS_TARGET_NOT_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not enough thread resource to execute the query. Maybe parallel_servers_target was set too low.",
 | 
						|
      .str_user_error        = "Not enough thread resource to execute the query. Require setting parallel_servers_target to a value no less than %ld for this query",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5307, Not enough thread resource to execute the query. Maybe parallel_servers_target was set too low.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5307, Not enough thread resource to execute the query. Require setting parallel_servers_target to a value no less than %ld for this query"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IGNORE_USER_HOST_NAME = {
 | 
						|
      .error_name            = "OB_ERR_IGNORE_USER_HOST_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Ignore the host name",
 | 
						|
      .str_user_error        = "Ignore the host name",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5308, Ignore the host name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5308, Ignore the host name"
 | 
						|
};
 | 
						|
static const _error _error_OB_IGNORE_SQL_IN_RESTORE = {
 | 
						|
      .error_name            = "OB_IGNORE_SQL_IN_RESTORE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Ignore sql in restore process",
 | 
						|
      .str_user_error        = "Ignore sql in restore process",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5309, Ignore sql in restore process",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5309, Ignore sql in restore process"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TEMPORARY_TABLE_WITH_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_TEMPORARY_TABLE_WITH_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_PARTITION_NO_TEMPORARY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot create temporary table with partitions",
 | 
						|
      .str_user_error        = "Cannot create temporary table with partitions",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5310, Cannot create temporary table with partitions",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5310, Cannot create temporary table with partitions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_COLUMN_ID = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_COLUMN_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid column id",
 | 
						|
      .str_user_error        = "Invalid column id for %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5311, Invalid column id",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5311, Invalid column id for %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_SYNC_DDL_DUPLICATE = {
 | 
						|
      .error_name            = "OB_SYNC_DDL_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicated ddl id",
 | 
						|
      .str_user_error        = "Duplicated ddl id '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5312, Duplicated ddl id",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5312, Duplicated ddl id '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_SYNC_DDL_ERROR = {
 | 
						|
      .error_name            = "OB_SYNC_DDL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Failed to sync ddl",
 | 
						|
      .str_user_error        = "Failed to sync ddl '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5313, Failed to sync ddl",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5313, Failed to sync ddl '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ROW_IS_REFERENCED = {
 | 
						|
      .error_name            = "OB_ERR_ROW_IS_REFERENCED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ROW_IS_REFERENCED_2,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Cannot delete or update a parent row: a foreign key constraint fails",
 | 
						|
      .str_user_error        = "Cannot delete or update a parent row: a foreign key constraint fails",
 | 
						|
      .oracle_errno          = 2292,
 | 
						|
      .oracle_str_error      = "ORA-02292: integrity constraint violated - child record found",
 | 
						|
      .oracle_str_user_error = "ORA-02292: integrity constraint violated - child record found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_REFERENCED_ROW = {
 | 
						|
      .error_name            = "OB_ERR_NO_REFERENCED_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NO_REFERENCED_ROW_2,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Cannot add or update a child row: a foreign key constraint fails",
 | 
						|
      .str_user_error        = "Cannot add or update a child row: a foreign key constraint fails",
 | 
						|
      .oracle_errno          = 2291,
 | 
						|
      .oracle_str_error      = "ORA-02291: integrity constraint violated - parent key not found",
 | 
						|
      .oracle_str_user_error = "ORA-02291: integrity constraint violated - parent key not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FUNC_RESULT_TOO_LARGE = {
 | 
						|
      .error_name            = "OB_ERR_FUNC_RESULT_TOO_LARGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_ALLOWED_PACKET_OVERFLOWED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Result of function was larger than max_allowed_packet - truncated",
 | 
						|
      .str_user_error        = "Result of %s() was larger than max_allowed_packet (%d) - truncated",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5316, Result of function was larger than max_allowed_packet - truncated",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5316, Result of %s() was larger than max_allowed_packet (%d) - truncated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_ADD_FOREIGN = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_ADD_FOREIGN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANNOT_ADD_FOREIGN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot add foreign key constraint",
 | 
						|
      .str_user_error        = "Cannot add foreign key constraint",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5317, Cannot add foreign key constraint",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5317, Cannot add foreign key constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_FK_DEF = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_FK_DEF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_FK_DEF,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect foreign key definition: Key reference and table reference don't match",
 | 
						|
      .str_user_error        = "Incorrect foreign key definition: Key reference and table reference don't match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5318, Incorrect foreign key definition: Key reference and table reference don't match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5318, Incorrect foreign key definition: Key reference and table reference don't match"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CHILD_COLUMN_LENGTH_FK = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CHILD_COLUMN_LENGTH_FK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid child column length",
 | 
						|
      .str_user_error        = "Child column \'%.*s\' data length cannot be less than parent column \'%.*s\' data length",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5319, Invalid child column length",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5319, Child column \'%.*s\' data length cannot be less than parent column \'%.*s\' data length"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_COLUMN_FK = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_COLUMN_FK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot alter foreign key column",
 | 
						|
      .str_user_error        = "\'%.*s\': used in a foreign key constraint",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5320, Cannot alter foreign key column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5320, \'%.*s\': used in a foreign key constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONNECT_BY_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_CONNECT_BY_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CONNECT BY clause required in this query block",
 | 
						|
      .str_user_error        = "CONNECT BY clause required in this query block",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5321, CONNECT BY clause required in this query block",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5321, CONNECT BY clause required in this query block"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PSEUDO_COLUMN_PLACE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PSEUDO_COLUMN_PLACE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Specified pseudocolumn, operator or function not allowed here",
 | 
						|
      .str_user_error        = "Specified pseudocolumn, operator or function not allowed here",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5322, Specified pseudocolumn, operator or function not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5322, Specified pseudocolumn, operator or function not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOCYCLE_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_NOCYCLE_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudocolumn",
 | 
						|
      .str_user_error        = "NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudocolumn",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5323, NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudocolumn",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5323, NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudocolumn"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONNECT_BY_LOOP = {
 | 
						|
      .error_name            = "OB_ERR_CONNECT_BY_LOOP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CONNECT BY loop in user data",
 | 
						|
      .str_user_error        = "CONNECT BY loop in user data",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5324, CONNECT BY loop in user data",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5324, CONNECT BY loop in user data"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SIBLINGS = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SIBLINGS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ORDER SIBLINGS BY clause not allowed here",
 | 
						|
      .str_user_error        = "ORDER SIBLINGS BY clause not allowed here",
 | 
						|
      .oracle_errno          = 30929,
 | 
						|
      .oracle_str_error      = "ORA-30929: ORDER SIBLINGS BY clause not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-30929: ORDER SIBLINGS BY clause not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SEPARATOR = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SEPARATOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "when using SYS_CONNECT_BY_PATH function, cannot have separator as part of column value",
 | 
						|
      .str_user_error        = "when using SYS_CONNECT_BY_PATH function, cannot have separator as part of column value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5326, when using SYS_CONNECT_BY_PATH function, cannot have separator as part of column value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5326, when using SYS_CONNECT_BY_PATH function, cannot have separator as part of column value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SYNONYM_NAME = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SYNONYM_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Database can not be specified in public synonym",
 | 
						|
      .str_user_error        = "Database can not be specified in public synonym",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5327, Database can not be specified in public synonym",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5327, Database can not be specified in public synonym"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LOOP_OF_SYNONYM = {
 | 
						|
      .error_name            = "OB_ERR_LOOP_OF_SYNONYM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Looping chain of synonyms",
 | 
						|
      .str_user_error        = "Looping chain of synonyms",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5328, Looping chain of synonyms",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5328, Looping chain of synonyms"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYNONYM_SAME_AS_OBJECT = {
 | 
						|
      .error_name            = "OB_ERR_SYNONYM_SAME_AS_OBJECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot create a synonym with same name as object",
 | 
						|
      .str_user_error        = "Cannot create a synonym with same name as object",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5329, Cannot create a synonym with same name as object",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5329, Cannot create a synonym with same name as object"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYNONYM_TRANSLATION_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_SYNONYM_TRANSLATION_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Synonym translation is no longer valid",
 | 
						|
      .str_user_error        = "Synonym %s translation is no longer valid",
 | 
						|
      .oracle_errno          = 980,
 | 
						|
      .oracle_str_error      = "ORA-00980: synonym translation is no longer valid",
 | 
						|
      .oracle_str_user_error = "ORA-00980: synonym %s translation is no longer valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXIST_OBJECT = {
 | 
						|
      .error_name            = "OB_ERR_EXIST_OBJECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "name is already used by an existing object",
 | 
						|
      .str_user_error        = "name is already used by an existing object",
 | 
						|
      .oracle_errno          = 955,
 | 
						|
      .oracle_str_error      = "ORA-00955: name is already used by an existing object",
 | 
						|
      .oracle_str_user_error = "ORA-00955: name is already used by an existing object"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_VALUE_FOR_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_VALUE_FOR_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ILLEGAL_VALUE_FOR_TYPE,
 | 
						|
      .sqlstate              = "22007",
 | 
						|
      .str_error             = "Illegal value found during parsing",
 | 
						|
      .str_user_error        = "Illegal %s '%.*s' value found during parsing",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5332, Illegal value found during parsing",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5332, Illegal %s '%.*s' value found during parsing"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_TOO_LONG_SET_ENUM_VALUE = {
 | 
						|
      .error_name            = "OB_ER_TOO_LONG_SET_ENUM_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_SET_ENUM_VALUE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too long enumeration/set value for column.",
 | 
						|
      .str_user_error        = "Too long enumeration/set value for column %.*s.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5333, Too long enumeration/set value for column.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5333, Too long enumeration/set value for column %.*s."
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_DUPLICATED_VALUE_IN_TYPE = {
 | 
						|
      .error_name            = "OB_ER_DUPLICATED_VALUE_IN_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUPLICATED_VALUE_IN_TYPE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column has duplicated value",
 | 
						|
      .str_user_error        = "Column '%.*s' has duplicated value '%.*s' in %s ",
 | 
						|
      .oracle_errno          = 1,
 | 
						|
      .oracle_str_error      = "ORA-00001: unique constraint violated",
 | 
						|
      .oracle_str_user_error = "ORA-00001: unique constraint violated, column '%.*s' with value '%.*s' in %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_TOO_BIG_ENUM = {
 | 
						|
      .error_name            = "OB_ER_TOO_BIG_ENUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_ENUM,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too many enumeration values for column",
 | 
						|
      .str_user_error        = "Too many enumeration values for column %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5335, Too many enumeration values for column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5335, Too many enumeration values for column %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_BIG_SET = {
 | 
						|
      .error_name            = "OB_ERR_TOO_BIG_SET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_SET,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Too many strings for column",
 | 
						|
      .str_user_error        = "Too many strings for column %.*s and SET",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5336, Too many strings for column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5336, Too many strings for column %.*s and SET"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_ROWID = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_ROWID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rowid is wrong",
 | 
						|
      .str_user_error        = "rowid is wrong",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5337, rowid is wrong",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5337, rowid is wrong"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_WINDOW_FUNCTION_PLACE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_WINDOW_FUNCTION_PLACE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Window Function not allowed here",
 | 
						|
      .str_user_error        = "Window Function not allowed here",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5338, Window Function not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5338, Window Function not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSE_PARTITION_LIST = {
 | 
						|
      .error_name            = "OB_ERR_PARSE_PARTITION_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Fail to parse list partition",
 | 
						|
      .str_user_error        = "Fail to parse list partition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5339, Fail to parse list partition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5339, Fail to parse list partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MULTIPLE_DEF_CONST_IN_LIST_PART = {
 | 
						|
      .error_name            = "OB_ERR_MULTIPLE_DEF_CONST_IN_LIST_PART",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Multiple definition of same constant in list partitioning",
 | 
						|
      .str_user_error        = "Multiple definition of same constant in list partitioning",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5340, Multiple definition of same constant in list partitioning",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5340, Multiple definition of same constant in list partitioning"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TIMEZONE_REGION_ID = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TIMEZONE_REGION_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "timezone region ID is invalid",
 | 
						|
      .str_user_error        = "timezone region ID is invalid",
 | 
						|
      .oracle_errno          = 1881,
 | 
						|
      .oracle_str_error      = "ORA-01881: timezone region ID is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-01881: timezone region ID is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_HEX_NUMBER = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_HEX_NUMBER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid hex number",
 | 
						|
      .str_user_error        = "invalid hex number",
 | 
						|
      .oracle_errno          = 1465,
 | 
						|
      .oracle_str_error      = "ORA-01465: invalid hex number",
 | 
						|
      .oracle_str_user_error = "ORA-01465: invalid hex number"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_FUNC_ARGUMENTS_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_FUNC_ARGUMENTS_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "wrong number or types of arguments in function",
 | 
						|
      .str_user_error        = "wrong number or types of arguments in call to '%.*s'",
 | 
						|
      .oracle_errno          = 6553,
 | 
						|
      .oracle_str_error      = "ORA-06553: wrong number or types of arguments in function",
 | 
						|
      .oracle_str_user_error = "ORA-06553: wrong number or types of arguments in call to '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MULTI_UPDATE_KEY_CONFLICT = {
 | 
						|
      .error_name            = "OB_ERR_MULTI_UPDATE_KEY_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MULTI_UPDATE_KEY_CONFLICT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Primary key/index key/partition key update is not allowed",
 | 
						|
      .str_user_error        = "Primary key/index key/partition key update is not allowed since the table is updated both as '%.*s' and '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5344, Primary key/index key/partition key update is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5344, Primary key/index key/partition key update is not allowed since the table is updated both as '%.*s' and '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INSUFFICIENT_PX_WORKER = {
 | 
						|
      .error_name            = "OB_ERR_INSUFFICIENT_PX_WORKER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "insufficient parallel query worker available",
 | 
						|
      .str_user_error        = "insufficient parallel query worker available",
 | 
						|
      .oracle_errno          = 12827,
 | 
						|
      .oracle_str_error      = "ORA-12827: insufficient parallel query worker available",
 | 
						|
      .oracle_str_user_error = "ORA-12827: insufficient parallel query worker available"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FOR_UPDATE_EXPR_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_FOR_UPDATE_EXPR_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "FOR UPDATE of this query expression is not allowed",
 | 
						|
      .str_user_error        = "FOR UPDATE of this query expression is not allowed",
 | 
						|
      .oracle_errno          = 1786,
 | 
						|
      .oracle_str_error      = "ORA-01786: FOR UPDATE of this query expression is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-01786: FOR UPDATE of this query expression is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WIN_FUNC_ARG_NOT_IN_PARTITION_BY = {
 | 
						|
      .error_name            = "OB_ERR_WIN_FUNC_ARG_NOT_IN_PARTITION_BY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "argument should be a function of expressions in PARTITION BY",
 | 
						|
      .str_user_error        = "argument should be a function of expressions in PARTITION BY",
 | 
						|
      .oracle_errno          = 30488,
 | 
						|
      .oracle_str_error      = "ORA-30488: argument should be a function of expressions in PARTITION BY",
 | 
						|
      .oracle_str_user_error = "ORA-30488: argument should be a function of expressions in PARTITION BY"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_STRING_IN_CONCAT = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_STRING_IN_CONCAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "result of string concatenation is too long",
 | 
						|
      .str_user_error        = "result of string concatenation is too long",
 | 
						|
      .oracle_errno          = 1489,
 | 
						|
      .oracle_str_error      = "ORA-01489: result of string concatenation is too long",
 | 
						|
      .oracle_str_user_error = "ORA-01489: result of string concatenation is too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_TIMESTAMP_LTZ_COLUMN_VALUE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_TIMESTAMP_LTZ_COLUMN_VALUE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_TYPE_COLUMN_VALUE_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition column values of incorrect type",
 | 
						|
      .str_user_error        = "Partition column values of incorrect type",
 | 
						|
      .oracle_errno          = 30078,
 | 
						|
      .oracle_str_error      = "ORA-30078: partition bound must be TIME/TIMESTAMP WITH TIME ZONE literals",
 | 
						|
      .oracle_str_user_error = "ORA-30078: partition bound must be TIME/TIMESTAMP WITH TIME ZONE literals"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPD_CAUSE_PART_CHANGE = {
 | 
						|
      .error_name            = "OB_ERR_UPD_CAUSE_PART_CHANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "updating partition key column would cause a partition change",
 | 
						|
      .str_user_error        = "updating partition key column would cause a partition change",
 | 
						|
      .oracle_errno          = 14402,
 | 
						|
      .oracle_str_error      = "ORA-14402: updating partition key column would cause a partition change",
 | 
						|
      .oracle_str_user_error = "ORA-14402: updating partition key column would cause a partition change"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TYPE_FOR_ARGUMENT = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TYPE_FOR_ARGUMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INCORRECT_TYPE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid type given for an argument",
 | 
						|
      .str_user_error        = "invalid type given for an argument",
 | 
						|
      .oracle_errno          = 30175,
 | 
						|
      .oracle_str_error      = "ORA-30175: invalid type given for an argument",
 | 
						|
      .oracle_str_user_error = "ORA-30175: invalid type given for an argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FIELD_NOT_FOUND_IN_DATETIME_OR_INTERVAL = {
 | 
						|
      .error_name            = "OB_ERR_FIELD_NOT_FOUND_IN_DATETIME_OR_INTERVAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "specified field not found in datetime or interval",
 | 
						|
      .str_user_error        = "specified field not found in datetime or interval",
 | 
						|
      .oracle_errno          = 1878,
 | 
						|
      .oracle_str_error      = "ORA-01878: specified field not found in datetime or interval",
 | 
						|
      .oracle_str_user_error = "ORA-01878: specified field not found in datetime or interval"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ADD_PART_BOUN_NOT_INC = {
 | 
						|
      .error_name            = "OB_ERR_ADD_PART_BOUN_NOT_INC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_RANGE_NOT_INCREASING_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "VALUES LESS THAN value must be strictly increasing for each partition",
 | 
						|
      .str_user_error        = "VALUES LESS THAN value must be strictly increasing for each partition",
 | 
						|
      .oracle_errno          = 14074,
 | 
						|
      .oracle_str_error      = "ORA-14074: partition bound must collate higher than that of the last partition",
 | 
						|
      .oracle_str_user_error = "ORA-14074: partition bound must collate higher than that of the last partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATA_TOO_LONG_IN_PART_CHECK = {
 | 
						|
      .error_name            = "OB_ERR_DATA_TOO_LONG_IN_PART_CHECK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DATA_TOO_LONG,
 | 
						|
      .sqlstate              = "22001",
 | 
						|
      .str_error             = "Data too long for column",
 | 
						|
      .str_user_error        = "Data too long for column",
 | 
						|
      .oracle_errno          = 14036,
 | 
						|
      .oracle_str_error      = "ORA-14036: partition bound value too large for column",
 | 
						|
      .oracle_str_user_error = "ORA-14036: partition bound value too large for column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_TYPE_COLUMN_VALUE_V2_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_TYPE_COLUMN_VALUE_V2_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_TYPE_COLUMN_VALUE_ERROR,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition column values of incorrect type",
 | 
						|
      .str_user_error        = "Partition column values of incorrect type",
 | 
						|
      .oracle_errno          = 14308,
 | 
						|
      .oracle_str_error      = "ORA-14308: partition bound element must be one of: string, datetime or interval literal, number, or NULL",
 | 
						|
      .oracle_str_user_error = "ORA-14308: partition bound element must be one of: string, datetime or interval literal, number, or NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_AGGREGATE_3COLLATIONS = {
 | 
						|
      .error_name            = "OB_CANT_AGGREGATE_3COLLATIONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_AGGREGATE_3COLLATIONS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal mix of collations",
 | 
						|
      .str_user_error        = "Illegal mix of collations",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5356, Illegal mix of collations",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5356, Illegal mix of collations"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANT_AGGREGATE_NCOLLATIONS = {
 | 
						|
      .error_name            = "OB_CANT_AGGREGATE_NCOLLATIONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_AGGREGATE_NCOLLATIONS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal mix of collations",
 | 
						|
      .str_user_error        = "Illegal mix of collations",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5357, Illegal mix of collations",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5357, Illegal mix of collations"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATED_UNIQUE_KEY = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATED_UNIQUE_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_ENTRY,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Duplicated primary key",
 | 
						|
      .str_user_error        = "Duplicate entry \'%s\' for key \'%.*s\'",
 | 
						|
      .oracle_errno          = 1452,
 | 
						|
      .oracle_str_error      = "ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found",
 | 
						|
      .oracle_str_user_error = "ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found"
 | 
						|
};
 | 
						|
static const _error _error_OB_DOUBLE_OVERFLOW = {
 | 
						|
      .error_name            = "OB_DOUBLE_OVERFLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_DATA_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "result Double value is out of range",
 | 
						|
      .str_user_error        = "result Double value is out of range",
 | 
						|
      .oracle_errno          = 1426,
 | 
						|
      .oracle_str_error      = "ORA-01426: Double value overflow",
 | 
						|
      .oracle_str_user_error = "ORA-01426: Double value overflow"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_SYS_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_SYS_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "insufficient privileges",
 | 
						|
      .str_user_error        = "insufficient privileges",
 | 
						|
      .oracle_errno          = 1031,
 | 
						|
      .oracle_str_error      = "ORA-01031: insufficient privileges",
 | 
						|
      .oracle_str_user_error = "ORA-01031: insufficient privileges"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_LOGIN_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_LOGIN_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "user lacks CREATE SESSION privilege logon denied",
 | 
						|
      .str_user_error        = "user %.*s lacks CREATE SESSION privilege; logon denied",
 | 
						|
      .oracle_errno          = 1045,
 | 
						|
      .oracle_str_error      = "ORA-01045: user lacks CREATE SESSION privilege; logon denied",
 | 
						|
      .oracle_str_user_error = "ORA-01045: user %.*s lacks CREATE SESSION privilege; logon denied"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_REVOKE_PRIVILEGES_YOU_DID_NOT_GRANT = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_REVOKE_PRIVILEGES_YOU_DID_NOT_GRANT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = OB_ERR_NO_GRANT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "No such grant defined",
 | 
						|
      .str_user_error        = "No such grant defined",
 | 
						|
      .oracle_errno          = 1927,
 | 
						|
      .oracle_str_error      = "ORA-01927: cannot REVOKE privileges you did not grant",
 | 
						|
      .oracle_str_user_error = "ORA-01927: cannot REVOKE privileges you did not grant"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SYSTEM_PRIVILEGES_NOT_GRANTED_TO = {
 | 
						|
      .error_name            = "OB_ERR_SYSTEM_PRIVILEGES_NOT_GRANTED_TO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "system privileges not granted to",
 | 
						|
      .str_user_error        = "system privileges not granted to '%.*s'",
 | 
						|
      .oracle_errno          = 1952,
 | 
						|
      .oracle_str_error      = "ORA-01952: system privileges not granted to",
 | 
						|
      .oracle_str_user_error = "ORA-01952: system privileges not granted to '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_SELECT_AND_ALTER_PRIVILEGES_ARE_VALID_FOR_SEQUENCES = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_SELECT_AND_ALTER_PRIVILEGES_ARE_VALID_FOR_SEQUENCES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "only SELECT and ALTER privileges are valid for sequences",
 | 
						|
      .str_user_error        = "only SELECT and ALTER privileges are valid for sequences",
 | 
						|
      .oracle_errno          = 2205,
 | 
						|
      .oracle_str_error      = "ORA-02205: only SELECT and ALTER privileges are valid for sequences",
 | 
						|
      .oracle_str_user_error = "ORA-02205: only SELECT and ALTER privileges are valid for sequences"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXECUTE_PRIVILEGE_NOT_ALLOWED_FOR_TABLES = {
 | 
						|
      .error_name            = "OB_ERR_EXECUTE_PRIVILEGE_NOT_ALLOWED_FOR_TABLES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "EXECUTE privilege not allowed for tables",
 | 
						|
      .str_user_error        = "EXECUTE privilege not allowed for tables",
 | 
						|
      .oracle_errno          = 2224,
 | 
						|
      .oracle_str_error      = "ORA-02224: EXECUTE privilege not allowed for tables",
 | 
						|
      .oracle_str_user_error = "ORA-02224: EXECUTE privilege not allowed for tables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_EXECUTE_AND_DEBUG_PRIVILEGES_ARE_VALID_FOR_PROCEDURES = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_EXECUTE_AND_DEBUG_PRIVILEGES_ARE_VALID_FOR_PROCEDURES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "only EXECUTE and DEBUG privileges are valid for procedures",
 | 
						|
      .str_user_error        = "only EXECUTE and DEBUG privileges are valid for procedures",
 | 
						|
      .oracle_errno          = 2225,
 | 
						|
      .oracle_str_error      = "ORA-02225: only EXECUTE and DEBUG privileges are valid for procedures",
 | 
						|
      .oracle_str_user_error = "ORA-02225: only EXECUTE and DEBUG privileges are valid for procedures"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_EXECUTE_DEBUG_AND_UNDER_PRIVILEGES_ARE_VALID_FOR_TYPES = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_EXECUTE_DEBUG_AND_UNDER_PRIVILEGES_ARE_VALID_FOR_TYPES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "only EXECUTE, DEBUG, and UNDER privileges are valid for types",
 | 
						|
      .str_user_error        = "only EXECUTE, DEBUG, and UNDER privileges are valid for types",
 | 
						|
      .oracle_errno          = 2305,
 | 
						|
      .oracle_str_error      = "ORA-02305: only EXECUTE, DEBUG, and UNDER privileges are valid for types",
 | 
						|
      .oracle_str_user_error = "ORA-02305: only EXECUTE, DEBUG, and UNDER privileges are valid for types"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ADMIN_OPTION_NOT_GRANTED_FOR_ROLE = {
 | 
						|
      .error_name            = "OB_ERR_ADMIN_OPTION_NOT_GRANTED_FOR_ROLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ADMIN option not granted for role",
 | 
						|
      .str_user_error        = "ADMIN option not granted for role '%.*s'",
 | 
						|
      .oracle_errno          = 1932,
 | 
						|
      .oracle_str_error      = "ORA-01932: ADMIN option not granted for role",
 | 
						|
      .oracle_str_user_error = "ORA-01932: ADMIN option not granted for role '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_OR_ROLE_DOES_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_USER_OR_ROLE_DOES_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "user or role does not exist",
 | 
						|
      .str_user_error        = "user or role '%.*s' does not exist",
 | 
						|
      .oracle_errno          = 1917,
 | 
						|
      .oracle_str_error      = "ORA-01917: user or role does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01917: user or role '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_ON_KEYWORD = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_ON_KEYWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing ON keyword",
 | 
						|
      .str_user_error        = "missing ON keyword",
 | 
						|
      .oracle_errno          = 969,
 | 
						|
      .oracle_str_error      = "ORA-00969: missing ON keyword",
 | 
						|
      .oracle_str_user_error = "ORA-00969: missing ON keyword"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_GRANT_OPTION = {
 | 
						|
      .error_name            = "OB_ERR_NO_GRANT_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "grant option does not exists",
 | 
						|
      .str_user_error        = "grant option does not exist for '%.*s.%.*s'",
 | 
						|
      .oracle_errno          = 1720,
 | 
						|
      .oracle_str_error      = "ORA-01720: grant option does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01720: grant option does not exist for '%.*s.%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_INDEX_AND_EXECUTE_NOT_ALLOWED_FOR_VIEWS = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_INDEX_AND_EXECUTE_NOT_ALLOWED_FOR_VIEWS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ALTER, INDEX and EXECUTE not allowed for views",
 | 
						|
      .str_user_error        = "ALTER, INDEX and EXECUTE not allowed for views",
 | 
						|
      .oracle_errno          = 2204,
 | 
						|
      .oracle_str_error      = "ORA-02204: ALTER, INDEX and EXECUTE not allowed for views",
 | 
						|
      .oracle_str_user_error = "ORA-02204: ALTER, INDEX and EXECUTE not allowed for views"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CIRCULAR_ROLE_GRANT_DETECTED = {
 | 
						|
      .error_name            = "OB_ERR_CIRCULAR_ROLE_GRANT_DETECTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "circular role grant detected",
 | 
						|
      .str_user_error        = "circular role grant detected",
 | 
						|
      .oracle_errno          = 1934,
 | 
						|
      .oracle_str_error      = "ORA-01934: circular role grant detected",
 | 
						|
      .oracle_str_user_error = "ORA-01934: circular role grant detected"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PRIVILEGE_ON_DIRECTORIES = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PRIVILEGE_ON_DIRECTORIES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid privilege on directories",
 | 
						|
      .str_user_error        = "invalid privilege on directories",
 | 
						|
      .oracle_errno          = 22928,
 | 
						|
      .oracle_str_error      = "ORA-22928: invalid privilege on directories",
 | 
						|
      .oracle_str_user_error = "ORA-22928: invalid privilege on directories"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DIRECTORY_ACCESS_DENIED = {
 | 
						|
      .error_name            = "OB_ERR_DIRECTORY_ACCESS_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "directory access denied",
 | 
						|
      .str_user_error        = "directory access denied",
 | 
						|
      .oracle_errno          = 29289,
 | 
						|
      .oracle_str_error      = "ORA-29289: directory access denied",
 | 
						|
      .oracle_str_user_error = "ORA-29289: directory access denied"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_OR_INVALID_ROLE_NAME = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_OR_INVALID_ROLE_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing or invalid role name",
 | 
						|
      .str_user_error        = "missing or invalid role name",
 | 
						|
      .oracle_errno          = 1937,
 | 
						|
      .oracle_str_error      = "ORA-01937: missing or invalid role name",
 | 
						|
      .oracle_str_user_error = "ORA-01937: missing or invalid role name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ROLE_NOT_GRANTED_OR_DOES_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_ROLE_NOT_GRANTED_OR_DOES_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "role not granted or does not exist",
 | 
						|
      .str_user_error        = "role '%.*s' not granted or does not exist",
 | 
						|
      .oracle_errno          = 1924,
 | 
						|
      .oracle_str_error      = "ORA-01924: role not granted or does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01924: role '%.*s' not granted or does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DEFAULT_ROLE_NOT_GRANTED_TO_USER = {
 | 
						|
      .error_name            = "OB_ERR_DEFAULT_ROLE_NOT_GRANTED_TO_USER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DEFAULT ROLE not granted to user",
 | 
						|
      .str_user_error        = "DEFAULT ROLE '%.*s' not granted to user",
 | 
						|
      .oracle_errno          = 1955,
 | 
						|
      .oracle_str_error      = "ORA-01955: DEFAULT ROLE not granted to user",
 | 
						|
      .oracle_str_user_error = "ORA-01955: DEFAULT ROLE '%.*s' not granted to user"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ROLE_NOT_GRANTED_TO = {
 | 
						|
      .error_name            = "OB_ERR_ROLE_NOT_GRANTED_TO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ROLE not granted to",
 | 
						|
      .str_user_error        = "ROLE '%.*s' not granted to '%.*s'",
 | 
						|
      .oracle_errno          = 1951,
 | 
						|
      .oracle_str_error      = "ORA-01951: ROLE not granted to",
 | 
						|
      .oracle_str_user_error = "ORA-01951: ROLE '%.*s' not granted to '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_GRANT_TO_A_ROLE_WITH_GRANT_OPTION = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_GRANT_TO_A_ROLE_WITH_GRANT_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot GRANT to a role WITH GRANT OPTION",
 | 
						|
      .str_user_error        = "cannot GRANT to a role WITH GRANT OPTION",
 | 
						|
      .oracle_errno          = 1926,
 | 
						|
      .oracle_str_error      = "ORA-01926: cannot GRANT to a role WITH GRANT OPTION",
 | 
						|
      .oracle_str_user_error = "ORA-01926: cannot GRANT to a role WITH GRANT OPTION"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_USERNAME_IN_LIST = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_USERNAME_IN_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate username in list",
 | 
						|
      .str_user_error        = "duplicate username in list",
 | 
						|
      .oracle_errno          = 1700,
 | 
						|
      .oracle_str_error      = "ORA-01700: duplicate username in list",
 | 
						|
      .oracle_str_user_error = "ORA-01700: duplicate username in list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_GRANT_STRING_TO_A_ROLE = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_GRANT_STRING_TO_A_ROLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot grant string to a role",
 | 
						|
      .str_user_error        = "cannot grant %.*s to a role",
 | 
						|
      .oracle_errno          = 1931,
 | 
						|
      .oracle_str_error      = "ORA-01931: cannot grant string to a role",
 | 
						|
      .oracle_str_user_error = "ORA-01931: cannot grant %.*s to a role"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CASCADE_CONSTRAINTS_MUST_BE_SPECIFIED_TO_PERFORM_THIS_REVOKE = {
 | 
						|
      .error_name            = "OB_ERR_CASCADE_CONSTRAINTS_MUST_BE_SPECIFIED_TO_PERFORM_THIS_REVOKE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CASCADE CONSTRAINTS must be specified to perform this revoke",
 | 
						|
      .str_user_error        = "CASCADE CONSTRAINTS must be specified to perform this revoke",
 | 
						|
      .oracle_errno          = 1981,
 | 
						|
      .oracle_str_error      = "ORA-01981: CASCADE CONSTRAINTS must be specified to perform this revoke",
 | 
						|
      .oracle_str_user_error = "ORA-01981: CASCADE CONSTRAINTS must be specified to perform this revoke"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_YOU_MAY_NOT_REVOKE_PRIVILEGES_FROM_YOURSELF = {
 | 
						|
      .error_name            = "OB_ERR_YOU_MAY_NOT_REVOKE_PRIVILEGES_FROM_YOURSELF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "you may not GRANT/REVOKE privileges to/from yourself",
 | 
						|
      .str_user_error        = "you may not GRANT/REVOKE privileges to/from yourself",
 | 
						|
      .oracle_errno          = 1749,
 | 
						|
      .oracle_str_error      = "ORA-01749: you may not GRANT/REVOKE privileges to/from yourself",
 | 
						|
      .oracle_str_user_error = "ORA-01749: you may not GRANT/REVOKE privileges to/from yourself"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISS_ERR_LOG_MANDATORY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_MISS_ERR_LOG_MANDATORY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "miss mandatory column of error log table",
 | 
						|
      .str_user_error        = "miss mandatory column %.*s of error log table",
 | 
						|
      .oracle_errno          = 38900,
 | 
						|
      .oracle_str_error      = "ORA-38900: miss mandatory column of error log table",
 | 
						|
      .oracle_str_user_error = "ORA-38900: miss mandatory column %.*s of error log table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OBJECT_STRING_DOES_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_OBJECT_STRING_DOES_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object string does not exist",
 | 
						|
      .str_user_error        = "object %.*s does not exist",
 | 
						|
      .oracle_errno          = 4043,
 | 
						|
      .oracle_str_error      = "ORA-04043: object string does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-04043: object %.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESULTANT_DATA_TYPE_OF_VIRTUAL_COLUMN_IS_NOT_SUPPORTED = {
 | 
						|
      .error_name            = "OB_ERR_RESULTANT_DATA_TYPE_OF_VIRTUAL_COLUMN_IS_NOT_SUPPORTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "resultant data type of virtual column is not supported",
 | 
						|
      .str_user_error        = "resultant data type of virtual column is not supported",
 | 
						|
      .oracle_errno          = 54004,
 | 
						|
      .oracle_str_error      = "ORA-54004: resultant data type of virtual column is not supported",
 | 
						|
      .oracle_str_user_error = "ORA-54004: resultant data type of virtual column is not supported"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GET_STACKED_DIAGNOSTICS = {
 | 
						|
      .error_name            = "OB_ERR_GET_STACKED_DIAGNOSTICS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_GET_STACKED_DIAGNOSTICS_INACTIVE,
 | 
						|
      .sqlstate              = "0Z002",
 | 
						|
      .str_error             = "GET STACKED DIAGNOSTICS when handler not active",
 | 
						|
      .str_user_error        = "GET STACKED DIAGNOSTICS when handler not active",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5402, GET STACKED DIAGNOSTICS when handler not active",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5402, GET STACKED DIAGNOSTICS when handler not active"
 | 
						|
};
 | 
						|
static const _error _error_OB_DDL_SCHEMA_VERSION_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_DDL_SCHEMA_VERSION_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ddl schema version not match",
 | 
						|
      .str_user_error        = "ddl schema version not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5403, ddl schema version not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5403, ddl schema version not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_GROUP_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_GROUP_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_FIELDNAME,
 | 
						|
      .sqlstate              = "42S21",
 | 
						|
      .str_error             = "Duplicate column group name",
 | 
						|
      .str_user_error        = "Duplicate column group name '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5404, Duplicate column group name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5404, Duplicate column group name '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_TEXT = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_TEXT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_TEXT,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "Invalid JSON text.",
 | 
						|
      .str_user_error        = "Invalid JSON text.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid JSON text.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid JSON text."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_TEXT_IN_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_TEXT_IN_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_TEXT_IN_PARAM,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "Invalid JSON text in argument.",
 | 
						|
      .str_user_error        = "Invalid JSON text in argument.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid JSON text in argument.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid JSON text in argument."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_BINARY_DATA = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_BINARY_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_BINARY_DATA,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "The JSON binary value contains invalid data.",
 | 
						|
      .str_user_error        = "The JSON binary value contains invalid data.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: The JSON binary value contains invalid data.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: The JSON binary value contains invalid data."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_PATH = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_PATH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_PATH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid JSON path expression.",
 | 
						|
      .str_user_error        = "Invalid JSON path expression.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid JSON path expression.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid JSON path expression."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_CHARSET = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_CHARSET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_CHARSET,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "Cannot create a JSON value from a string.",
 | 
						|
      .str_user_error        = "Cannot create a JSON value from a string.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Cannot create a JSON value from a string.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Cannot create a JSON value from a string."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_CHARSET_IN_FUNCTION = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_CHARSET_IN_FUNCTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_CHARSET_IN_FUNCTION,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "Invalid JSON character data provided to function.",
 | 
						|
      .str_user_error        = "Invalid JSON character data provided to function.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid JSON character data provided to function.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid JSON character data provided to function."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TYPE_FOR_JSON = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TYPE_FOR_JSON",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_TYPE_FOR_JSON,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "Invalid data type for JSON data in argument %u to function %s; a JSON string or JSON type is required.",
 | 
						|
      .str_user_error        = "Invalid data type for JSON data in argument %u to function %s; a JSON string or JSON type is required.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid data type for JSON data in argument %u to function %s; a JSON string or JSON type is required.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid data type for JSON data in argument %u to function %s; a JSON string or JSON type is required."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CAST_TO_JSON = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CAST_TO_JSON",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_CAST_TO_JSON,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "Cannot CAST value to JSON.",
 | 
						|
      .str_user_error        = "Cannot CAST value to JSON.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Cannot CAST value to JSON.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Cannot CAST value to JSON."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_PATH_CHARSET = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_PATH_CHARSET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_PATH_CHARSET,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "A path expression must be encoded in the utf8 character set.",
 | 
						|
      .str_user_error        = "A path expression must be encoded in the utf8 character set.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: A path expression must be encoded in the utf8 character set.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: A path expression must be encoded in the utf8 character set."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_PATH_WILDCARD = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_PATH_WILDCARD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_PATH_WILDCARD,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "In this situation, path expressions may not contain the * and ** tokens.",
 | 
						|
      .str_user_error        = "In this situation, path expressions may not contain the * and ** tokens.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: In this situation, path expressions may not contain the * and ** tokens.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: In this situation, path expressions may not contain the * and ** tokens."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_VALUE_TOO_BIG = {
 | 
						|
      .error_name            = "OB_ERR_JSON_VALUE_TOO_BIG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_VALUE_TOO_BIG,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "The JSON value is too big to be stored in a JSON column.",
 | 
						|
      .str_user_error        = "The JSON value is too big to be stored in a JSON column.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: The JSON value is too big to be stored in a JSON column.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: The JSON value is too big to be stored in a JSON column."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_KEY_TOO_BIG = {
 | 
						|
      .error_name            = "OB_ERR_JSON_KEY_TOO_BIG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_KEY_TOO_BIG,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "The JSON object contains a key name that is too long.",
 | 
						|
      .str_user_error        = "The JSON object contains a key name that is too long.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: The JSON object contains a key name that is too long.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: The JSON object contains a key name that is too long."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_USED_AS_KEY = {
 | 
						|
      .error_name            = "OB_ERR_JSON_USED_AS_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_USED_AS_KEY,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "JSON column cannot be used in key specification.",
 | 
						|
      .str_user_error        = "JSON column '%.*s' cannot be used in key specification.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: JSON column cannot be used in key specification.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: JSON column '%.*s' cannot be used in key specification."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_VACUOUS_PATH = {
 | 
						|
      .error_name            = "OB_ERR_JSON_VACUOUS_PATH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_VACUOUS_PATH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "The path expression is not allowed in this context.",
 | 
						|
      .str_user_error        = "The path expression is not allowed in this context.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: The path expression is not allowed in this context.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: The path expression is not allowed in this context."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_BAD_ONE_OR_ALL_ARG = {
 | 
						|
      .error_name            = "OB_ERR_JSON_BAD_ONE_OR_ALL_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_BAD_ONE_OR_ALL_ARG,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "The oneOrAll argument may take these values: \'one\' or \'all\'.",
 | 
						|
      .str_user_error        = "The oneOrAll argument may take these values: \'one\' or \'all\'.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: The oneOrAll argument may take these values: \'one\' or \'all\'.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: The oneOrAll argument may take these values: \'one\' or \'all\'."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NUMERIC_JSON_VALUE_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_NUMERIC_JSON_VALUE_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NUMERIC_JSON_VALUE_OUT_OF_RANGE,
 | 
						|
      .sqlstate              = "22003",
 | 
						|
      .str_error             = "Out of range JSON value for CAST",
 | 
						|
      .str_user_error        = "Out of range JSON value for CAST",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Out of range JSON value for CAST",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Out of range JSON value for CAST"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_VALUE_FOR_CAST = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_VALUE_FOR_CAST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_VALUE_FOR_CAST,
 | 
						|
      .sqlstate              = "22018",
 | 
						|
      .str_error             = "Invalid JSON value for CAST",
 | 
						|
      .str_user_error        = "Invalid JSON value for CAST",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid JSON value for CAST",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid JSON value for CAST"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_OUT_OF_DEPTH = {
 | 
						|
      .error_name            = "OB_ERR_JSON_OUT_OF_DEPTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_DOCUMENT_TOO_DEEP,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "The JSON document exceeds the maximum depth.",
 | 
						|
      .str_user_error        = "The JSON document exceeds the maximum depth.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: The JSON document exceeds the maximum depth.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: The JSON document exceeds the maximum depth."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JSON_DOCUMENT_NULL_KEY = {
 | 
						|
      .error_name            = "OB_ERR_JSON_DOCUMENT_NULL_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_JSON_DOCUMENT_NULL_KEY,
 | 
						|
      .sqlstate              = "22032",
 | 
						|
      .str_error             = "JSON documents may not contain NULL member names.",
 | 
						|
      .str_user_error        = "JSON documents may not contain NULL member names.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: JSON documents may not contain NULL member names.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: JSON documents may not contain NULL member names."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BLOB_CANT_HAVE_DEFAULT = {
 | 
						|
      .error_name            = "OB_ERR_BLOB_CANT_HAVE_DEFAULT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_BLOB_CANT_HAVE_DEFAULT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "BLOB, TEXT, GEOMETRY or JSON column can't have a default value",
 | 
						|
      .str_user_error        = "BLOB, TEXT, GEOMETRY or JSON column '%.*s' can't have a default value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: Invalid default value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Invalid default value for \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JSON_PATH_ARRAY_CELL = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JSON_PATH_ARRAY_CELL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_JSON_PATH_ARRAY_CELL,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "A path expression is not a path to a cell in an array",
 | 
						|
      .str_user_error        = "A path expression is not a path to a cell in an array",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: A path expression is not a path to a cell in an array",
 | 
						|
      .oracle_str_user_error = "ORA-00600: A path expression is not a path to a cell in an array"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_JSON_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_JSON_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MISSING_JSON_VALUE,
 | 
						|
      .sqlstate              = "22035",
 | 
						|
      .str_error             = "No value was found by '%.*s' on the specified path.",
 | 
						|
      .str_user_error        = "No value was found by '%.192s' on the specified path.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: No value was found by '%.192s' on the specified path.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: No value was found by '%.192s' on the specified path."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MULTIPLE_JSON_VALUES = {
 | 
						|
      .error_name            = "OB_ERR_MULTIPLE_JSON_VALUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MULTIPLE_JSON_VALUES,
 | 
						|
      .sqlstate              = "22034",
 | 
						|
      .str_error             = "More than one value was found by '%.*s' on the specified path.",
 | 
						|
      .str_user_error        = "More than one value was found by '%.192s' on the specified path.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: More than one value was found by '%.192s' on the specified path.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: More than one value was found by '%.192s' on the specified path."
 | 
						|
};
 | 
						|
static const _error _error_OB_SQL_RETRY_SPM = {
 | 
						|
      .error_name            = "OB_SQL_RETRY_SPM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "retry sql due to spm",
 | 
						|
      .str_user_error        = "retry sql due to spm",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5434, retry sql due to spm",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5434, retry sql due to spm"
 | 
						|
};
 | 
						|
static const _error _error_OB_OUTLINE_NOT_REPRODUCIBLE = {
 | 
						|
      .error_name            = "OB_OUTLINE_NOT_REPRODUCIBLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "outline not reproducible",
 | 
						|
      .str_user_error        = "outline not reproducible",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5435, outline not reproducible",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5435, outline not reproducible"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_TIMESTAMP_TO_SCN = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_TIMESTAMP_TO_SCN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for timestamp_to_scn()",
 | 
						|
      .str_user_error        = " TIMESTAMP_TO_SCN expected timestamp argument",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5436, Invalid argument for timestamp_to_scn()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5436,  TIMESTAMP_TO_SCN expected timestamp argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ARGUMENT_FOR_SCN_TO_TIMESTAMP = {
 | 
						|
      .error_name            = "OB_INVALID_ARGUMENT_FOR_SCN_TO_TIMESTAMP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Invalid argument for scn_to_timestamp()",
 | 
						|
      .str_user_error        = "SCN_TO_TIMESTAMP expected a interger number as nsec argument",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5437, Invalid argument for scn_to_timestamp()",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5437, SCN_TO_TIMESTAMP expected a interger number as nsec argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_WINDOW_NO_CHILD_PARTITIONING = {
 | 
						|
      .error_name            = "OB_EER_WINDOW_NO_CHILD_PARTITIONING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WINDOW_NO_CHILD_PARTITIONING,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Named window cann't be modified by another partitioning property",
 | 
						|
      .str_user_error        = "A window which depends on another cannot define partitioning",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5438, Named window cann't be modified by another partitioning property",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5438, A window which depends on another cannot define partitioning"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_WINDOW_NO_INHERIT_FRAME = {
 | 
						|
      .error_name            = "OB_EER_WINDOW_NO_INHERIT_FRAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WINDOW_NO_INHERIT_FRAME,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Named window cann't be modified by another framing property",
 | 
						|
      .str_user_error        = "Window '%.*s' has a frame definition, so cannot be referenced by another window",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5439, Named window cann't be modified by another framing property",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5439, Window '%.*s' has a frame definition, so cannot be referenced by another window"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_WINDOW_NO_REDEFINE_ORDER_BY = {
 | 
						|
      .error_name            = "OB_EER_WINDOW_NO_REDEFINE_ORDER_BY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WINDOW_NO_REDEFINE_ORDER_BY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Named window cann't be modified by another ordering property",
 | 
						|
      .str_user_error        = "Window '%.*s' cannot inherit '%.*s' since both contain an ORDER BY clause",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5440, Named window cann't be modified by another ordering property",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5440, Window '%.*s' cannot inherit '%.*s' since both contain an ORDER BY clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_ALREADY_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_SP_ALREADY_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_ALREADY_EXISTS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "procedure/function already exists",
 | 
						|
      .str_user_error        = "%s %.*s already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5541, procedure/function already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5541, %s %.*s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DOES_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_SP_DOES_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DOES_NOT_EXIST,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "procedure/function does not exist",
 | 
						|
      .str_user_error        = "%s %.*s.%.*s does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5542, procedure/function does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5542, %s %.*s.%.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_UNDECLARED_VAR = {
 | 
						|
      .error_name            = "OB_ERR_SP_UNDECLARED_VAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_UNDECLARED_VAR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Undeclared variable",
 | 
						|
      .str_user_error        = "Undeclared variable: %.*s",
 | 
						|
      .oracle_errno          = 201,
 | 
						|
      .oracle_str_error      = "PLS-00201: identifier must be declared",
 | 
						|
      .oracle_str_user_error = "PLS-00201: identifier '%.*s' must be declared"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_UNDECLARED_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_SP_UNDECLARED_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_UNDECLARED_VAR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Undeclared type",
 | 
						|
      .str_user_error        = "Undeclared type: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5544, Undeclared type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5544, Undeclared type: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_COND_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_SP_COND_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_COND_MISMATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Undefined CONDITION",
 | 
						|
      .str_user_error        = "Undefined CONDITION: %.*s",
 | 
						|
      .oracle_errno          = 485,
 | 
						|
      .oracle_str_error      = "PLS-00485: Undefined CONDITION",
 | 
						|
      .oracle_str_user_error = "PLS-00485: in exception handler, '%.*s' must be an exception name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_LILABEL_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_SP_LILABEL_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_LILABEL_MISMATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "no matching label",
 | 
						|
      .str_user_error        = "no matching label: %.*s",
 | 
						|
      .oracle_errno          = 201,
 | 
						|
      .oracle_str_error      = "PLS-00201: identifier must be declared",
 | 
						|
      .oracle_str_user_error = "PLS-00201: identifier '%.*s' must be declared"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_CURSOR_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_SP_CURSOR_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_CURSOR_MISMATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Undefined CURSOR",
 | 
						|
      .str_user_error        = "Undefined CURSOR: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5547, Undefined CURSOR",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5547, Undefined CURSOR: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_PARAM,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate parameter",
 | 
						|
      .str_user_error        = "Duplicate parameter: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5548, Duplicate parameter",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5548, Duplicate parameter: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_VAR = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_VAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_VAR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate variable",
 | 
						|
      .str_user_error        = "Duplicate variable: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5549, Duplicate variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5549, Duplicate variable: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_PARAM,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate type",
 | 
						|
      .str_user_error        = "Duplicate type: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5550, Duplicate type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5550, Duplicate type: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_CONDITION = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_CONDITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_COND,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate condition",
 | 
						|
      .str_user_error        = "Duplicate condition: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5551, Duplicate condition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5551, Duplicate condition: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_LABEL = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_LABEL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_PARAM,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate label",
 | 
						|
      .str_user_error        = "Duplicate label: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5552, Duplicate label",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5552, Duplicate label: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_CURSOR = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_CURSOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_CURS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate cursor",
 | 
						|
      .str_user_error        = "Duplicate cursor: %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5553, Duplicate cursor",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5553, Duplicate cursor: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_INVALID_FETCH_ARG = {
 | 
						|
      .error_name            = "OB_ERR_SP_INVALID_FETCH_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_WRONG_NO_OF_FETCH_ARGS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect number of FETCH variables",
 | 
						|
      .str_user_error        = "Incorrect number of FETCH variables",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5554, Incorrect number of FETCH variables",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5554, Incorrect number of FETCH variables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_WRONG_ARG_NUM = {
 | 
						|
      .error_name            = "OB_ERR_SP_WRONG_ARG_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_WRONG_NO_OF_ARGS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect number of arguments",
 | 
						|
      .str_user_error        = "Incorrect number of arguments for %s %s; expected %u, got %u",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5555, Incorrect number of arguments",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5555, Incorrect number of arguments for %s %s; expected %u, got %u"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_UNHANDLED_EXCEPTION = {
 | 
						|
      .error_name            = "OB_ERR_SP_UNHANDLED_EXCEPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SIGNAL_EXCEPTION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unhandled exception has occurred in PL",
 | 
						|
      .str_user_error        = "Unhandled user-defined exception condition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5556, Unhandled exception has occurred in PL",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5556, Unhandled user-defined exception condition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_BAD_CONDITION_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_SP_BAD_CONDITION_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SIGNAL_BAD_CONDITION_TYPE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SIGNAL/RESIGNAL can only use a CONDITION defined with SQLSTATE",
 | 
						|
      .str_user_error        = "SIGNAL/RESIGNAL can only use a CONDITION defined with SQLSTATE",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5557, SIGNAL/RESIGNAL can only use a CONDITION defined with SQLSTATE",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5557, SIGNAL/RESIGNAL can only use a CONDITION defined with SQLSTATE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PACKAGE_ALREADY_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_PACKAGE_ALREADY_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "package already exists",
 | 
						|
      .str_user_error        = "%s \'%.*s.%.*s\' already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5558, package already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5558, %s \'%.*s.%.*s\' already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PACKAGE_DOSE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_PACKAGE_DOSE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "package does not exist",
 | 
						|
      .str_user_error        = "%s \'%.*s.%.*s\' does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5559, package does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5559, %s \'%.*s.%.*s\' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_UNKNOWN_STMT_HANDLER = {
 | 
						|
      .error_name            = "OB_EER_UNKNOWN_STMT_HANDLER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNKNOWN_STMT_HANDLER,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown prepared statement handle",
 | 
						|
      .str_user_error        = "Unknown prepared statement handle",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5560, Unknown prepared statement handle",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5560, Unknown prepared statement handle"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_WINDOW_FUNC_USE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_WINDOW_FUNC_USE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid use of window function",
 | 
						|
      .str_user_error        = "Invalid use of window function",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5561, Invalid use of window function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5561, Invalid use of window function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONSTRAINT_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_CONSTRAINT_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate constraint name",
 | 
						|
      .str_user_error        = "Duplicate constraint name '%.*s'",
 | 
						|
      .oracle_errno          = 1,
 | 
						|
      .oracle_str_error      = "ORA-00001: unique constraint violated",
 | 
						|
      .oracle_str_user_error = "ORA-00001: unique constraint (%.*s) violated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONTRAINT_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_CONTRAINT_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Constraint not found",
 | 
						|
      .str_user_error        = "Constraint not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5563, Constraint not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5563, Constraint not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_TABLE_ALTER_DUPLICATED_INDEX = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_TABLE_ALTER_DUPLICATED_INDEX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate alter index operations",
 | 
						|
      .str_user_error        = "Duplicate alter index operations on column \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5564, Duplicate alter index operations",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5564, Duplicate alter index operations on column \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_EER_INVALID_ARGUMENT_FOR_LOGARITHM = {
 | 
						|
      .error_name            = "OB_EER_INVALID_ARGUMENT_FOR_LOGARITHM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_ARGUMENT_FOR_LOGARITHM,
 | 
						|
      .sqlstate              = "2201E",
 | 
						|
      .str_error             = "Invalid argument for logarithm",
 | 
						|
      .str_user_error        = "Invalid argument for logarithm",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5565, Invalid argument for logarithm",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5565, Invalid argument for logarithm"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REORGANIZE_OUTSIDE_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_REORGANIZE_OUTSIDE_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_REORG_OUTSIDE_RANGE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range",
 | 
						|
      .str_user_error        = "Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5566, Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5566, Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_RECURSION_LIMIT = {
 | 
						|
      .error_name            = "OB_ER_SP_RECURSION_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_RECURSION_LIMIT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Recursive limit was exceeded",
 | 
						|
      .str_user_error        = "Recursive limit %ld (as set by the max_sp_recursion_depth variable) was exceeded for routine",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5567, Recursive limit was exceeded",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5567, Recursive limit %ld (as set by the max_sp_recursion_depth variable) was exceeded for routine"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_UNSUPPORTED_PS = {
 | 
						|
      .error_name            = "OB_ER_UNSUPPORTED_PS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UNSUPPORTED_PS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "This command is not supported in the prepared statement protocol yet",
 | 
						|
      .str_user_error        = "This command is not supported in the prepared statement protocol yet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5568, This command is not supported in the prepared statement protocol yet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5568, This command is not supported in the prepared statement protocol yet"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG = {
 | 
						|
      .error_name            = "OB_ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG,
 | 
						|
      .sqlstate              = "0A000",
 | 
						|
      .str_error             = "stmt is not allowed in stored function or trigger",
 | 
						|
      .str_user_error        = "%s is not allowed in stored function or trigger",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5569, stmt is not allowed in stored function or trigger",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5569, %s is not allowed in stored function or trigger"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_NO_RECURSION = {
 | 
						|
      .error_name            = "OB_ER_SP_NO_RECURSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_NO_RECURSION,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Recursive stored functions are not allowed.",
 | 
						|
      .str_user_error        = "Recursive stored functions are not allowed.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5570, Recursive stored functions are not allowed.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5570, Recursive stored functions are not allowed."
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_CASE_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ER_SP_CASE_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_CASE_NOT_FOUND,
 | 
						|
      .sqlstate              = "20000",
 | 
						|
      .str_error             = "Case not found for CASE statement",
 | 
						|
      .str_user_error        = "Case not found for CASE statement",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5571, Case not found for CASE statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5571, Case not found for CASE statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SPLIT_COUNT = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SPLIT_COUNT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a partition may be split into exactly two new partitions",
 | 
						|
      .str_user_error        = "a partition may be split into exactly two new partitions",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5572, a partition may be split into exactly two new partitions",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5572, a partition may be split into exactly two new partitions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SPLIT_GRAMMAR = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SPLIT_GRAMMAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "this physical attribute may not be specified for a table partition",
 | 
						|
      .str_user_error        = "this physical attribute may not be specified for a table partition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5573, this physical attribute may not be specified for a table partition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5573, this physical attribute may not be specified for a table partition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISS_VALUES = {
 | 
						|
      .error_name            = "OB_ERR_MISS_VALUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing VALUES keyword",
 | 
						|
      .str_user_error        = "missing VALUES keyword",
 | 
						|
      .oracle_errno          = 926,
 | 
						|
      .oracle_str_error      = "ORA-00926: missing VALUES keyword",
 | 
						|
      .oracle_str_user_error = "ORA-00926: missing VALUES keyword"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISS_AT_VALUES = {
 | 
						|
      .error_name            = "OB_ERR_MISS_AT_VALUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing AT or VALUES keyword",
 | 
						|
      .str_user_error        = "missing AT or VALUES keyword",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5575, missing AT or VALUES keyword",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5575, missing AT or VALUES keyword"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG = {
 | 
						|
      .error_name            = "OB_ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Explicit or implicit commit is not allowed in stored function or trigger.",
 | 
						|
      .str_user_error        = "Explicit or implicit commit is not allowed in stored function or trigger.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5576, Explicit or implicit commit is not allowed in stored function or trigger.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5576, Explicit or implicit commit is not allowed in stored function or trigger."
 | 
						|
};
 | 
						|
static const _error _error_OB_PC_GET_LOCATION_ERROR = {
 | 
						|
      .error_name            = "OB_PC_GET_LOCATION_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Plan cache get location failed",
 | 
						|
      .str_user_error        = "Plan cache get location failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5577, Plan cache get location failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5577, Plan cache get location failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_PC_LOCK_CONFLICT = {
 | 
						|
      .error_name            = "OB_PC_LOCK_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Plan cache lock conflict",
 | 
						|
      .str_user_error        = "Plan cache lock conflict",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5578, Plan cache lock conflict",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5578, Plan cache lock conflict"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_NO_RETSET = {
 | 
						|
      .error_name            = "OB_ER_SP_NO_RETSET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_NO_RETSET,
 | 
						|
      .sqlstate              = "0A000",
 | 
						|
      .str_error             = "Not allowed to return a result set from a %s",
 | 
						|
      .str_user_error        = "Not allowed to return a result set from a %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5579, Not allowed to return a result set from a %s",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5579, Not allowed to return a result set from a %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_NORETURNEND = {
 | 
						|
      .error_name            = "OB_ER_SP_NORETURNEND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_NORETURNEND,
 | 
						|
      .sqlstate              = "2F005",
 | 
						|
      .str_error             = "FUNCTION ended without RETURN",
 | 
						|
      .str_user_error        = "FUNCTION %s ended without RETURN",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5580, FUNCTION ended without RETURN",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5580, FUNCTION %s ended without RETURN"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_DUP_HANDLER = {
 | 
						|
      .error_name            = "OB_ERR_SP_DUP_HANDLER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DUP_HANDLER,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate handler declared in the same block",
 | 
						|
      .str_user_error        = "Duplicate handler declared in the same block",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5581, Duplicate handler declared in the same block",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5581, Duplicate handler declared in the same block"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_NO_RECURSIVE_CREATE = {
 | 
						|
      .error_name            = "OB_ER_SP_NO_RECURSIVE_CREATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_NO_RECURSIVE_CREATE,
 | 
						|
      .sqlstate              = "2F003",
 | 
						|
      .str_error             = "Can\'t create a routine from within another routine",
 | 
						|
      .str_user_error        = "Can\'t create a routine from within another routine",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5582, Can\'t create a routine from within another routine",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5582, Can\'t create a routine from within another routine"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_BADRETURN = {
 | 
						|
      .error_name            = "OB_ER_SP_BADRETURN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_BADRETURN,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "RETURN is only allowed in a FUNCTION",
 | 
						|
      .str_user_error        = "RETURN is only allowed in a FUNCTION",
 | 
						|
      .oracle_errno          = 372,
 | 
						|
      .oracle_str_error      = "PLS-00372: In a procedure, RETURN statement cannot contain an expression",
 | 
						|
      .oracle_str_user_error = "PLS-00372: In a procedure, RETURN statement cannot contain an expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_BAD_CURSOR_SELECT = {
 | 
						|
      .error_name            = "OB_ER_SP_BAD_CURSOR_SELECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_BAD_CURSOR_SELECT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Cursor SELECT must not have INTO",
 | 
						|
      .str_user_error        = "Cursor SELECT must not have INTO",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5584, Cursor SELECT must not have INTO",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5584, Cursor SELECT must not have INTO"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_BAD_SQLSTATE = {
 | 
						|
      .error_name            = "OB_ER_SP_BAD_SQLSTATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_BAD_SQLSTATE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Bad SQLSTATE",
 | 
						|
      .str_user_error        = "Bad SQLSTATE: \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5585, Bad SQLSTATE",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5585, Bad SQLSTATE: \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_VARCOND_AFTER_CURSHNDLR = {
 | 
						|
      .error_name            = "OB_ER_SP_VARCOND_AFTER_CURSHNDLR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_VARCOND_AFTER_CURSHNDLR,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Variable or condition declaration after cursor or handler declaration",
 | 
						|
      .str_user_error        = "Variable or condition declaration after cursor or handler declaration",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5586, Variable or condition declaration after cursor or handler declaration",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5586, Variable or condition declaration after cursor or handler declaration"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_CURSOR_AFTER_HANDLER = {
 | 
						|
      .error_name            = "OB_ER_SP_CURSOR_AFTER_HANDLER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_CURSOR_AFTER_HANDLER,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Cursor declaration after handler declaration",
 | 
						|
      .str_user_error        = "Cursor declaration after handler declaration",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5587, Cursor declaration after handler declaration",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5587, Cursor declaration after handler declaration"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_WRONG_NAME = {
 | 
						|
      .error_name            = "OB_ER_SP_WRONG_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_WRONG_NAME,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Incorrect routine name",
 | 
						|
      .str_user_error        = "Incorrect routine name \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5588, Incorrect routine name",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5588, Incorrect routine name \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_CURSOR_ALREADY_OPEN = {
 | 
						|
      .error_name            = "OB_ER_SP_CURSOR_ALREADY_OPEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_CURSOR_ALREADY_OPEN,
 | 
						|
      .sqlstate              = "24000",
 | 
						|
      .str_error             = "Cursor is already open",
 | 
						|
      .str_user_error        = "Cursor is already open",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5589, Cursor is already open",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5589, Cursor is already open"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_CURSOR_NOT_OPEN = {
 | 
						|
      .error_name            = "OB_ER_SP_CURSOR_NOT_OPEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_CURSOR_NOT_OPEN,
 | 
						|
      .sqlstate              = "24000",
 | 
						|
      .str_error             = "Cursor is not open",
 | 
						|
      .str_user_error        = "Cursor is not open",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5590, Cursor is not open",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5590, Cursor is not open"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_CANT_SET_AUTOCOMMIT = {
 | 
						|
      .error_name            = "OB_ER_SP_CANT_SET_AUTOCOMMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_CANT_SET_AUTOCOMMIT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not allowed to set autocommit from a stored function or trigger",
 | 
						|
      .str_user_error        = "Not allowed to set autocommit from a stored function or trigger",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5591, Not allowed to set autocommit from a stored function or trigger",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5591, Not allowed to set autocommit from a stored function or trigger"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_NOT_VAR_ARG = {
 | 
						|
      .error_name            = "OB_ER_SP_NOT_VAR_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_NOT_VAR_ARG,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "OUT or INOUT argument for routine is not a variable",
 | 
						|
      .str_user_error        = "OUT or INOUT argument %d for routine %.*s is not a variable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5592, OUT or INOUT argument for routine is not a variable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5592, OUT or INOUT argument %d for routine %.*s is not a variable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_SP_LILABEL_MISMATCH = {
 | 
						|
      .error_name            = "OB_ER_SP_LILABEL_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_LILABEL_MISMATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "with no matching label",
 | 
						|
      .str_user_error        = "%s with no matching label: %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5593, with no matching label",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5593, %s with no matching label: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRUNCATE_ILLEGAL_FK = {
 | 
						|
      .error_name            = "OB_ERR_TRUNCATE_ILLEGAL_FK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRUNCATE_ILLEGAL_FK,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Cannot truncate a table referenced in a foreign key constraint",
 | 
						|
      .str_user_error        = "Cannot truncate a table referenced in a foreign key constraint %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5594, Cannot truncate a table referenced in a foreign key constraint",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5594, Cannot truncate a table referenced in a foreign key constraint %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_KEY = {
 | 
						|
      .error_name            = "OB_ERR_DUP_KEY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_KEY,
 | 
						|
      .sqlstate              = "23000",
 | 
						|
      .str_error             = "Can't write; duplicate key in table",
 | 
						|
      .str_user_error        = "Can't write; duplicate key in table \'%.*s\'",
 | 
						|
      .oracle_errno          = 1,
 | 
						|
      .oracle_str_error      = "ORA-00001: unique constraint violated",
 | 
						|
      .oracle_str_user_error = "ORA-00001: unique constraint (%.*s) violated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_INVALID_USE_OF_NULL = {
 | 
						|
      .error_name            = "OB_ER_INVALID_USE_OF_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_INVALID_USE_OF_NULL,
 | 
						|
      .sqlstate              = "22004",
 | 
						|
      .str_error             = "Invalid use of NULL value",
 | 
						|
      .str_user_error        = "Invalid use of NULL value",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5596, Invalid use of NULL value",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5596, Invalid use of NULL value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SPLIT_LIST_LESS_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_SPLIT_LIST_LESS_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "last resulting partition cannot contain bounds",
 | 
						|
      .str_user_error        = "last resulting partition cannot contain bounds",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5597, last resulting partition cannot contain bounds",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5597, last resulting partition cannot contain bounds"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ADD_PARTITION_TO_DEFAULT_LIST = {
 | 
						|
      .error_name            = "OB_ERR_ADD_PARTITION_TO_DEFAULT_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot add partition when DEFAULT partition exists",
 | 
						|
      .str_user_error        = "cannot add partition when DEFAULT partition exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5598, cannot add partition when DEFAULT partition exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5598, cannot add partition when DEFAULT partition exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SPLIT_INTO_ONE_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_SPLIT_INTO_ONE_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot split partition into one partition, use rename instead",
 | 
						|
      .str_user_error        = "cannot split partition into one partition, use rename instead",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5599, cannot split partition into one partition, use rename instead",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5599, cannot split partition into one partition, use rename instead"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_TENANT_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_NO_TENANT_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "can not create user in sys tenant",
 | 
						|
      .str_user_error        = "can not create user %s in sys tenant, name %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5600, can not create user in sys tenant",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5600, can not create user %s in sys tenant, name %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PERCENTAGE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PERCENTAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Percentage should between 1 and 99",
 | 
						|
      .str_user_error        = "Percentage should between 1 and 99",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5601, Percentage should between 1 and 99",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5601, Percentage should between 1 and 99"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLLECT_HISTOGRAM = {
 | 
						|
      .error_name            = "OB_ERR_COLLECT_HISTOGRAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Should collect histogram after major freeze",
 | 
						|
      .str_user_error        = "Should collect histogram after major freeze",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5602, Should collect histogram after major freeze",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5602, Should collect histogram after major freeze"
 | 
						|
};
 | 
						|
static const _error _error_OB_ER_TEMP_TABLE_IN_USE = {
 | 
						|
      .error_name            = "OB_ER_TEMP_TABLE_IN_USE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "0A000",
 | 
						|
      .str_error             = "Attempt to create, alter or drop an index on temporary table already in use",
 | 
						|
      .str_user_error        = "Attempt to create, alter or drop an index on temporary table already in use",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5603, Attempt to create, alter or drop an index on temporary table already in use",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5603, Attempt to create, alter or drop an index on temporary table already in use"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_NLS_PARAMETER_STRING = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_NLS_PARAMETER_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid NLS parameter string used in SQL function",
 | 
						|
      .str_user_error        = "invalid NLS parameter string used in SQL function",
 | 
						|
      .oracle_errno          = 12702,
 | 
						|
      .oracle_str_error      = "ORA-12702: invalid NLS parameter string used in SQL function",
 | 
						|
      .oracle_str_user_error = "ORA-12702: invalid NLS parameter string used in SQL function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATETIME_INTERVAL_PRECISION_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_DATETIME_INTERVAL_PRECISION_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "datetime/interval precision is out of range",
 | 
						|
      .str_user_error        = "datetime/interval precision is out of range",
 | 
						|
      .oracle_errno          = 30088,
 | 
						|
      .oracle_str_error      = "ORA-30088: datetime/interval precision is out of range",
 | 
						|
      .oracle_str_user_error = "ORA-30088: datetime/interval precision is out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CMD_NOT_PROPERLY_ENDED = {
 | 
						|
      .error_name            = "OB_ERR_CMD_NOT_PROPERLY_ENDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SQL command not properly ended",
 | 
						|
      .str_user_error        = "SQL command not properly ended",
 | 
						|
      .oracle_errno          = 933,
 | 
						|
      .oracle_str_error      = "ORA-00933: SQL command not properly ended",
 | 
						|
      .oracle_str_user_error = "ORA-00933: SQL command not properly ended"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_NUMBER_FORMAT_MODEL = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_NUMBER_FORMAT_MODEL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "invalid number format model",
 | 
						|
      .str_user_error        = "invalid number format model",
 | 
						|
      .oracle_errno          = 1481,
 | 
						|
      .oracle_str_error      = "ORA-01481: invalid number format model",
 | 
						|
      .oracle_str_user_error = "ORA-01481: invalid number format model"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED = {
 | 
						|
      .error_name            = "OB_WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_FIELD_TERMINATORS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Non-ASCII separator arguments are not fully supported",
 | 
						|
      .str_user_error        = "Non-ASCII separator arguments are not fully supported",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5609, Non-ASCII separator arguments are not fully supported",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5609, Non-ASCII separator arguments are not fully supported"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_AMBIGUOUS_FIELD_TERM = {
 | 
						|
      .error_name            = "OB_WARN_AMBIGUOUS_FIELD_TERM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_FIELD_TERMINATORS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "First character of the FIELDS TERMINATED string is ambiguous; please use non-optional and non-empty FIELDS ENCLOSED BY",
 | 
						|
      .str_user_error        = "First character of the FIELDS TERMINATED string is ambiguous; please use non-optional and non-empty FIELDS ENCLOSED BY",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5610, First character of the FIELDS TERMINATED string is ambiguous; please use non-optional and non-empty FIELDS ENCLOSED BY",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5610, First character of the FIELDS TERMINATED string is ambiguous; please use non-optional and non-empty FIELDS ENCLOSED BY"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_TOO_FEW_RECORDS = {
 | 
						|
      .error_name            = "OB_WARN_TOO_FEW_RECORDS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_TOO_FEW_RECORDS,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Row doesn't contain data for all columns",
 | 
						|
      .str_user_error        = "Row %ld doesn't contain data for all columns",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5611, Row doesn't contain data for all columns",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5611, Row %ld doesn't contain data for all columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_WARN_TOO_MANY_RECORDS = {
 | 
						|
      .error_name            = "OB_WARN_TOO_MANY_RECORDS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WARN_TOO_MANY_RECORDS,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Row was truncated; it contained more data than there were input columns",
 | 
						|
      .str_user_error        = "Row %ld was truncated; it contained more data than there were input columns",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5612, Row was truncated; it contained more data than there were input columns",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5612, Row %ld was truncated; it contained more data than there were input columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_VALUES = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_VALUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many values",
 | 
						|
      .str_user_error        = "too many values",
 | 
						|
      .oracle_errno          = 913,
 | 
						|
      .oracle_str_error      = "ORA-00913: too many values",
 | 
						|
      .oracle_str_user_error = "ORA-00913: too many values"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_ENOUGH_VALUES = {
 | 
						|
      .error_name            = "OB_ERR_NOT_ENOUGH_VALUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not enough values",
 | 
						|
      .str_user_error        = "not enough values",
 | 
						|
      .oracle_errno          = 947,
 | 
						|
      .oracle_str_error      = "ORA-00947: not enough values",
 | 
						|
      .oracle_str_user_error = "ORA-00947: not enough values"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MORE_THAN_ONE_ROW = {
 | 
						|
      .error_name            = "OB_ERR_MORE_THAN_ONE_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "single-row subquery returns more than one row",
 | 
						|
      .str_user_error        = "single-row subquery returns more than one row",
 | 
						|
      .oracle_errno          = 1427,
 | 
						|
      .oracle_str_error      = "ORA-01427: single-row subquery returns more than one row",
 | 
						|
      .oracle_str_user_error = "ORA-01427: single-row subquery returns more than one row"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_SUBQUERY = {
 | 
						|
      .error_name            = "OB_ERR_NOT_SUBQUERY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "UPDATE ... SET expression must be a subquery",
 | 
						|
      .str_user_error        = "UPDATE ... SET expression must be a subquery",
 | 
						|
      .oracle_errno          = 1767,
 | 
						|
      .oracle_str_error      = "ORA-01767: UPDATE ... SET expression must be a subquery",
 | 
						|
      .oracle_str_user_error = "ORA-01767: UPDATE ... SET expression must be a subquery"
 | 
						|
};
 | 
						|
static const _error _error_OB_INAPPROPRIATE_INTO = {
 | 
						|
      .error_name            = "OB_INAPPROPRIATE_INTO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "inappropriate INTO",
 | 
						|
      .str_user_error        = "inappropriate INTO",
 | 
						|
      .oracle_errno          = 1744,
 | 
						|
      .oracle_str_error      = "ORA-01744: inappropriate INTO",
 | 
						|
      .oracle_str_user_error = "ORA-01744: inappropriate INTO"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLE_IS_REFERENCED = {
 | 
						|
      .error_name            = "OB_ERR_TABLE_IS_REFERENCED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_FK_CANNOT_DROP_PARENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot drop parent table referenced by a foreign key constraint on child table",
 | 
						|
      .str_user_error        = "Cannot drop table \'%.*s\' referenced by a foreign key constraint \'%.*s\' on table \'%.*s\'",
 | 
						|
      .oracle_errno          = 2449,
 | 
						|
      .oracle_str_error      = "ORA-02449: unique/primary keys in table referenced by foreign keys",
 | 
						|
      .oracle_str_user_error = "ORA-02449: unique/primary keys in table (%.*s) referenced by foreign key (%.*s) on table (%.*s)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_QUALIFIER_EXISTS_FOR_USING_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_QUALIFIER_EXISTS_FOR_USING_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column part of using clause can not have qualifier",
 | 
						|
      .str_user_error        = "Column part of using clause can not have qualifier",
 | 
						|
      .oracle_errno          = 25154,
 | 
						|
      .oracle_str_error      = "ORA-25154: Column part of using clause can not have qualifier",
 | 
						|
      .oracle_str_user_error = "ORA-25154: Column part of using clause can not have qualifier"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTER_JOIN_NESTED = {
 | 
						|
      .error_name            = "OB_ERR_OUTER_JOIN_NESTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "two tables cannot be outer-joined to each other",
 | 
						|
      .str_user_error        = "two tables cannot be outer-joined to each other",
 | 
						|
      .oracle_errno          = 1416,
 | 
						|
      .oracle_str_error      = "ORA-01416: two tables cannot be outer-joined to each other",
 | 
						|
      .oracle_str_user_error = "ORA-01416: two tables cannot be outer-joined to each other"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MULTI_OUTER_JOIN_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_MULTI_OUTER_JOIN_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a predicate may reference only one outer-joined table",
 | 
						|
      .str_user_error        = "a predicate may reference only one outer-joined table",
 | 
						|
      .oracle_errno          = 1468,
 | 
						|
      .oracle_str_error      = "ORA-01468: a predicate may reference only one outer-joined table",
 | 
						|
      .oracle_str_user_error = "ORA-01468: a predicate may reference only one outer-joined table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTER_JOIN_ON_CORRELATION_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_OUTER_JOIN_ON_CORRELATION_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "an outer join cannot be specified on a correlation column",
 | 
						|
      .str_user_error        = "an outer join cannot be specified on a correlation column",
 | 
						|
      .oracle_errno          = 1705,
 | 
						|
      .oracle_str_error      = "ORA-01705: an outer join cannot be specified on a correlation column",
 | 
						|
      .oracle_str_user_error = "ORA-01705: an outer join cannot be specified on a correlation column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTER_JOIN_AMBIGUOUS = {
 | 
						|
      .error_name            = "OB_ERR_OUTER_JOIN_AMBIGUOUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "outer join operator (+) not allowed in operand of OR or IN",
 | 
						|
      .str_user_error        = "outer join operator (+) not allowed in operand of OR or IN",
 | 
						|
      .oracle_errno          = 1719,
 | 
						|
      .oracle_str_error      = "ORA-01719: outer join operator (+) not allowed in operand of OR or IN",
 | 
						|
      .oracle_str_user_error = "ORA-01719: outer join operator (+) not allowed in operand of OR or IN"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTER_JOIN_WITH_SUBQUERY = {
 | 
						|
      .error_name            = "OB_ERR_OUTER_JOIN_WITH_SUBQUERY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a column may not be outer-joined to a subquery",
 | 
						|
      .str_user_error        = "a column may not be outer-joined to a subquery",
 | 
						|
      .oracle_errno          = 1799,
 | 
						|
      .oracle_str_error      = "ORA-01799: a column may not be outer-joined to a subquery",
 | 
						|
      .oracle_str_user_error = "ORA-01799: a column may not be outer-joined to a subquery"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTER_JOIN_WITH_ANSI_JOIN = {
 | 
						|
      .error_name            = "OB_ERR_OUTER_JOIN_WITH_ANSI_JOIN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "old style outer join (+) cannot be used with ANSI joins",
 | 
						|
      .str_user_error        = "old style outer join (+) cannot be used with ANSI joins",
 | 
						|
      .oracle_errno          = 25156,
 | 
						|
      .oracle_str_error      = "ORA-25156: old style outer join (+) cannot be used with ANSI joins",
 | 
						|
      .oracle_str_user_error = "ORA-25156: old style outer join (+) cannot be used with ANSI joins"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUTER_JOIN_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_OUTER_JOIN_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "outer join operator (+) is not allowed here",
 | 
						|
      .str_user_error        = "outer join operator (+) is not allowed here",
 | 
						|
      .oracle_errno          = 30563,
 | 
						|
      .oracle_str_error      = "ORA-30563: outer join operator (+) is not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-30563: outer join operator (+) is not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_SCHEMA_EAGAIN = {
 | 
						|
      .error_name            = "OB_SCHEMA_EAGAIN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Schema try again",
 | 
						|
      .str_user_error        = "Schema try again",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5627, Schema try again",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5627, Schema try again"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ZERO_LEN_COL = {
 | 
						|
      .error_name            = "OB_ERR_ZERO_LEN_COL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "zero-length columns are not allowed",
 | 
						|
      .str_user_error        = "zero-length columns are not allowed",
 | 
						|
      .oracle_errno          = 1723,
 | 
						|
      .oracle_str_error      = "ORA-01723: zero-length columns are not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-01723: zero-length columns are not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_YEAR_CONFLICTS_WITH_JULIAN_DATE = {
 | 
						|
      .error_name            = "OB_ERR_YEAR_CONFLICTS_WITH_JULIAN_DATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "year conflicts with Julian date",
 | 
						|
      .str_user_error        = "year conflicts with Julian date",
 | 
						|
      .oracle_errno          = 1831,
 | 
						|
      .oracle_str_error      = "ORA-01831: year conflicts with Julian date",
 | 
						|
      .oracle_str_user_error = "ORA-01831: year conflicts with Julian date"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DAY_OF_YEAR_CONFLICTS_WITH_JULIAN_DATE = {
 | 
						|
      .error_name            = "OB_ERR_DAY_OF_YEAR_CONFLICTS_WITH_JULIAN_DATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of year conflicts with Julian date",
 | 
						|
      .str_user_error        = "day of year conflicts with Julian date",
 | 
						|
      .oracle_errno          = 1832,
 | 
						|
      .oracle_str_error      = "ORA-01832: day of year conflicts with Julian date",
 | 
						|
      .oracle_str_user_error = "ORA-01832: day of year conflicts with Julian date"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MONTH_CONFLICTS_WITH_JULIAN_DATE = {
 | 
						|
      .error_name            = "OB_ERR_MONTH_CONFLICTS_WITH_JULIAN_DATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "month conflicts with Julian date",
 | 
						|
      .str_user_error        = "month conflicts with Julian date",
 | 
						|
      .oracle_errno          = 1833,
 | 
						|
      .oracle_str_error      = "ORA-01833: month conflicts with Julian date",
 | 
						|
      .oracle_str_user_error = "ORA-01833: month conflicts with Julian date"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DAY_OF_MONTH_CONFLICTS_WITH_JULIAN_DATE = {
 | 
						|
      .error_name            = "OB_ERR_DAY_OF_MONTH_CONFLICTS_WITH_JULIAN_DATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of month conflicts with Julian date",
 | 
						|
      .str_user_error        = "day of month conflicts with Julian date",
 | 
						|
      .oracle_errno          = 1834,
 | 
						|
      .oracle_str_error      = "ORA-01834: day of month conflicts with Julian date",
 | 
						|
      .oracle_str_user_error = "ORA-01834: day of month conflicts with Julian date"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DAY_OF_WEEK_CONFLICTS_WITH_JULIAN_DATE = {
 | 
						|
      .error_name            = "OB_ERR_DAY_OF_WEEK_CONFLICTS_WITH_JULIAN_DATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of week conflicts with Julian date",
 | 
						|
      .str_user_error        = "day of week conflicts with Julian date",
 | 
						|
      .oracle_errno          = 1835,
 | 
						|
      .oracle_str_error      = "ORA-01835: day of week conflicts with Julian date",
 | 
						|
      .oracle_str_user_error = "ORA-01835: day of week conflicts with Julian date"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY = {
 | 
						|
      .error_name            = "OB_ERR_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hour conflicts with seconds in day",
 | 
						|
      .str_user_error        = "hour conflicts with seconds in day",
 | 
						|
      .oracle_errno          = 1836,
 | 
						|
      .oracle_str_error      = "ORA-01836: hour conflicts with seconds in day",
 | 
						|
      .oracle_str_user_error = "ORA-01836: hour conflicts with seconds in day"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MINUTES_OF_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY = {
 | 
						|
      .error_name            = "OB_ERR_MINUTES_OF_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "minutes of hour conflicts with seconds in day",
 | 
						|
      .str_user_error        = "minutes of hour conflicts with seconds in day",
 | 
						|
      .oracle_errno          = 1837,
 | 
						|
      .oracle_str_error      = "ORA-01837: minutes of hour conflicts with seconds in day",
 | 
						|
      .oracle_str_user_error = "ORA-01837: minutes of hour conflicts with seconds in day"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SECONDS_OF_MINUTE_CONFLICTS_WITH_SECONDS_IN_DAY = {
 | 
						|
      .error_name            = "OB_ERR_SECONDS_OF_MINUTE_CONFLICTS_WITH_SECONDS_IN_DAY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "seconds of minute conflicts with seconds in day",
 | 
						|
      .str_user_error        = "seconds of minute conflicts with seconds in day",
 | 
						|
      .oracle_errno          = 1838,
 | 
						|
      .oracle_str_error      = "ORA-01838: seconds of minute conflicts with seconds in day",
 | 
						|
      .oracle_str_user_error = "ORA-01838: seconds of minute conflicts with seconds in day"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATE_NOT_VALID_FOR_MONTH_SPECIFIED = {
 | 
						|
      .error_name            = "OB_ERR_DATE_NOT_VALID_FOR_MONTH_SPECIFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "date not valid for month specified",
 | 
						|
      .str_user_error        = "date not valid for month specified",
 | 
						|
      .oracle_errno          = 1839,
 | 
						|
      .oracle_str_error      = "ORA-01839: date not valid for month specified",
 | 
						|
      .oracle_str_user_error = "ORA-01839: date not valid for month specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INPUT_VALUE_NOT_LONG_ENOUGH = {
 | 
						|
      .error_name            = "OB_ERR_INPUT_VALUE_NOT_LONG_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "input value not long enough for date format",
 | 
						|
      .str_user_error        = "input value not long enough for date format",
 | 
						|
      .oracle_errno          = 1840,
 | 
						|
      .oracle_str_error      = "ORA-01840: input value not long enough for date format",
 | 
						|
      .oracle_str_user_error = "ORA-01840: input value not long enough for date format"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_YEAR_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_YEAR_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "(full) year must be between -4713 and +9999, and not be 0",
 | 
						|
      .str_user_error        = "(full) year must be between -4713 and +9999, and not be 0",
 | 
						|
      .oracle_errno          = 1841,
 | 
						|
      .oracle_str_error      = "ORA-01841: (full) year must be between -4713 and +9999, and not be 0",
 | 
						|
      .oracle_str_user_error = "ORA-01841: (full) year must be between -4713 and +9999, and not be 0"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_QUARTER_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_QUARTER_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "quarter must be between 1 and 4",
 | 
						|
      .str_user_error        = "quarter must be between 1 and 4",
 | 
						|
      .oracle_errno          = 1842,
 | 
						|
      .oracle_str_error      = "ORA-01842: quarter must be between 1 and 4",
 | 
						|
      .oracle_str_user_error = "ORA-01842: quarter must be between 1 and 4"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_MONTH = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_MONTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not a valid month",
 | 
						|
      .str_user_error        = "not a valid month",
 | 
						|
      .oracle_errno          = 1843,
 | 
						|
      .oracle_str_error      = "ORA-01843: not a valid month",
 | 
						|
      .oracle_str_user_error = "ORA-01843: not a valid month"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_DAY_OF_THE_WEEK = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_DAY_OF_THE_WEEK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not a valid day of the week",
 | 
						|
      .str_user_error        = "not a valid day of the week",
 | 
						|
      .oracle_errno          = 1846,
 | 
						|
      .oracle_str_error      = "ORA-01846: not a valid day of the week",
 | 
						|
      .oracle_str_user_error = "ORA-01846: not a valid day of the week"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_DAY_OF_YEAR_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_DAY_OF_YEAR_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of year must be between 1 and 365 (366 for leap year)",
 | 
						|
      .str_user_error        = "day of year must be between 1 and 365 (366 for leap year)",
 | 
						|
      .oracle_errno          = 1848,
 | 
						|
      .oracle_str_error      = "ORA-01848: day of year must be between 1 and 365 (366 for leap year)",
 | 
						|
      .oracle_str_user_error = "ORA-01848: day of year must be between 1 and 365 (366 for leap year)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_HOUR12_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_HOUR12_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hour must be between 1 and 12",
 | 
						|
      .str_user_error        = "hour must be between 1 and 12",
 | 
						|
      .oracle_errno          = 1849,
 | 
						|
      .oracle_str_error      = "ORA-01849: hour must be between 1 and 12",
 | 
						|
      .oracle_str_user_error = "ORA-01849: hour must be between 1 and 12"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_HOUR24_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_HOUR24_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hour must be between 0 and 23",
 | 
						|
      .str_user_error        = "hour must be between 0 and 23",
 | 
						|
      .oracle_errno          = 1850,
 | 
						|
      .oracle_str_error      = "ORA-01850: hour must be between 0 and 23",
 | 
						|
      .oracle_str_user_error = "ORA-01850: hour must be between 0 and 23"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_MINUTES_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_MINUTES_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "minutes must be between 0 and 59",
 | 
						|
      .str_user_error        = "minutes must be between 0 and 59",
 | 
						|
      .oracle_errno          = 1851,
 | 
						|
      .oracle_str_error      = "ORA-01851: minutes must be between 0 and 59",
 | 
						|
      .oracle_str_user_error = "ORA-01851: minutes must be between 0 and 59"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SECONDS_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SECONDS_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "seconds must be between 0 and 59",
 | 
						|
      .str_user_error        = "seconds must be between 0 and 59",
 | 
						|
      .oracle_errno          = 1852,
 | 
						|
      .oracle_str_error      = "ORA-01852: seconds must be between 0 and 59",
 | 
						|
      .oracle_str_user_error = "ORA-01852: seconds must be between 0 and 59"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SECONDS_IN_DAY_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SECONDS_IN_DAY_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "seconds in day must be between 0 and 86399",
 | 
						|
      .str_user_error        = "seconds in day must be between 0 and 86399",
 | 
						|
      .oracle_errno          = 1853,
 | 
						|
      .oracle_str_error      = "ORA-01853: seconds in day must be between 0 and 86399",
 | 
						|
      .oracle_str_user_error = "ORA-01853: seconds in day must be between 0 and 86399"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_JULIAN_DATE_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_JULIAN_DATE_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "julian date must be between 1 and 5373484",
 | 
						|
      .str_user_error        = "julian date must be between 1 and 5373484",
 | 
						|
      .oracle_errno          = 1854,
 | 
						|
      .oracle_str_error      = "ORA-01854: julian date must be between 1 and 5373484",
 | 
						|
      .oracle_str_user_error = "ORA-01854: julian date must be between 1 and 5373484"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AM_OR_PM_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_AM_OR_PM_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "AM/A.M. or PM/P.M. required",
 | 
						|
      .str_user_error        = "AM/A.M. or PM/P.M. required",
 | 
						|
      .oracle_errno          = 1855,
 | 
						|
      .oracle_str_error      = "ORA-01855: AM/A.M. or PM/P.M. required",
 | 
						|
      .oracle_str_user_error = "ORA-01855: AM/A.M. or PM/P.M. required"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BC_OR_AD_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_BC_OR_AD_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "BC/B.C. or AD/A.D. required",
 | 
						|
      .str_user_error        = "BC/B.C. or AD/A.D. required",
 | 
						|
      .oracle_errno          = 1856,
 | 
						|
      .oracle_str_error      = "ORA-01856: BC/B.C. or AD/A.D. required",
 | 
						|
      .oracle_str_user_error = "ORA-01856: BC/B.C. or AD/A.D. required"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FORMAT_CODE_APPEARS_TWICE = {
 | 
						|
      .error_name            = "OB_ERR_FORMAT_CODE_APPEARS_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "format code appears twice",
 | 
						|
      .str_user_error        = "format code appears twice",
 | 
						|
      .oracle_errno          = 1810,
 | 
						|
      .oracle_str_error      = "ORA-01810: format code appears twice",
 | 
						|
      .oracle_str_user_error = "ORA-01810: format code appears twice"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DAY_OF_WEEK_SPECIFIED_MORE_THAN_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_DAY_OF_WEEK_SPECIFIED_MORE_THAN_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of week may only be specified once",
 | 
						|
      .str_user_error        = "day of week may only be specified once",
 | 
						|
      .oracle_errno          = 1817,
 | 
						|
      .oracle_str_error      = "ORA-01817: day of week may only be specified once",
 | 
						|
      .oracle_str_user_error = "ORA-01817: day of week may only be specified once"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SIGNED_YEAR_PRECLUDES_USE_OF_BC_AD = {
 | 
						|
      .error_name            = "OB_ERR_SIGNED_YEAR_PRECLUDES_USE_OF_BC_AD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "signed year precludes use of BC/AD",
 | 
						|
      .str_user_error        = "signed year precludes use of BC/AD",
 | 
						|
      .oracle_errno          = 1819,
 | 
						|
      .oracle_str_error      = "ORA-01819: signed year precludes use of BC/AD",
 | 
						|
      .oracle_str_user_error = "ORA-01819: signed year precludes use of BC/AD"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_JULIAN_DATE_PRECLUDES_USE_OF_DAY_OF_YEAR = {
 | 
						|
      .error_name            = "OB_ERR_JULIAN_DATE_PRECLUDES_USE_OF_DAY_OF_YEAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Julian date precludes use of day of year",
 | 
						|
      .str_user_error        = "Julian date precludes use of day of year",
 | 
						|
      .oracle_errno          = 1811,
 | 
						|
      .oracle_str_error      = "ORA-01811: Julian date precludes use of day of year",
 | 
						|
      .oracle_str_user_error = "ORA-01811: Julian date precludes use of day of year"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_YEAR_MAY_ONLY_BE_SPECIFIED_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_YEAR_MAY_ONLY_BE_SPECIFIED_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "year may only be specified once",
 | 
						|
      .str_user_error        = "year may only be specified once",
 | 
						|
      .oracle_errno          = 1812,
 | 
						|
      .oracle_str_error      = "ORA-01812: year may only be specified once",
 | 
						|
      .oracle_str_user_error = "ORA-01812: year may only be specified once"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_HOUR_MAY_ONLY_BE_SPECIFIED_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_HOUR_MAY_ONLY_BE_SPECIFIED_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "hour may only be specified once",
 | 
						|
      .str_user_error        = "hour may only be specified once",
 | 
						|
      .oracle_errno          = 1813,
 | 
						|
      .oracle_str_error      = "ORA-01813: hour may only be specified once",
 | 
						|
      .oracle_str_user_error = "ORA-01813: hour may only be specified once"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AM_PM_CONFLICTS_WITH_USE_OF_AM_DOT_PM_DOT = {
 | 
						|
      .error_name            = "OB_ERR_AM_PM_CONFLICTS_WITH_USE_OF_AM_DOT_PM_DOT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "AM/PM conflicts with use of A.M./P.M.",
 | 
						|
      .str_user_error        = "AM/PM conflicts with use of A.M./P.M.",
 | 
						|
      .oracle_errno          = 1814,
 | 
						|
      .oracle_str_error      = "ORA-01814: AM/PM conflicts with use of A.M./P.M.",
 | 
						|
      .oracle_str_user_error = "ORA-01814: AM/PM conflicts with use of A.M./P.M."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BC_AD_CONFLICT_WITH_USE_OF_BC_DOT_AD_DOT = {
 | 
						|
      .error_name            = "OB_ERR_BC_AD_CONFLICT_WITH_USE_OF_BC_DOT_AD_DOT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "BC/AD conflicts with use of B.C./A.D.",
 | 
						|
      .str_user_error        = "BC/AD conflicts with use of B.C./A.D.",
 | 
						|
      .oracle_errno          = 1815,
 | 
						|
      .oracle_str_error      = "ORA-01815: BC/AD conflicts with use of B.C./A.D.",
 | 
						|
      .oracle_str_user_error = "ORA-01815: BC/AD conflicts with use of B.C./A.D."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MONTH_MAY_ONLY_BE_SPECIFIED_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_MONTH_MAY_ONLY_BE_SPECIFIED_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "month may only be specified once",
 | 
						|
      .str_user_error        = "month may only be specified once",
 | 
						|
      .oracle_errno          = 1816,
 | 
						|
      .oracle_str_error      = "ORA-01816: month may only be specified once",
 | 
						|
      .oracle_str_user_error = "ORA-01816: month may only be specified once"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DAY_OF_WEEK_MAY_ONLY_BE_SPECIFIED_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_DAY_OF_WEEK_MAY_ONLY_BE_SPECIFIED_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of week may only be specified once",
 | 
						|
      .str_user_error        = "day of week may only be specified once",
 | 
						|
      .oracle_errno          = 1817,
 | 
						|
      .oracle_str_error      = "ORA-01817: day of week may only be specified once",
 | 
						|
      .oracle_str_user_error = "ORA-01817: day of week may only be specified once"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FORMAT_CODE_CANNOT_APPEAR = {
 | 
						|
      .error_name            = "OB_ERR_FORMAT_CODE_CANNOT_APPEAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "format code cannot appear in date input format",
 | 
						|
      .str_user_error        = "format code cannot appear in date input format",
 | 
						|
      .oracle_errno          = 1820,
 | 
						|
      .oracle_str_error      = "ORA-01820: format code cannot appear in date input format",
 | 
						|
      .oracle_str_user_error = "ORA-01820: format code cannot appear in date input format"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NON_NUMERIC_CHARACTER_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_NON_NUMERIC_CHARACTER_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a non-numeric character was found where a numeric was expected",
 | 
						|
      .str_user_error        = "a non-numeric character was found where a numeric was expected",
 | 
						|
      .oracle_errno          = 1858,
 | 
						|
      .oracle_str_error      = "ORA-01858: a non-numeric character was found where a numeric was expected",
 | 
						|
      .oracle_str_user_error = "ORA-01858: a non-numeric character was found where a numeric was expected"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_MERIDIAN_INDICATOR_USE = {
 | 
						|
      .error_name            = "OB_INVALID_MERIDIAN_INDICATOR_USE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "'HH24' precludes use of meridian indicator",
 | 
						|
      .str_user_error        = "'HH24' precludes use of meridian indicator",
 | 
						|
      .oracle_errno          = 1818,
 | 
						|
      .oracle_str_error      = "ORA-01818: 'HH24' precludes use of meridian indicator",
 | 
						|
      .oracle_str_user_error = "ORA-01818: 'HH24' precludes use of meridian indicator"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CHAR_FOLLOWING_ESCAPE_CHAR = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CHAR_FOLLOWING_ESCAPE_CHAR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing or illegal character following the escape character",
 | 
						|
      .str_user_error        = "missing or illegal character following the escape character",
 | 
						|
      .oracle_errno          = 1424,
 | 
						|
      .oracle_str_error      = "ORA-01424: missing or illegal character following the escape character",
 | 
						|
      .oracle_str_user_error = "ORA-01424: missing or illegal character following the escape character"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_ESCAPE_CHAR_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_ESCAPE_CHAR_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "escape character must be character string of length 1",
 | 
						|
      .str_user_error        = "escape character must be character string of length 1",
 | 
						|
      .oracle_errno          = 1425,
 | 
						|
      .oracle_str_error      = "ORA-01425: escape character must be character string of length 1",
 | 
						|
      .oracle_str_user_error = "ORA-01425: escape character must be character string of length 1"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DAY_OF_MONTH_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_DAY_OF_MONTH_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "day of month must be between 1 and last day of month",
 | 
						|
      .str_user_error        = "day of month must be between 1 and last day of month",
 | 
						|
      .oracle_errno          = 1847,
 | 
						|
      .oracle_str_error      = "ORA-01847: day of month must be between 1 and last day of month",
 | 
						|
      .oracle_str_user_error = "ORA-01847: day of month must be between 1 and last day of month"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_SELECTED_EXPR = {
 | 
						|
      .error_name            = "OB_ERR_NOT_SELECTED_EXPR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not a SELECTed expression",
 | 
						|
      .str_user_error        = "not a SELECTed expression",
 | 
						|
      .oracle_errno          = 1791,
 | 
						|
      .oracle_str_error      = "ORA-01791: not a SELECTed expression",
 | 
						|
      .oracle_str_user_error = "ORA-01791: not a SELECTed expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UK_PK_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_UK_PK_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "such unique or primary key already exists in the table",
 | 
						|
      .str_user_error        = "such unique or primary key already exists in the table",
 | 
						|
      .oracle_errno          = 2261,
 | 
						|
      .oracle_str_error      = "ORA-02261: such unique or primary key already exists in the table",
 | 
						|
      .oracle_str_user_error = "ORA-02261: such unique or primary key already exists in the table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_LIST_ALREADY_INDEXED = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_LIST_ALREADY_INDEXED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "such column list already indexed",
 | 
						|
      .str_user_error        = "such column list already indexed",
 | 
						|
      .oracle_errno          = 1408,
 | 
						|
      .oracle_str_error      = "ORA-01408: such column list already indexed",
 | 
						|
      .oracle_str_user_error = "ORA-01408: such column list already indexed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BUSHY_TREE_NOT_SUPPORTED = {
 | 
						|
      .error_name            = "OB_ERR_BUSHY_TREE_NOT_SUPPORTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PX does not support processing a bushy tree",
 | 
						|
      .str_user_error        = "PX does not support processing a bushy tree",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5673, PX does not support processing a bushy tree",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5673, PX does not support processing a bushy tree"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ARGUMENT_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_ARGUMENT_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "argument is out of range",
 | 
						|
      .str_user_error        = "argument '%ld' is out of range",
 | 
						|
      .oracle_errno          = 1428,
 | 
						|
      .oracle_str_error      = "ORA-01428: argument is out of range",
 | 
						|
      .oracle_str_user_error = "ORA-01428: argument '%ld' is out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORDER_BY_ITEM_NOT_IN_SELECT_LIST = {
 | 
						|
      .error_name            = "OB_ERR_ORDER_BY_ITEM_NOT_IN_SELECT_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ORDER BY item must be the number of a SELECT-list expression",
 | 
						|
      .str_user_error        = "ORDER BY item must be the number of a SELECT-list expression",
 | 
						|
      .oracle_errno          = 1785,
 | 
						|
      .oracle_str_error      = "ORA-01785: ORDER BY item must be the number of a SELECT-list expression",
 | 
						|
      .oracle_str_user_error = "ORA-01785: ORDER BY item must be the number of a SELECT-list expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERVAL_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_INTERVAL_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the interval is invalid",
 | 
						|
      .str_user_error        = "the interval is invalid",
 | 
						|
      .oracle_errno          = 1867,
 | 
						|
      .oracle_str_error      = "ORA-01867: the interval is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-01867: the interval is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NUMERIC_OR_VALUE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_NUMERIC_OR_VALUE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL: numeric or value error",
 | 
						|
      .str_user_error        = "PL/SQL: numeric or value error: %.*s",
 | 
						|
      .oracle_errno          = 6502,
 | 
						|
      .oracle_str_error      = "ORA-06502: PL/SQL: numeric or value error",
 | 
						|
      .oracle_str_user_error = "ORA-06502: PL/SQL: numeric or value error: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONSTRAINT_NAME_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_CONSTRAINT_NAME_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_DUP_NAME,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate check constraint name",
 | 
						|
      .str_user_error        = "Duplicate check constraint name \'%.*s\'.",
 | 
						|
      .oracle_errno          = 2264,
 | 
						|
      .oracle_str_error      = "ORA-02264: name already used by an existing constraint",
 | 
						|
      .oracle_str_user_error = "ORA-02264: name \'%.*s\' already used by an existing constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_HAVE_INVISIBLE_COL_IN_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_HAVE_INVISIBLE_COL_IN_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table must have at least one column that is not invisible",
 | 
						|
      .str_user_error        = "table must have at least one column that is not invisible",
 | 
						|
      .oracle_errno          = 54039,
 | 
						|
      .oracle_str_error      = "ORA-54039: table must have at least one column that is not invisible",
 | 
						|
      .oracle_str_user_error = "ORA-54039: table must have at least one column that is not invisible"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVISIBLE_COL_ON_UNSUPPORTED_TABLE_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_INVISIBLE_COL_ON_UNSUPPORTED_TABLE_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invisible column is not supported on this type of table.",
 | 
						|
      .str_user_error        = "Invisible column is not supported on this type of table.",
 | 
						|
      .oracle_errno          = 54042,
 | 
						|
      .oracle_str_error      = "ORA-54042: Invisible column is not supported on this type of table.",
 | 
						|
      .oracle_str_user_error = "ORA-54042: Invisible column is not supported on this type of table."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_COL_VISIBILITY_COMBINED_WITH_OTHER_OPTION = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_COL_VISIBILITY_COMBINED_WITH_OTHER_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column visibility modifications cannot be combined with any other modified column DDL option.",
 | 
						|
      .str_user_error        = "Column visibility modifications cannot be combined with any other modified column DDL option.",
 | 
						|
      .oracle_errno          = 54046,
 | 
						|
      .oracle_str_error      = "ORA-54046: Column visibility modifications cannot be combined with any other modified column DDL option.",
 | 
						|
      .oracle_str_user_error = "ORA-54046: Column visibility modifications cannot be combined with any other modified column DDL option."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_COL_VISIBILITY_BY_SYS_USER = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_COL_VISIBILITY_BY_SYS_USER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The visibility of a column from a table owned by a SYS user cannot be changed.",
 | 
						|
      .str_user_error        = "The visibility of a column from a table owned by a SYS user cannot be changed.",
 | 
						|
      .oracle_errno          = 54053,
 | 
						|
      .oracle_str_error      = "ORA-54053: The visibility of a column from a table owned by a SYS user cannot be changed.",
 | 
						|
      .oracle_str_user_error = "ORA-54053: The visibility of a column from a table owned by a SYS user cannot be changed."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_MANY_ARGS_FOR_FUN = {
 | 
						|
      .error_name            = "OB_ERR_TOO_MANY_ARGS_FOR_FUN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many arguments for function",
 | 
						|
      .str_user_error        = "too many arguments for function",
 | 
						|
      .oracle_errno          = 939,
 | 
						|
      .oracle_str_error      = "ORA-00939: too many arguments for function",
 | 
						|
      .oracle_str_user_error = "ORA-00939: too many arguments for function"
 | 
						|
};
 | 
						|
static const _error _error_OB_PX_SQL_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_PX_SQL_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PX sql need retry",
 | 
						|
      .str_user_error        = "PX sql need retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5684, PX sql need retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5684, PX sql need retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_TENANT_HAS_BEEN_DROPPED = {
 | 
						|
      .error_name            = "OB_TENANT_HAS_BEEN_DROPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tenant has been dropped",
 | 
						|
      .str_user_error        = "Tenant '%.*s' has been dropped",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5685, tenant has been dropped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5685, Tenant '%.*s' has been dropped"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXTRACT_FIELD_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_EXTRACT_FIELD_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid extract field for extract source",
 | 
						|
      .str_user_error        = "invalid extract field for extract source",
 | 
						|
      .oracle_errno          = 30076,
 | 
						|
      .oracle_str_error      = "ORA-30076: invalid extract field for extract source",
 | 
						|
      .oracle_str_user_error = "ORA-30076: invalid extract field for extract source"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PACKAGE_COMPILE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PACKAGE_COMPILE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "package compile error",
 | 
						|
      .str_user_error        = "%s \'%.*s.%.*s\' compile error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5687, package compile error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5687, %s \'%.*s.%.*s\' compile error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_EMPTY_BLOCK = {
 | 
						|
      .error_name            = "OB_ERR_SP_EMPTY_BLOCK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Empty block prohibited in Oracle",
 | 
						|
      .str_user_error        = "Empty block prohibited in Oracle",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5688, Empty block prohibited in Oracle",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5688, Empty block prohibited in Oracle"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARRAY_BINDING_ROLLBACK = {
 | 
						|
      .error_name            = "OB_ARRAY_BINDING_ROLLBACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "array binding need rollback",
 | 
						|
      .str_user_error        = "array binding need rollback",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5689, array binding need rollback",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5689, array binding need rollback"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SUBQUERY_USE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SUBQUERY_USE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subquery not allowed here",
 | 
						|
      .str_user_error        = "subquery not allowed here",
 | 
						|
      .oracle_errno          = 2251,
 | 
						|
      .oracle_str_error      = "ORA-02251: subquery not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-02251: subquery not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATE_OR_SYS_VAR_CANNOT_IN_CHECK_CST = {
 | 
						|
      .error_name            = "OB_ERR_DATE_OR_SYS_VAR_CANNOT_IN_CHECK_CST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "date or system variable wrongly specified in CHECK constraint",
 | 
						|
      .str_user_error        = "date or system variable wrongly specified in CHECK constraint",
 | 
						|
      .oracle_errno          = 2436,
 | 
						|
      .oracle_str_error      = "ORA-02436: date or system variable wrongly specified in CHECK constraint",
 | 
						|
      .oracle_str_user_error = "ORA-02436: date or system variable wrongly specified in CHECK constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NONEXISTENT_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_NONEXISTENT_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CONSTRAINT_NOT_FOUND,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Constraint does not exist.",
 | 
						|
      .str_user_error        = "Constraint \'%.*s\' does not exist.",
 | 
						|
      .oracle_errno          = 2443,
 | 
						|
      .oracle_str_error      = "ORA-02443: Cannot drop constraint  - nonexistent constraint",
 | 
						|
      .oracle_str_user_error = "ORA-02443: Cannot drop constraint \'%.*s\' - nonexistent constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_VIOLATED = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_VIOLATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_VIOLATED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "check constraint violated",
 | 
						|
      .str_user_error        = "check constraint violated",
 | 
						|
      .oracle_errno          = 2290,
 | 
						|
      .oracle_str_error      = "ORA-02290: check constraint violated",
 | 
						|
      .oracle_str_user_error = "ORA-02290: check constraint violated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GROUP_FUNC_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_GROUP_FUNC_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "group function is not allowed here",
 | 
						|
      .str_user_error        = "group function is not allowed here",
 | 
						|
      .oracle_errno          = 934,
 | 
						|
      .oracle_str_error      = "ORA-00934: group function is not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-00934: group function is not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_POLICY_STRING_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_POLICY_STRING_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "policy string not found",
 | 
						|
      .str_user_error        = "policy string not found",
 | 
						|
      .oracle_errno          = 12416,
 | 
						|
      .oracle_str_error      = "ORA-12416: policy string not found",
 | 
						|
      .oracle_str_user_error = "ORA-12416: policy string not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_LABEL_STRING = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_LABEL_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid label string",
 | 
						|
      .str_user_error        = "invalid label string",
 | 
						|
      .oracle_errno          = 12401,
 | 
						|
      .oracle_str_error      = "ORA-12401: invalid label string",
 | 
						|
      .oracle_str_user_error = "ORA-12401: invalid label string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNDEFINED_COMPARTMENT_STRING_FOR_POLICY_STRING = {
 | 
						|
      .error_name            = "OB_ERR_UNDEFINED_COMPARTMENT_STRING_FOR_POLICY_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "undefined compartment string for policy string",
 | 
						|
      .str_user_error        = "undefined compartment string for policy string",
 | 
						|
      .oracle_errno          = 12462,
 | 
						|
      .oracle_str_error      = "ORA-12462: undefined compartment string for policy string",
 | 
						|
      .oracle_str_user_error = "ORA-12462: undefined compartment string for policy string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNDEFINED_LEVEL_STRING_FOR_POLICY_STRING = {
 | 
						|
      .error_name            = "OB_ERR_UNDEFINED_LEVEL_STRING_FOR_POLICY_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "undefined level string for policy string",
 | 
						|
      .str_user_error        = "undefined level string for policy string",
 | 
						|
      .oracle_errno          = 12461,
 | 
						|
      .oracle_str_error      = "ORA-12461: undefined level string for policy string",
 | 
						|
      .oracle_str_user_error = "ORA-12461: undefined level string for policy string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNDEFINED_GROUP_STRING_FOR_POLICY_STRING = {
 | 
						|
      .error_name            = "OB_ERR_UNDEFINED_GROUP_STRING_FOR_POLICY_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "undefined group string for policy string",
 | 
						|
      .str_user_error        = "undefined group string for policy string",
 | 
						|
      .oracle_errno          = 12463,
 | 
						|
      .oracle_str_error      = "ORA-12463: undefined group string for policy string",
 | 
						|
      .oracle_str_user_error = "ORA-12463: undefined group string for policy string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LBAC_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_LBAC_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "LBAC error",
 | 
						|
      .str_user_error        = "LBAC error: %s",
 | 
						|
      .oracle_errno          = 12432,
 | 
						|
      .oracle_str_error      = "ORA-12432: LBAC error",
 | 
						|
      .oracle_str_user_error = "ORA-12432: LBAC error: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_POLICY_ROLE_ALREADY_EXISTS_FOR_POLICY_STRING = {
 | 
						|
      .error_name            = "OB_ERR_POLICY_ROLE_ALREADY_EXISTS_FOR_POLICY_STRING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "policy role already exists for policy string",
 | 
						|
      .str_user_error        = "policy role already exists for policy string",
 | 
						|
      .oracle_errno          = 12447,
 | 
						|
      .oracle_str_error      = "ORA-12447: policy role already exists for policy string",
 | 
						|
      .oracle_str_user_error = "ORA-12447: policy role already exists for policy string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NULL_OR_INVALID_USER_LABEL = {
 | 
						|
      .error_name            = "OB_ERR_NULL_OR_INVALID_USER_LABEL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "NULL or invalid user label",
 | 
						|
      .str_user_error        = "NULL or invalid user label: %s",
 | 
						|
      .oracle_errno          = 12470,
 | 
						|
      .oracle_str_error      = "ORA-12470: NULL or invalid user label",
 | 
						|
      .oracle_str_user_error = "ORA-12470: NULL or invalid user label: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ADD_INDEX = {
 | 
						|
      .error_name            = "OB_ERR_ADD_INDEX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Add index failed",
 | 
						|
      .str_user_error        = "Add index failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5703, Add index failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5703, Add index failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROFILE_STRING_DOES_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_PROFILE_STRING_DOES_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "profile string does not exist",
 | 
						|
      .str_user_error        = "profile %.*s does not exist",
 | 
						|
      .oracle_errno          = 2380,
 | 
						|
      .oracle_str_error      = "ORA-02380: profile string does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-02380: profile %.*s does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_RESOURCE_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_RESOURCE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid resource limit",
 | 
						|
      .str_user_error        = "invalid resource limit %s",
 | 
						|
      .oracle_errno          = 2377,
 | 
						|
      .oracle_str_error      = "ORA-02377: invalid resource limit",
 | 
						|
      .oracle_str_user_error = "ORA-02377: invalid resource limit %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROFILE_STRING_ALREADY_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_PROFILE_STRING_ALREADY_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "profile string already exists",
 | 
						|
      .str_user_error        = "profile %.*s already exists",
 | 
						|
      .oracle_errno          = 2379,
 | 
						|
      .oracle_str_error      = "ORA-02379: profile string already exists",
 | 
						|
      .oracle_str_user_error = "ORA-02379: profile %.*s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROFILE_STRING_HAS_USERS_ASSIGNED = {
 | 
						|
      .error_name            = "OB_ERR_PROFILE_STRING_HAS_USERS_ASSIGNED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "profile string has users assigned, cannot drop without CASCADE",
 | 
						|
      .str_user_error        = "profile %.*s has users assigned, cannot drop without CASCADE",
 | 
						|
      .oracle_errno          = 2382,
 | 
						|
      .oracle_str_error      = "ORA-02382: profile string has users assigned, cannot drop without CASCADE",
 | 
						|
      .oracle_str_user_error = "ORA-02382: profile %.*s has users assigned, cannot drop without CASCADE"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_THE_LEADING_PRECISION_OF_THE_INTERVAL_IS_TOO_SMALL = {
 | 
						|
      .error_name            = "OB_ERR_THE_LEADING_PRECISION_OF_THE_INTERVAL_IS_TOO_SMALL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the leading precision of the interval is too small",
 | 
						|
      .str_user_error        = "the leading precision of the interval is too small",
 | 
						|
      .oracle_errno          = 1873,
 | 
						|
      .oracle_str_error      = "ORA-01873: the leading precision of the interval is too small",
 | 
						|
      .oracle_str_user_error = "ORA-01873: the leading precision of the interval is too small"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TIME_ZONE_HOUR = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TIME_ZONE_HOUR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "time zone hour must be between -12 and 14",
 | 
						|
      .str_user_error        = "time zone hour must be between -12 and 14",
 | 
						|
      .oracle_errno          = 1874,
 | 
						|
      .oracle_str_error      = "ORA-01874: time zone hour must be between -15 and 15",
 | 
						|
      .oracle_str_user_error = "ORA-01874: time zone hour must be between -15 and 15"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_TIME_ZONE_MINUTE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_TIME_ZONE_MINUTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "time zone minute must be between -59 and 59",
 | 
						|
      .str_user_error        = "time zone minute must be between -59 and 59",
 | 
						|
      .oracle_errno          = 1875,
 | 
						|
      .oracle_str_error      = "ORA-01875: time zone minute must be between -59 and 59",
 | 
						|
      .oracle_str_user_error = "ORA-01875: time zone minute must be between -59 and 59"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_A_VALID_TIME_ZONE = {
 | 
						|
      .error_name            = "OB_ERR_NOT_A_VALID_TIME_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not a valid time zone",
 | 
						|
      .str_user_error        = "not a valid time zone",
 | 
						|
      .oracle_errno          = 1857,
 | 
						|
      .oracle_str_error      = "ORA-01857: not a valid time zone",
 | 
						|
      .oracle_str_user_error = "ORA-01857: not a valid time zone"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATE_FORMAT_IS_TOO_LONG_FOR_INTERNAL_BUFFER = {
 | 
						|
      .error_name            = "OB_ERR_DATE_FORMAT_IS_TOO_LONG_FOR_INTERNAL_BUFFER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "date format is too long for internal buffer",
 | 
						|
      .str_user_error        = "date format is too long for internal buffer",
 | 
						|
      .oracle_errno          = 1801,
 | 
						|
      .oracle_str_error      = "ORA-01801: date format is too long for internal buffer",
 | 
						|
      .oracle_str_user_error = "ORA-01801: date format is too long for internal buffer"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ADD_CHECK_CONSTRAINT_VIOLATED = {
 | 
						|
      .error_name            = "OB_ERR_ADD_CHECK_CONSTRAINT_VIOLATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot validate - check constraint violated",
 | 
						|
      .str_user_error        = "cannot validate (%.*s.%.*s) - check constraint violated",
 | 
						|
      .oracle_errno          = 2293,
 | 
						|
      .oracle_str_error      = "ORA-02293: cannot validate - check constraint violated",
 | 
						|
      .oracle_str_user_error = "ORA-02293: cannot validate (%.*s.%.*s) - check constraint violated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_VIEW_UPDATE = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_VIEW_UPDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "data manipulation operation not legal on this view",
 | 
						|
      .str_user_error        = "data manipulation operation not legal on this view",
 | 
						|
      .oracle_errno          = 1732,
 | 
						|
      .oracle_str_error      = "ORA-01732: data manipulation operation not legal on this view",
 | 
						|
      .oracle_str_user_error = "ORA-01732: data manipulation operation not legal on this view"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIRTUAL_COL_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_VIRTUAL_COL_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "virtual column not allowed here",
 | 
						|
      .str_user_error        = "virtual column not allowed here",
 | 
						|
      .oracle_errno          = 1733,
 | 
						|
      .oracle_str_error      = "ORA-01733: virtual column not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-01733: virtual column not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_O_VIEW_MULTIUPDATE = {
 | 
						|
      .error_name            = "OB_ERR_O_VIEW_MULTIUPDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot modify more than one base table through a join view",
 | 
						|
      .str_user_error        = "cannot modify more than one base table through a join view",
 | 
						|
      .oracle_errno          = 1776,
 | 
						|
      .oracle_str_error      = "ORA-01776: cannot modify more than one base table through a join view",
 | 
						|
      .oracle_str_user_error = "ORA-01776: cannot modify more than one base table through a join view"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NON_INSERTABLE_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_NON_INSERTABLE_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NON_INSERTABLE_TABLE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The target table is not insertable",
 | 
						|
      .str_user_error        = "The target table %.*s of the INSERT is not insertable-into",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5717, The target table is not insertable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5717, The target table %.*s of the INSERT is not insertable-into"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIEW_MULTIUPDATE = {
 | 
						|
      .error_name            = "OB_ERR_VIEW_MULTIUPDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_MULTIUPDATE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can not modify more than one base table through a join view",
 | 
						|
      .str_user_error        = "Can not modify more than one base table through a join view '%.*s.%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5718, Can not modify more than one base table through a join view",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5718, Can not modify more than one base table through a join view '%.*s.%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NONUPDATEABLE_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_NONUPDATEABLE_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NONUPDATEABLE_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column is not updatable",
 | 
						|
      .str_user_error        = "Column '%.*s' is not updatable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5719, Column is not updatable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5719, Column '%.*s' is not updatable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIEW_DELETE_MERGE_VIEW = {
 | 
						|
      .error_name            = "OB_ERR_VIEW_DELETE_MERGE_VIEW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_DELETE_MERGE_VIEW,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can not delete from join view",
 | 
						|
      .str_user_error        = "Can not delete from join view '%.*s.%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5720, Can not delete from join view",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5720, Can not delete from join view '%.*s.%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_O_DELETE_VIEW_NON_KEY_PRESERVED = {
 | 
						|
      .error_name            = "OB_ERR_O_DELETE_VIEW_NON_KEY_PRESERVED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot delete from view without exactly one key-preserved table",
 | 
						|
      .str_user_error        = "cannot delete from view without exactly one key-preserved table",
 | 
						|
      .oracle_errno          = 1752,
 | 
						|
      .oracle_str_error      = "ORA-01752: cannot delete from view without exactly one key-preserved table",
 | 
						|
      .oracle_str_user_error = "ORA-01752: cannot delete from view without exactly one key-preserved table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_O_UPDATE_VIEW_NON_KEY_PRESERVED = {
 | 
						|
      .error_name            = "OB_ERR_O_UPDATE_VIEW_NON_KEY_PRESERVED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot modify a column which maps to a non key-preserved table",
 | 
						|
      .str_user_error        = "cannot modify a column which maps to a non key-preserved table",
 | 
						|
      .oracle_errno          = 1779,
 | 
						|
      .oracle_str_error      = "ORA-01779: cannot modify a column which maps to a non key-preserved table",
 | 
						|
      .oracle_str_user_error = "ORA-01779: cannot modify a column which maps to a non key-preserved table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_READ_ONLY_VIEW = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_READ_ONLY_VIEW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot perform a DML operation on a read-only view",
 | 
						|
      .str_user_error        = "cannot perform a DML operation on a read-only view",
 | 
						|
      .oracle_errno          = 42399,
 | 
						|
      .oracle_str_error      = "ORA-42399: cannot perform a DML operation on a read-only view",
 | 
						|
      .oracle_str_user_error = "ORA-42399: cannot perform a DML operation on a read-only view"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_INITRANS_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_INITRANS_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid INITRANS option value",
 | 
						|
      .str_user_error        = "invalid INITRANS option value",
 | 
						|
      .oracle_errno          = 2207,
 | 
						|
      .oracle_str_error      = "ORA-02207: invalid INITRANS option value",
 | 
						|
      .oracle_str_user_error = "ORA-02207: invalid INITRANS option value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_MAXTRANS_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_MAXTRANS_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid MAXTRANS option value",
 | 
						|
      .str_user_error        = "invalid MAXTRANS option value",
 | 
						|
      .oracle_errno          = 2209,
 | 
						|
      .oracle_str_error      = "ORA-02209: invalid MAXTRANS option value",
 | 
						|
      .oracle_str_user_error = "ORA-02209: invalid MAXTRANS option value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PCTFREE_OR_PCTUSED_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PCTFREE_OR_PCTUSED_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid value for PCTFREE or PCTUSED",
 | 
						|
      .str_user_error        = "invalid value for PCTFREE or PCTUSED",
 | 
						|
      .oracle_errno          = 2211,
 | 
						|
      .oracle_str_error      = "ORA-02211: invalid value for PCTFREE or PCTUSED",
 | 
						|
      .oracle_str_user_error = "ORA-02211: invalid value for PCTFREE or PCTUSED"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROXY_REROUTE = {
 | 
						|
      .error_name            = "OB_ERR_PROXY_REROUTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SQL request should be rerouted",
 | 
						|
      .str_user_error        = "SQL request should be rerouted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5727, SQL request should be rerouted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5727, SQL request should be rerouted"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_ARGUMENT_FOR_FUNCTION = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_ARGUMENT_FOR_FUNCTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal argument for function",
 | 
						|
      .str_user_error        = "illegal argument for function",
 | 
						|
      .oracle_errno          = 1760,
 | 
						|
      .oracle_str_error      = "ORA-01760: illegal argument for function",
 | 
						|
      .oracle_str_user_error = "ORA-01760: illegal argument for function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OPERATOR_CANNOT_BE_USED_WITH_LIST = {
 | 
						|
      .error_name            = "OB_ERR_OPERATOR_CANNOT_BE_USED_WITH_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "this operator cannot be used with lists",
 | 
						|
      .str_user_error        = "this operator cannot be used with lists",
 | 
						|
      .oracle_errno          = 1796,
 | 
						|
      .oracle_str_error      = "ORA-01796: this operator cannot be used with lists",
 | 
						|
      .oracle_str_user_error = "ORA-01796: this operator cannot be used with lists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SAMPLING_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SAMPLING_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SAMPLE percentage must be in the range [0.000001,100)",
 | 
						|
      .str_user_error        = "SAMPLE percentage must be in the range [0.000001,100)",
 | 
						|
      .oracle_errno          = 30562,
 | 
						|
      .oracle_str_error      = "ORA-30562: SAMPLE percentage must be in the range [0.000001,100)",
 | 
						|
      .oracle_str_user_error = "ORA-30562: SAMPLE percentage must be in the range [0.000001,100)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SPECIFY_DATABASE_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_SPECIFY_DATABASE_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "specifying owner's name of the table is not allowed",
 | 
						|
      .str_user_error        = "specifying owner's name of the table is not allowed",
 | 
						|
      .oracle_errno          = 1765,
 | 
						|
      .oracle_str_error      = "ORA-01765: specifying owner's name of the table is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-01765: specifying owner's name of the table is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STMT_TRIGGER_WITH_WHEN_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_STMT_TRIGGER_WITH_WHEN_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "stmt trigger with when clause",
 | 
						|
      .str_user_error        = "stmt trigger with when clause",
 | 
						|
      .oracle_errno          = 4077,
 | 
						|
      .oracle_str_error      = "ORA-04077: stmt trigger with when clause",
 | 
						|
      .oracle_str_user_error = "ORA-04077: stmt trigger with when clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRG_DOES_NOT_EXIST,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Trigger does not exist",
 | 
						|
      .str_user_error        = "Trigger does not exist",
 | 
						|
      .oracle_errno          = 4080,
 | 
						|
      .oracle_str_error      = "ORA-04080: trigger not exist",
 | 
						|
      .oracle_str_user_error = "ORA-04080: trigger '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_ALREADY_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_ALREADY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "trigger already exist",
 | 
						|
      .str_user_error        = "trigger '%.*s' already exist",
 | 
						|
      .oracle_errno          = 4081,
 | 
						|
      .oracle_str_error      = "ORA-04081: trigger already exist",
 | 
						|
      .oracle_str_user_error = "ORA-04081: trigger '%.*s' already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_EXIST_ON_OTHER_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_EXIST_ON_OTHER_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "trigger already exists on another table, cannot replace it",
 | 
						|
      .str_user_error        = "trigger '%.*s' already exists on another table, cannot replace it",
 | 
						|
      .oracle_errno          = 4095,
 | 
						|
      .oracle_str_error      = "ORA-04095: trigger already exists on another table, cannot replace it",
 | 
						|
      .oracle_str_user_error = "ORA-04095: trigger '%.*s' already exists on another table, cannot replace it"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SIGNALED_IN_PARALLEL_QUERY_SERVER = {
 | 
						|
      .error_name            = "OB_ERR_SIGNALED_IN_PARALLEL_QUERY_SERVER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "error signaled in parallel query server",
 | 
						|
      .str_user_error        = "error signaled in parallel query server",
 | 
						|
      .oracle_errno          = 12801,
 | 
						|
      .oracle_str_error      = "ORA-12801: error signaled in parallel query server",
 | 
						|
      .oracle_str_user_error = "ORA-12801: error signaled in parallel query server"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_QUERY_NAME = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_QUERY_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal reference of a query name in WITH clause",
 | 
						|
      .str_user_error        = "illegal reference of a query name in WITH clause",
 | 
						|
      .oracle_errno          = 32031,
 | 
						|
      .oracle_str_error      = "ORA-32031: illegal reference of a query name in WITH clause",
 | 
						|
      .oracle_str_user_error = "ORA-32031: illegal reference of a query name in WITH clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_UNSUPPORTED_COLUMN_ALIASING = {
 | 
						|
      .error_name            = "OB_ERR_CTE_UNSUPPORTED_COLUMN_ALIASING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unsupported column aliasing",
 | 
						|
      .str_user_error        = "unsupported column aliasing",
 | 
						|
      .oracle_errno          = 32033,
 | 
						|
      .oracle_str_error      = "ORA-32033: unsupported column aliasing",
 | 
						|
      .oracle_str_user_error = "ORA-32033: unsupported column aliasing"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNSUPPORTED_USE_OF_CTE = {
 | 
						|
      .error_name            = "OB_ERR_UNSUPPORTED_USE_OF_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unsupported use of WITH clause",
 | 
						|
      .str_user_error        = "unsupported use of WITH clause",
 | 
						|
      .oracle_errno          = 32034,
 | 
						|
      .oracle_str_error      = "ORA-32034: unsupported use of WITH clause",
 | 
						|
      .oracle_str_user_error = "ORA-32034: unsupported use of WITH clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_COLUMN_NUMBER_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ERR_CTE_COLUMN_NUMBER_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "number of WITH clause column names does not match number of elements in select list",
 | 
						|
      .str_user_error        = "number of WITH clause column names does not match number of elements in select list",
 | 
						|
      .oracle_errno          = 32038,
 | 
						|
      .oracle_str_error      = "ORA-32038: number of WITH clause column names does not match number of elements in select list",
 | 
						|
      .oracle_str_user_error = "ORA-32038: number of WITH clause column names does not match number of elements in select list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEED_COLUMN_ALIAS_LIST_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_NEED_COLUMN_ALIAS_LIST_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "recursive WITH clause must have column alias list",
 | 
						|
      .str_user_error        = "recursive WITH clause must have column alias list",
 | 
						|
      .oracle_errno          = 32039,
 | 
						|
      .oracle_str_error      = "ORA-32039: recursive WITH clause must have column alias list",
 | 
						|
      .oracle_str_user_error = "ORA-32039: recursive WITH clause must have column alias list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEED_UNION_ALL_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_NEED_UNION_ALL_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "recursive WITH clause must use a UNION ALL operation",
 | 
						|
      .str_user_error        = "recursive WITH clause must use a UNION ALL operation",
 | 
						|
      .oracle_errno          = 32040,
 | 
						|
      .oracle_str_error      = "ORA-32040: recursive WITH clause must use a UNION ALL operation",
 | 
						|
      .oracle_str_user_error = "ORA-32040: recursive WITH clause must use a UNION ALL operation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEED_ONLY_TWO_BRANCH_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_NEED_ONLY_TWO_BRANCH_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "UNION ALL operation in recursive WITH clause must have only two branches",
 | 
						|
      .str_user_error        = "UNION ALL operation in recursive WITH clause must have only two branches",
 | 
						|
      .oracle_errno          = 32041,
 | 
						|
      .oracle_str_error      = "ORA-32041: UNION ALL operation in recursive WITH clause must have only two branches",
 | 
						|
      .oracle_str_user_error = "ORA-32041: UNION ALL operation in recursive WITH clause must have only two branches"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEED_REFERENCE_ITSELF_DIRECTLY_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_NEED_REFERENCE_ITSELF_DIRECTLY_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "recursive WITH clause must reference itself directly in one of the UNION ALL branches",
 | 
						|
      .str_user_error        = "recursive WITH clause must reference itself directly in one of the UNION ALL branches",
 | 
						|
      .oracle_errno          = 32042,
 | 
						|
      .oracle_str_error      = "ORA-32042: recursive WITH clause must reference itself directly in one of the UNION ALL branches",
 | 
						|
      .oracle_str_user_error = "ORA-32042: recursive WITH clause must reference itself directly in one of the UNION ALL branches"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEED_INIT_BRANCH_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_NEED_INIT_BRANCH_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "recursive WITH clause needs an initialization branch",
 | 
						|
      .str_user_error        = "recursive WITH clause needs an initialization branch",
 | 
						|
      .oracle_errno          = 32043,
 | 
						|
      .oracle_str_error      = "ORA-32043: recursive WITH clause needs an initialization branch",
 | 
						|
      .oracle_str_user_error = "ORA-32043: recursive WITH clause needs an initialization branch"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CYCLE_FOUND_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_CYCLE_FOUND_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cycle detected while executing recursive WITH query",
 | 
						|
      .str_user_error        = "cycle detected while executing recursive WITH query",
 | 
						|
      .oracle_errno          = 32044,
 | 
						|
      .oracle_str_error      = "ORA-32044: cycle detected while executing recursive WITH query",
 | 
						|
      .oracle_str_user_error = "ORA-32044: cycle detected while executing recursive WITH query"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_REACH_MAX_LEVEL_RECURSION = {
 | 
						|
      .error_name            = "OB_ERR_CTE_REACH_MAX_LEVEL_RECURSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "maximum level of recursion reached while executing recursive WITH query",
 | 
						|
      .str_user_error        = "maximum level of recursion reached while executing recursive WITH query",
 | 
						|
      .oracle_errno          = 32045,
 | 
						|
      .oracle_str_error      = "ORA-32045: maximum level of recursion reached while executing recursive WITH query",
 | 
						|
      .oracle_str_user_error = "ORA-32045: maximum level of recursion reached while executing recursive WITH query"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_SEARCH_PSEUDO_NAME = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_SEARCH_PSEUDO_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence column name for SEARCH clause must not be part of the column alias list",
 | 
						|
      .str_user_error        = "sequence column name for SEARCH clause must not be part of the column alias list",
 | 
						|
      .oracle_errno          = 32046,
 | 
						|
      .oracle_str_error      = "ORA-32046: sequence column name for SEARCH clause must not be part of the column alias list",
 | 
						|
      .oracle_str_user_error = "ORA-32046: sequence column name for SEARCH clause must not be part of the column alias list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_CYCLE_NON_CYCLE_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_CYCLE_NON_CYCLE_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cycle mark value and non-cycle mark value must be one byte character string values",
 | 
						|
      .str_user_error        = "cycle mark value and non-cycle mark value must be one byte character string values",
 | 
						|
      .oracle_errno          = 32047,
 | 
						|
      .oracle_str_error      = "ORA-32047: cycle mark value and non-cycle mark value must be one byte character string values",
 | 
						|
      .oracle_str_user_error = "ORA-32047: cycle mark value and non-cycle mark value must be one byte character string values"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_CYCLE_PSEUDO_NAME = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_CYCLE_PSEUDO_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cycle mark column name for CYCLE clause must not be part of the column alias list",
 | 
						|
      .str_user_error        = "cycle mark column name for CYCLE clause must not be part of the column alias list",
 | 
						|
      .oracle_errno          = 32048,
 | 
						|
      .oracle_str_error      = "ORA-32048: cycle mark column name for CYCLE clause must not be part of the column alias list",
 | 
						|
      .oracle_str_user_error = "ORA-32048: cycle mark column name for CYCLE clause must not be part of the column alias list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_COLUMN_ALIAS_DUPLICATE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_COLUMN_ALIAS_DUPLICATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate name found in column alias list for WITH clause",
 | 
						|
      .str_user_error        = "duplicate name found in column alias list for WITH clause",
 | 
						|
      .oracle_errno          = 32049,
 | 
						|
      .oracle_str_error      = "ORA-32049: duplicate name found in column alias list for WITH clause",
 | 
						|
      .oracle_str_user_error = "ORA-32049: duplicate name found in column alias list for WITH clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_SEARCH_CYCLE_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_SEARCH_CYCLE_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SEARCH and CYCLE clauses can only be specified for recursive WITH clause elements",
 | 
						|
      .str_user_error        = "SEARCH and CYCLE clauses can only be specified for recursive WITH clause elements",
 | 
						|
      .oracle_errno          = 32480,
 | 
						|
      .oracle_str_error      = "ORA-32480: SEARCH and CYCLE clauses can only be specified for recursive WITH clause elements",
 | 
						|
      .oracle_str_user_error = "ORA-32480: SEARCH and CYCLE clauses can only be specified for recursive WITH clause elements"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_DUPLICATE_CYCLE_NON_CYCLE_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_DUPLICATE_CYCLE_NON_CYCLE_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cycle value for CYCLE clause must be different from the non-cycle value",
 | 
						|
      .str_user_error        = "cycle value for CYCLE clause must be different from the non-cycle value",
 | 
						|
      .oracle_errno          = 32481,
 | 
						|
      .oracle_str_error      = "ORA-32481: cycle value for CYCLE clause must be different from the non-cycle value",
 | 
						|
      .oracle_str_user_error = "ORA-32481: cycle value for CYCLE clause must be different from the non-cycle value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_DUPLICATE_SEQ_NAME_CYCLE_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CTE_DUPLICATE_SEQ_NAME_CYCLE_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "sequence column for SEARCH clause must be different from the cycle mark column for CYCLE clause",
 | 
						|
      .str_user_error        = "sequence column for SEARCH clause must be different from the cycle mark column for CYCLE clause",
 | 
						|
      .oracle_errno          = 32482,
 | 
						|
      .oracle_str_error      = "ORA-32482: sequence column for SEARCH clause must be different from the cycle mark column for CYCLE clause",
 | 
						|
      .oracle_str_user_error = "ORA-32482: sequence column for SEARCH clause must be different from the cycle mark column for CYCLE clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_DUPLICATE_NAME_IN_SEARCH_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_DUPLICATE_NAME_IN_SEARCH_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate name found in sort specification list for SEARCH clause of WITH clause",
 | 
						|
      .str_user_error        = "duplicate name found in sort specification list for SEARCH clause of WITH clause",
 | 
						|
      .oracle_errno          = 32483,
 | 
						|
      .oracle_str_error      = "ORA-32483: duplicate name found in sort specification list for SEARCH clause of WITH clause",
 | 
						|
      .oracle_str_user_error = "ORA-32483: duplicate name found in sort specification list for SEARCH clause of WITH clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_DUPLICATE_NAME_IN_CYCLE_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_DUPLICATE_NAME_IN_CYCLE_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate name found in cycle column list for CYCLE clause of WITH clause",
 | 
						|
      .str_user_error        = "duplicate name found in cycle column list for CYCLE clause of WITH clause",
 | 
						|
      .oracle_errno          = 32484,
 | 
						|
      .oracle_str_error      = "ORA-32484: duplicate name found in cycle column list for CYCLE clause of WITH clause",
 | 
						|
      .oracle_str_user_error = "ORA-32484: duplicate name found in cycle column list for CYCLE clause of WITH clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_COLUMN_IN_CYCLE_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_COLUMN_IN_CYCLE_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "element in cycle column list of CYCLE clause must appear in the column alias list of the WITH clause element",
 | 
						|
      .str_user_error        = "element in cycle column list of CYCLE clause must appear in the column alias list of the WITH clause element",
 | 
						|
      .oracle_errno          = 32485,
 | 
						|
      .oracle_str_error      = "ORA-32485: element in cycle column list of CYCLE clause must appear in the column alias list of the WITH clause element",
 | 
						|
      .oracle_str_user_error = "ORA-32485: element in cycle column list of CYCLE clause must appear in the column alias list of the WITH clause element"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_RECURSIVE_BRANCH = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_RECURSIVE_BRANCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unsupported operation in recursive branch of recursive WITH clause",
 | 
						|
      .str_user_error        = "unsupported operation in recursive branch of recursive WITH clause",
 | 
						|
      .oracle_errno          = 32486,
 | 
						|
      .oracle_str_error      = "ORA-32486: unsupported operation in recursive branch of recursive WITH clause",
 | 
						|
      .oracle_str_user_error = "ORA-32486: unsupported operation in recursive branch of recursive WITH clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_JOIN_IN_RECURSIVE_CTE = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_JOIN_IN_RECURSIVE_CTE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unsupported join in recursive WITH query",
 | 
						|
      .str_user_error        = "unsupported join in recursive WITH query",
 | 
						|
      .oracle_errno          = 32487,
 | 
						|
      .oracle_str_error      = "ORA-32487: unsupported join in recursive WITH query",
 | 
						|
      .oracle_str_user_error = "ORA-32487: unsupported join in recursive WITH query"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_NEED_COLUMN_ALIAS_LIST = {
 | 
						|
      .error_name            = "OB_ERR_CTE_NEED_COLUMN_ALIAS_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "WITH clause element did not have a column alias list",
 | 
						|
      .str_user_error        = "WITH clause element did not have a column alias list",
 | 
						|
      .oracle_errno          = 32488,
 | 
						|
      .oracle_str_error      = "ORA-32488: WITH clause element did not have a column alias list",
 | 
						|
      .oracle_str_user_error = "ORA-32488: WITH clause element did not have a column alias list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_ILLEGAL_COLUMN_IN_SERACH_CALUSE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_ILLEGAL_COLUMN_IN_SERACH_CALUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "element in sort specification list of SEARCH clause did not appear in the column alias list of the WITH clause element",
 | 
						|
      .str_user_error        = "element in sort specification list of SEARCH clause did not appear in the column alias list of the WITH clause element",
 | 
						|
      .oracle_errno          = 32489,
 | 
						|
      .oracle_str_error      = "ORA-32489: element in sort specification list of SEARCH clause did not appear in the column alias list of the WITH clause element",
 | 
						|
      .oracle_str_user_error = "ORA-32489: element in sort specification list of SEARCH clause did not appear in the column alias list of the WITH clause element"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_RECURSIVE_QUERY_NAME_REFERENCED_MORE_THAN_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_CTE_RECURSIVE_QUERY_NAME_REFERENCED_MORE_THAN_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "recursive query name referenced more than once in recursive branch of recursive WITH clause element",
 | 
						|
      .str_user_error        = "recursive query name referenced more than once in recursive branch of recursive WITH clause element",
 | 
						|
      .oracle_errno          = 32490,
 | 
						|
      .oracle_str_error      = "ORA-32490: recursive query name referenced more than once in recursive branch of recursive WITH clause element",
 | 
						|
      .oracle_str_user_error = "ORA-32490: recursive query name referenced more than once in recursive branch of recursive WITH clause element"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_PSEUDO_COLUMN_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_PSEUDO_COLUMN_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Specified pseudo column or operator not allowed here",
 | 
						|
      .str_user_error        = "Specified pseudo column or operator not allowed here",
 | 
						|
      .oracle_errno          = 976,
 | 
						|
      .oracle_str_error      = "ORA-00976: Specified pseudo column or operator not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-00976: Specified pseudo column or operator not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_LOOP = {
 | 
						|
      .error_name            = "OB_ERR_CBY_LOOP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CONNECT BY loop in user data",
 | 
						|
      .str_user_error        = "CONNECT BY loop in user data",
 | 
						|
      .oracle_errno          = 1436,
 | 
						|
      .oracle_str_error      = "ORA-01436: CONNECT BY loop in user data",
 | 
						|
      .oracle_str_user_error = "ORA-01436: CONNECT BY loop in user data"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_JOIN_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_JOIN_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot have join with CONNECT BY",
 | 
						|
      .str_user_error        = "cannot have join with CONNECT BY",
 | 
						|
      .oracle_errno          = 1437,
 | 
						|
      .oracle_str_error      = "ORA-01437: cannot have join with CONNECT BY",
 | 
						|
      .oracle_str_user_error = "ORA-01437: cannot have join with CONNECT BY"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_CONNECT_BY_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_CONNECT_BY_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CONNECT BY clause required in this query block",
 | 
						|
      .str_user_error        = "CONNECT BY clause required in this query block",
 | 
						|
      .oracle_errno          = 1788,
 | 
						|
      .oracle_str_error      = "ORA-01788: CONNECT BY clause required in this query block",
 | 
						|
      .oracle_str_user_error = "ORA-01788: CONNECT BY clause required in this query block"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_CONNECT_BY_PATH_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_CONNECT_BY_PATH_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SYS_CONNECT_BY_PATH function is not allowed here",
 | 
						|
      .str_user_error        = "SYS_CONNECT_BY_PATH function is not allowed here",
 | 
						|
      .oracle_errno          = 30002,
 | 
						|
      .oracle_str_error      = "ORA-30002: SYS_CONNECT_BY_PATH function is not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-30002: SYS_CONNECT_BY_PATH function is not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_CONNECT_BY_PATH_ILLEGAL_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_CBY_CONNECT_BY_PATH_ILLEGAL_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal parameter in SYS_CONNECT_BY_PATH function",
 | 
						|
      .str_user_error        = "illegal parameter in SYS_CONNECT_BY_PATH function",
 | 
						|
      .oracle_errno          = 30003,
 | 
						|
      .oracle_str_error      = "ORA-30003: illegal parameter in SYS_CONNECT_BY_PATH function",
 | 
						|
      .oracle_str_user_error = "ORA-30003: illegal parameter in SYS_CONNECT_BY_PATH function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_CONNECT_BY_PATH_INVALID_SEPARATOR = {
 | 
						|
      .error_name            = "OB_ERR_CBY_CONNECT_BY_PATH_INVALID_SEPARATOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A column value contained the string that the SYS_CONNECT_BY_PATH function was to use to separate column values",
 | 
						|
      .str_user_error        = "A column value contained the string that the SYS_CONNECT_BY_PATH function was to use to separate column values",
 | 
						|
      .oracle_errno          = 30004,
 | 
						|
      .oracle_str_error      = "ORA-30004: A column value contained the string that the SYS_CONNECT_BY_PATH function was to use to separate column values.",
 | 
						|
      .oracle_str_user_error = "ORA-30004: A column value contained the string that the SYS_CONNECT_BY_PATH function was to use to separate column values."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_CONNECT_BY_ROOT_ILLEGAL_USED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_CONNECT_BY_ROOT_ILLEGAL_USED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CONNECT BY ROOT operator is not supported in the START WITH or in the CONNECT BY condition",
 | 
						|
      .str_user_error        = "CONNECT BY ROOT operator is not supported in the START WITH or in the CONNECT BY condition",
 | 
						|
      .oracle_errno          = 30007,
 | 
						|
      .oracle_str_error      = "ORA-30007: CONNECT BY ROOT operator is not supported in the START WITH or in the CONNECT BY condition",
 | 
						|
      .oracle_str_user_error = "ORA-30007: CONNECT BY ROOT operator is not supported in the START WITH or in the CONNECT BY condition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_OREDER_SIBLINGS_BY_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_OREDER_SIBLINGS_BY_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ORDER SIBLINGS BY clause not allowed here",
 | 
						|
      .str_user_error        = "ORDER SIBLINGS BY clause not allowed here",
 | 
						|
      .oracle_errno          = 30929,
 | 
						|
      .oracle_str_error      = "ORA-30929: ORDER SIBLINGS BY clause not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-30929: ORDER SIBLINGS BY clause not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_NOCYCLE_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_CBY_NOCYCLE_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudo column",
 | 
						|
      .str_user_error        = "NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudo column",
 | 
						|
      .oracle_errno          = 30930,
 | 
						|
      .oracle_str_error      = "ORA-30930: NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudo column",
 | 
						|
      .oracle_str_user_error = "ORA-30930: NOCYCLE keyword is required with CONNECT_BY_ISCYCLE pseudo column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_ENOUGH_ARGS_FOR_FUN = {
 | 
						|
      .error_name            = "OB_ERR_NOT_ENOUGH_ARGS_FOR_FUN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not enough arguments for function",
 | 
						|
      .str_user_error        = "not enough arguments for function",
 | 
						|
      .oracle_errno          = 938,
 | 
						|
      .oracle_str_error      = "ORA-00938: not enough arguments for function",
 | 
						|
      .oracle_str_user_error = "ORA-00938: not enough arguments for function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PREPARE_STMT_CHECKSUM = {
 | 
						|
      .error_name            = "OB_ERR_PREPARE_STMT_CHECKSUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Prepare statement checksum error",
 | 
						|
      .str_user_error        = "Prepare statement checksum error",
 | 
						|
      .oracle_errno          = 603,
 | 
						|
      .oracle_str_error      = "ORA-00603: Oracle Server session terminated by fatal error",
 | 
						|
      .oracle_str_user_error = "ORA-00603: Oracle Server session terminated by fatal error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ENABLE_NONEXISTENT_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_ENABLE_NONEXISTENT_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot enable constraint - no such constraint",
 | 
						|
      .str_user_error        = "cannot enable constraint (%.*s) - no such constraint",
 | 
						|
      .oracle_errno          = 2430,
 | 
						|
      .oracle_str_error      = "ORA-02430: cannot enable constraint - no such constraint",
 | 
						|
      .oracle_str_user_error = "ORA-02430: cannot enable constraint (%.*s) - no such constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DISABLE_NONEXISTENT_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_DISABLE_NONEXISTENT_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot disable constraint - no such constraint",
 | 
						|
      .str_user_error        = "cannot disable constraint (%.*s) - no such constraint",
 | 
						|
      .oracle_errno          = 2431,
 | 
						|
      .oracle_str_error      = "ORA-02431: cannot disable constraint - no such constraint",
 | 
						|
      .oracle_str_user_error = "ORA-02431: cannot disable constraint (%.*s) - no such constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DOWNGRADE_DOP = {
 | 
						|
      .error_name            = "OB_ERR_DOWNGRADE_DOP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PX DOP downgrade",
 | 
						|
      .str_user_error        = "PX DOP downgrade from %ld to %ld",
 | 
						|
      .oracle_errno          = 0,
 | 
						|
      .oracle_str_error      = "ORA-00000: PX DOP downgrade",
 | 
						|
      .oracle_str_user_error = "ORA-00000: PX DOP downgrade from %ld to %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DOWNGRADE_PARALLEL_MAX_SERVERS = {
 | 
						|
      .error_name            = "OB_ERR_DOWNGRADE_PARALLEL_MAX_SERVERS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "parallel_max_servers downgrade due to insufficent cpu resource. deprecated.",
 | 
						|
      .str_user_error        = "parallel_max_servers downgrade due to insufficent cpu resource from %ld to %ld. deprecated.",
 | 
						|
      .oracle_errno          = 0,
 | 
						|
      .oracle_str_error      = "ORA-00000: parallel_max_servers downgrade due to insufficent cpu resource. deprecated.",
 | 
						|
      .oracle_str_user_error = "ORA-00000: parallel_max_servers downgrade due to insufficent cpu resource from %ld to %ld. deprecated."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORPHANED_CHILD_RECORD_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_ORPHANED_CHILD_RECORD_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot validate - parent keys not found",
 | 
						|
      .str_user_error        = "cannot validate (%.*s.%.*s) - parent keys not found",
 | 
						|
      .oracle_errno          = 2298,
 | 
						|
      .oracle_str_error      = "ORA-02298: cannot validate - parent keys not found",
 | 
						|
      .oracle_str_user_error = "ORA-02298: cannot validate (%.*s.%.*s) - parent keys not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COL_CHECK_CST_REFER_ANOTHER_COL = {
 | 
						|
      .error_name            = "OB_ERR_COL_CHECK_CST_REFER_ANOTHER_COL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_COLUMN_CHECK_CONSTRAINT_REFERENCES_OTHER_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column check constraint cannot reference other columns",
 | 
						|
      .str_user_error        = "Column check constraint \'%.*s\' references other column.",
 | 
						|
      .oracle_errno          = 2438,
 | 
						|
      .oracle_str_error      = "ORA-02438: Column check constraint cannot reference other columns",
 | 
						|
      .oracle_str_user_error = "ORA-02438: Column check constraint \'%.*s\' cannot reference other columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_BATCHED_MULTI_STMT_ROLLBACK = {
 | 
						|
      .error_name            = "OB_BATCHED_MULTI_STMT_ROLLBACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "batched multi statement execution needs rollback",
 | 
						|
      .str_user_error        = "batched multi statement execution needs rollback",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5787, batched multi statement execution needs rollback",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5787, batched multi statement execution needs rollback"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FOR_UPDATE_SELECT_VIEW_CANNOT = {
 | 
						|
      .error_name            = "OB_ERR_FOR_UPDATE_SELECT_VIEW_CANNOT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc.",
 | 
						|
      .str_user_error        = "cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc.",
 | 
						|
      .oracle_errno          = 2014,
 | 
						|
      .oracle_str_error      = "ORA-02014: cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc.",
 | 
						|
      .oracle_str_user_error = "ORA-02014: cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_POLICY_WITH_CHECK_OPTION_VIOLATION = {
 | 
						|
      .error_name            = "OB_ERR_POLICY_WITH_CHECK_OPTION_VIOLATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "policy with check option violation",
 | 
						|
      .str_user_error        = "policy with check option violation",
 | 
						|
      .oracle_errno          = 28115,
 | 
						|
      .oracle_str_error      = "ORA-28115: policy with check option violation",
 | 
						|
      .oracle_str_user_error = "ORA-28115: policy with check option violation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_POLICY_ALREADY_APPLIED_TO_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_POLICY_ALREADY_APPLIED_TO_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "policy already applied to table",
 | 
						|
      .str_user_error        = "policy already applied to table",
 | 
						|
      .oracle_errno          = 12444,
 | 
						|
      .oracle_str_error      = "ORA-12444: policy already applied to table",
 | 
						|
      .oracle_str_user_error = "ORA-12444: policy already applied to table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MUTATING_TABLE_OPERATION = {
 | 
						|
      .error_name            = "OB_ERR_MUTATING_TABLE_OPERATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table is mutating, trigger/function may not see it",
 | 
						|
      .str_user_error        = "Can\'t update table \'%s\' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.",
 | 
						|
      .oracle_errno          = 4091,
 | 
						|
      .oracle_str_error      = "ORA-04091: table is mutating, trigger/function may not see it",
 | 
						|
      .oracle_str_user_error = "ORA-04091: table '%.*s'.'%.*s' is mutating, trigger/function may not see it"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_OR_DROP_MULTI_COLUMN_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_OR_DROP_MULTI_COLUMN_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column is referenced in a multi-column constraint",
 | 
						|
      .str_user_error        = "column is referenced in a multi-column constraint",
 | 
						|
      .oracle_errno          = 12991,
 | 
						|
      .oracle_str_error      = "ORA-12991: column is referenced in a multi-column constraint",
 | 
						|
      .oracle_str_user_error = "ORA-12991: column is referenced in a multi-column constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DROP_PARENT_KEY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_DROP_PARENT_KEY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot drop parent key column",
 | 
						|
      .str_user_error        = "cannot drop parent key column",
 | 
						|
      .oracle_errno          = 12992,
 | 
						|
      .oracle_str_error      = "ORA-12992: cannot drop parent key column",
 | 
						|
      .oracle_str_user_error = "ORA-12992: cannot drop parent key column"
 | 
						|
};
 | 
						|
static const _error _error_OB_AUTOINC_SERVICE_BUSY = {
 | 
						|
      .error_name            = "OB_AUTOINC_SERVICE_BUSY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "auto increment service busy",
 | 
						|
      .str_user_error        = "auto increment service busy",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: auto increment service busy",
 | 
						|
      .oracle_str_user_error = "ORA-00600: auto increment service busy"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONSTRAINT_CONSTRAINT_DISABLE_VALIDATE = {
 | 
						|
      .error_name            = "OB_ERR_CONSTRAINT_CONSTRAINT_DISABLE_VALIDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No insert/update/delete on table with constraint disabled and validated",
 | 
						|
      .str_user_error        = "No insert/update/delete on table with constraint (%.*s.%.*s) disabled and validated",
 | 
						|
      .oracle_errno          = 25128,
 | 
						|
      .oracle_str_error      = "ORA-25128: No insert/update/delete on table with constraint disabled and validated",
 | 
						|
      .oracle_str_user_error = "ORA-25128: No insert/update/delete on table with constraint (%.*s.%.*s) disabled and validated"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AUTONOMOUS_TRANSACTION_ROLLBACK = {
 | 
						|
      .error_name            = "OB_ERR_AUTONOMOUS_TRANSACTION_ROLLBACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "active autonomous transaction detected and rolled back",
 | 
						|
      .str_user_error        = "active autonomous transaction detected and rolled back",
 | 
						|
      .oracle_errno          = 6519,
 | 
						|
      .oracle_str_error      = "ORA-06519: active autonomous transaction detected and rolled back",
 | 
						|
      .oracle_str_user_error = "ORA-06519: active autonomous transaction detected and rolled back"
 | 
						|
};
 | 
						|
static const _error _error_OB_ORDERBY_CLAUSE_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ORDERBY_CLAUSE_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ORDER BY not allowed here",
 | 
						|
      .str_user_error        = "ORDER BY not allowed here",
 | 
						|
      .oracle_errno          = 30487,
 | 
						|
      .oracle_str_error      = "ORA-30487: ORDER BY not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-30487: ORDER BY not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_DISTINCT_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_DISTINCT_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DISTINCT not allowed here",
 | 
						|
      .str_user_error        = "DISTINCT not allowed here",
 | 
						|
      .oracle_errno          = 30482,
 | 
						|
      .oracle_str_error      = "ORA-30482: DISTINCT not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-30482: DISTINCT not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ASSIGN_USER_VARIABLE_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_ASSIGN_USER_VARIABLE_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "assign user variable with := only allowed in select filed list and as root expression",
 | 
						|
      .str_user_error        = "assign user variable with := only allowed in select filed list and as root expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5799, assign user variable with := only allowed in select filed list and as root expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5799, assign user variable with := only allowed in select filed list and as root expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_NONEXISTENT_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_NONEXISTENT_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot modify constraint - no such constraint",
 | 
						|
      .str_user_error        = "cannot modify constraint (%.*s) - no such constraint",
 | 
						|
      .oracle_errno          = 25129,
 | 
						|
      .oracle_str_error      = "ORA-25129: cannot modify constraint - no such constraint",
 | 
						|
      .oracle_str_user_error = "ORA-25129: cannot modify constraint (%.*s) - no such constraint"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SP_EXCEPTION_HANDLE_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_SP_EXCEPTION_HANDLE_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "implementation restriction: exception handler in nested transaction is illegal",
 | 
						|
      .str_user_error        = "implementation restriction: exception handler in nested transaction is illegal",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5801, implementation restriction: exception handler in nested transaction is illegal",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5801, implementation restriction: exception handler in nested transaction is illegal"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_ROWID = {
 | 
						|
      .error_name            = "OB_INVALID_ROWID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid ROWID",
 | 
						|
      .str_user_error        = "invalid ROWID",
 | 
						|
      .oracle_errno          = 1410,
 | 
						|
      .oracle_str_error      = "ORA-01410: invalid ROWID",
 | 
						|
      .oracle_str_user_error = "ORA-01410: invalid ROWID"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_INSERT_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_INSERT_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid column in the INSERT VALUES Clause",
 | 
						|
      .str_user_error        = "Invalid column in the INSERT VALUES Clause:'%.*s'.'%.*s'",
 | 
						|
      .oracle_errno          = 38101,
 | 
						|
      .oracle_str_error      = "ORA-38101: Invalid column in the INSERT VALUES Clause",
 | 
						|
      .oracle_str_user_error = "ORA-38101: Invalid column in the INSERT VALUES Clause:'%.*s'.'%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_INCORRECT_USE_OF_OPERATOR = {
 | 
						|
      .error_name            = "OB_INCORRECT_USE_OF_OPERATOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "incorrect use of operator",
 | 
						|
      .str_user_error        = "incorrect use of the ['%.*s'] operator",
 | 
						|
      .oracle_errno          = 13207,
 | 
						|
      .oracle_str_error      = "ORA-13207: incorrect use of operator",
 | 
						|
      .oracle_str_user_error = "ORA-13207: incorrect use of the ['%.*s'] operator"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NON_CONST_EXPR_IS_NOT_ALLOWED_FOR_PIVOT_UNPIVOT_VALUES = {
 | 
						|
      .error_name            = "OB_ERR_NON_CONST_EXPR_IS_NOT_ALLOWED_FOR_PIVOT_UNPIVOT_VALUES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "non-constant expression is not allowed for pivot|unpivot values",
 | 
						|
      .str_user_error        = "non-constant expression is not allowed for pivot|unpivot values",
 | 
						|
      .oracle_errno          = 56901,
 | 
						|
      .oracle_str_error      = "ORA-56901: non-constant expression is not allowed for pivot|unpivot values",
 | 
						|
      .oracle_str_user_error = "ORA-56901: non-constant expression is not allowed for pivot|unpivot values"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXPECT_AGGREGATE_FUNCTION_INSIDE_PIVOT_OPERATION = {
 | 
						|
      .error_name            = "OB_ERR_EXPECT_AGGREGATE_FUNCTION_INSIDE_PIVOT_OPERATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expect aggregate function inside pivot operation",
 | 
						|
      .str_user_error        = "expect aggregate function inside pivot operation",
 | 
						|
      .oracle_errno          = 56902,
 | 
						|
      .oracle_str_error      = "ORA-56902: expect aggregate function inside pivot operation",
 | 
						|
      .oracle_str_user_error = "ORA-56902: expect aggregate function inside pivot operation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXP_NEED_SAME_DATATYPE = {
 | 
						|
      .error_name            = "OB_ERR_EXP_NEED_SAME_DATATYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expression must have same datatype as corresponding expression",
 | 
						|
      .str_user_error        = "expression must have same datatype as corresponding expression",
 | 
						|
      .oracle_errno          = 1790,
 | 
						|
      .oracle_str_error      = "ORA-01790: expression must have same datatype as corresponding expression",
 | 
						|
      .oracle_str_user_error = "ORA-01790: expression must have same datatype as corresponding expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHARACTER_SET_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_CHARACTER_SET_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "character set mismatch",
 | 
						|
      .str_user_error        = "character set mismatch",
 | 
						|
      .oracle_errno          = 12704,
 | 
						|
      .oracle_str_error      = "ORA-12704: character set mismatch",
 | 
						|
      .oracle_str_user_error = "ORA-12704: character set mismatch"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_NOMATCH = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_NOMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "regular expression failed to match",
 | 
						|
      .str_user_error        = "regular expression failed to match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5809, regular expression failed to match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5809, regular expression failed to match"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_BADPAT = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_BADPAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid regular expression (reg version 0.8)",
 | 
						|
      .str_user_error        = "invalid regular expression (reg version 0.8)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5810, invalid regular expression (reg version 0.8)",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5810, invalid regular expression (reg version 0.8)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_EESCAPE = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_EESCAPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid escape \\ sequence in regular expression",
 | 
						|
      .str_user_error        = "invalid escape \\ sequence in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5811, invalid escape \\ sequence in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5811, invalid escape \\ sequence in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_EBRACK = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_EBRACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unmatched bracket in regular expression",
 | 
						|
      .str_user_error        = "unmatched bracket in regular expression",
 | 
						|
      .oracle_errno          = 12726,
 | 
						|
      .oracle_str_error      = "ORA-12726: unmatched bracket in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-12726: unmatched bracket in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_EPAREN = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_EPAREN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unmatched parentheses in regular expression",
 | 
						|
      .str_user_error        = "unmatched parentheses in regular expression",
 | 
						|
      .oracle_errno          = 12725,
 | 
						|
      .oracle_str_error      = "ORA-12725: unmatched parentheses in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-12725: unmatched parentheses in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ESUBREG = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ESUBREG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid back reference in regular expression",
 | 
						|
      .str_user_error        = "invalid back reference in regular expression",
 | 
						|
      .oracle_errno          = 12727,
 | 
						|
      .oracle_str_error      = "ORA-12727: invalid back reference in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-12727: invalid back reference in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ERANGE = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ERANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid range in regular expression",
 | 
						|
      .str_user_error        = "invalid range in regular expression",
 | 
						|
      .oracle_errno          = 12728,
 | 
						|
      .oracle_str_error      = "ORA-12728: invalid range in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-12728: invalid range in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ECTYPE = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ECTYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid character class in regular expression",
 | 
						|
      .str_user_error        = "invalid character class in regular expression",
 | 
						|
      .oracle_errno          = 12729,
 | 
						|
      .oracle_str_error      = "ORA-12729: invalid character class in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-12729: invalid character class in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ECOLLATE = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ECOLLATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid collation class in regular expression",
 | 
						|
      .str_user_error        = "invalid collation class in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5817, invalid collation class in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5817, invalid collation class in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_EBRACE = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_EBRACE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "braces {} not balanced in in regular expression",
 | 
						|
      .str_user_error        = "braces {} not balanced in in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5818, braces {} not balanced in in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5818, braces {} not balanced in in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_BADBR = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_BADBR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid repetition count(s) in regular expression",
 | 
						|
      .str_user_error        = "invalid repetition count(s) in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5819, invalid repetition count(s) in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5819, invalid repetition count(s) in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_BADRPT = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_BADRPT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The regular expression was too complex and current library can't be parsed",
 | 
						|
      .str_user_error        = "The regular expression was too complex and current library can't be parsed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5820, The regular expression was too complex and current library can't be parsed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5820, The regular expression was too complex and current library can't be parsed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ASSERT = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ASSERT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "regular expression internal error",
 | 
						|
      .str_user_error        = "regular expression internal error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5821, regular expression internal error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5821, regular expression internal error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_INVARG = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_INVARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid argument in regular expression",
 | 
						|
      .str_user_error        = "invalid argument in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5822, invalid argument in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5822, invalid argument in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_MIXED = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_MIXED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "character widths of regex and string differ in regular expression",
 | 
						|
      .str_user_error        = "character widths of regex and string differ in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5823, character widths of regex and string differ in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5823, character widths of regex and string differ in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_BADOPT = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_BADOPT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid embedded option in regular expression",
 | 
						|
      .str_user_error        = "invalid embedded option in regular expression",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5824, invalid embedded option in regular expression",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5824, invalid embedded option in regular expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REGEXP_ETOOBIG = {
 | 
						|
      .error_name            = "OB_ERR_REGEXP_ETOOBIG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "nfa has too many states in regular expression, may be the regular expression too long",
 | 
						|
      .str_user_error        = "nfa has too many states in regular expression, may be the regular expression too long",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5825, nfa has too many states in regular expression, may be the regular expression too long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5825, nfa has too many states in regular expression, may be the regular expression too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_SUPPORTED_ROWID_TYPE = {
 | 
						|
      .error_name            = "OB_NOT_SUPPORTED_ROWID_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ROWID for tables without primary key is not implemented",
 | 
						|
      .str_user_error        = "ROWID for tables without primary key is not implemented",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5826, ROWID for tables without primary key is not implemented",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5826, ROWID for tables without primary key is not implemented"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARALLEL_DDL_CONFLICT = {
 | 
						|
      .error_name            = "OB_ERR_PARALLEL_DDL_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the definition of relative objects have been modified, please check and retry",
 | 
						|
      .str_user_error        = "the definition of relative objects have been modified, please check and retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5827, the definition of relative objects have been modified, please check and retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5827, the definition of relative objects have been modified, please check and retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SUBSCRIPT_BEYOND_COUNT = {
 | 
						|
      .error_name            = "OB_ERR_SUBSCRIPT_BEYOND_COUNT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Subscript beyond count",
 | 
						|
      .str_user_error        = "Subscript beyond count",
 | 
						|
      .oracle_errno          = 6533,
 | 
						|
      .oracle_str_error      = "ORA-06533: Subscript beyond count",
 | 
						|
      .oracle_str_user_error = "ORA-06533: Subscript beyond count"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_PARTITIONED = {
 | 
						|
      .error_name            = "OB_ERR_NOT_PARTITIONED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PARTITION () clause on non partitioned table",
 | 
						|
      .str_user_error        = "PARTITION () clause on non partitioned table",
 | 
						|
      .oracle_errno          = 14501,
 | 
						|
      .oracle_str_error      = "ORA-14501: object is not partitioned",
 | 
						|
      .oracle_str_user_error = "ORA-14501: object is not partitioned"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNKNOWN_SUBPARTITION = {
 | 
						|
      .error_name            = "OB_UNKNOWN_SUBPARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown subpartition",
 | 
						|
      .str_user_error        = "Unknown subpartition",
 | 
						|
      .oracle_errno          = 14251,
 | 
						|
      .oracle_str_error      = "ORA-14251: Specified subpartition does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-14251: Specified subpartition does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SQL_ROW_LIMITING = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SQL_ROW_LIMITING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid SQL ROW LIMITING expression was specified.",
 | 
						|
      .str_user_error        = "Invalid SQL ROW LIMITING expression was specified.",
 | 
						|
      .oracle_errno          = 62550,
 | 
						|
      .oracle_str_error      = "ORA-62550: Invalid SQL ROW LIMITING expression was specified.",
 | 
						|
      .oracle_str_user_error = "ORA-62550: Invalid SQL ROW LIMITING expression was specified."
 | 
						|
};
 | 
						|
static const _error _error_INCORRECT_ARGUMENTS_TO_ESCAPE = {
 | 
						|
      .error_name            = "INCORRECT_ARGUMENTS_TO_ESCAPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_ARGUMENTS,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect arguments to ESCAPE",
 | 
						|
      .str_user_error        = "Incorrect arguments to ESCAPE",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5832, Incorrect arguments to ESCAPE",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5832, Incorrect arguments to ESCAPE"
 | 
						|
};
 | 
						|
static const _error _error_STATIC_ENG_NOT_IMPLEMENT = {
 | 
						|
      .error_name            = "STATIC_ENG_NOT_IMPLEMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not implemented in SQL static typing engine, will try the old engine automatically",
 | 
						|
      .str_user_error        = "not implemented in SQL static typing engine, will try the old engine automatically",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5833, not implemented in SQL static typing engine, will try the old engine automatically",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5833, not implemented in SQL static typing engine, will try the old engine automatically"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_ALREADY_EXIST = {
 | 
						|
      .error_name            = "OB_OBJ_ALREADY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "name is already used by an existing object",
 | 
						|
      .str_user_error        = "name is already used by an existing object",
 | 
						|
      .oracle_errno          = 955,
 | 
						|
      .oracle_str_error      = "ORA-00955: name is already used by an existing object",
 | 
						|
      .oracle_str_user_error = "ORA-00955: name is already used by an existing object"
 | 
						|
};
 | 
						|
static const _error _error_OB_DBLINK_NOT_EXIST_TO_ACCESS = {
 | 
						|
      .error_name            = "OB_DBLINK_NOT_EXIST_TO_ACCESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "connection description for remote database not found",
 | 
						|
      .str_user_error        = "connection description for remote database not found",
 | 
						|
      .oracle_errno          = 2019,
 | 
						|
      .oracle_str_error      = "ORA-02019: connection description for remote database not found",
 | 
						|
      .oracle_str_user_error = "ORA-02019: connection description for remote database not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_DBLINK_NOT_EXIST_TO_DROP = {
 | 
						|
      .error_name            = "OB_DBLINK_NOT_EXIST_TO_DROP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "database link not found",
 | 
						|
      .str_user_error        = "database link not found",
 | 
						|
      .oracle_errno          = 2024,
 | 
						|
      .oracle_str_error      = "ORA-02024: database link not found",
 | 
						|
      .oracle_str_user_error = "ORA-02024: database link not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ACCESS_INTO_NULL = {
 | 
						|
      .error_name            = "OB_ERR_ACCESS_INTO_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Reference to uninitialized composite",
 | 
						|
      .str_user_error        = "Reference to uninitialized composite",
 | 
						|
      .oracle_errno          = 6530,
 | 
						|
      .oracle_str_error      = "ORA-06530: Reference to uninitialized composite",
 | 
						|
      .oracle_str_user_error = "ORA-06530: Reference to uninitialized composite"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLLECION_NULL = {
 | 
						|
      .error_name            = "OB_ERR_COLLECION_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Reference to uninitialized collection",
 | 
						|
      .str_user_error        = "Reference to uninitialized collection",
 | 
						|
      .oracle_errno          = 6531,
 | 
						|
      .oracle_str_error      = "ORA-06531: Reference to uninitialized collection",
 | 
						|
      .oracle_str_user_error = "ORA-06531: Reference to uninitialized collection"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_DATA_NEEDED = {
 | 
						|
      .error_name            = "OB_ERR_NO_DATA_NEEDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no more rows needed",
 | 
						|
      .str_user_error        = "no more rows needed",
 | 
						|
      .oracle_errno          = 6548,
 | 
						|
      .oracle_str_error      = "ORA-06548: no more rows needed",
 | 
						|
      .oracle_str_user_error = "ORA-06548: no more rows needed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROGRAM_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_PROGRAM_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL: program error",
 | 
						|
      .str_user_error        = "PL/SQL: program error",
 | 
						|
      .oracle_errno          = 6501,
 | 
						|
      .oracle_str_error      = "ORA-06501: PL/SQL: program error",
 | 
						|
      .oracle_str_user_error = "ORA-06501: PL/SQL: program error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ROWTYPE_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_ROWTYPE_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL: Return types of Result Set variables or query do not match",
 | 
						|
      .str_user_error        = "PL/SQL: Return types of Result Set variables or query do not match",
 | 
						|
      .oracle_errno          = 6504,
 | 
						|
      .oracle_str_error      = "ORA-06504: PL/SQL: Return types of Result Set variables or query do not match",
 | 
						|
      .oracle_str_user_error = "ORA-06504: PL/SQL: Return types of Result Set variables or query do not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STORAGE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_STORAGE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL: storage error",
 | 
						|
      .str_user_error        = "PL/SQL: storage error",
 | 
						|
      .oracle_errno          = 6500,
 | 
						|
      .oracle_str_error      = "ORA-06500: PL/SQL: storage error",
 | 
						|
      .oracle_str_user_error = "ORA-06500: PL/SQL: storage error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SUBSCRIPT_OUTSIDE_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_SUBSCRIPT_OUTSIDE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Subscript outside of limit",
 | 
						|
      .str_user_error        = "Subscript outside of limit",
 | 
						|
      .oracle_errno          = 6532,
 | 
						|
      .oracle_str_error      = "ORA-06532: Subscript outside of limit",
 | 
						|
      .oracle_str_user_error = "ORA-06532: Subscript outside of limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CURSOR = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CURSOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid cursor",
 | 
						|
      .str_user_error        = "invalid cursor",
 | 
						|
      .oracle_errno          = 1001,
 | 
						|
      .oracle_str_error      = "ORA-01001: invalid cursor",
 | 
						|
      .oracle_str_user_error = "ORA-01001: invalid cursor"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LOGIN_DENIED = {
 | 
						|
      .error_name            = "OB_ERR_LOGIN_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid username/password; logon denied",
 | 
						|
      .str_user_error        = "invalid username/password; logon denied",
 | 
						|
      .oracle_errno          = 1017,
 | 
						|
      .oracle_str_error      = "ORA-01017: invalid username/password; logon deniedd",
 | 
						|
      .oracle_str_user_error = "ORA-01017: invalid username/password; logon deniedd"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_LOGGED_ON = {
 | 
						|
      .error_name            = "OB_ERR_NOT_LOGGED_ON",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not logged on",
 | 
						|
      .str_user_error        = "not logged on",
 | 
						|
      .oracle_errno          = 1012,
 | 
						|
      .oracle_str_error      = "ORA-01012: not logged on",
 | 
						|
      .oracle_str_user_error = "ORA-01012: not logged on"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SELF_IS_NULL = {
 | 
						|
      .error_name            = "OB_ERR_SELF_IS_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "method dispatch on NULL SELF argument is disallowed",
 | 
						|
      .str_user_error        = "method dispatch on NULL SELF argument is disallowed",
 | 
						|
      .oracle_errno          = 30625,
 | 
						|
      .oracle_str_error      = "ORA-30625: method dispatch on NULL SELF argument is disallowed",
 | 
						|
      .oracle_str_user_error = "ORA-30625: method dispatch on NULL SELF argument is disallowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TIMEOUT_ON_RESOURCE = {
 | 
						|
      .error_name            = "OB_ERR_TIMEOUT_ON_RESOURCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "timeout occurred while waiting for a resource",
 | 
						|
      .str_user_error        = "timeout occurred while waiting for a resource",
 | 
						|
      .oracle_errno          = 51,
 | 
						|
      .oracle_str_error      = "ORA-00051: timeout occurred while waiting for a resource",
 | 
						|
      .oracle_str_user_error = "ORA-00051: timeout occurred while waiting for a resource"
 | 
						|
};
 | 
						|
static const _error _error_OB_COLUMN_CANT_CHANGE_TO_NOT_NULL = {
 | 
						|
      .error_name            = "OB_COLUMN_CANT_CHANGE_TO_NOT_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column to be modified to NOT NULL is already NOT NULL",
 | 
						|
      .str_user_error        = "column to be modified to NOT NULL is already NOT NULL",
 | 
						|
      .oracle_errno          = 1442,
 | 
						|
      .oracle_str_error      = "ORA-01442: column to be modified to NOT NULL is already NOT NULL",
 | 
						|
      .oracle_str_user_error = "ORA-01442: column to be modified to NOT NULL is already NOT NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_COLUMN_CANT_CHANGE_TO_NULLALE = {
 | 
						|
      .error_name            = "OB_COLUMN_CANT_CHANGE_TO_NULLALE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column to be modified to NULL cannot be modified to NULL",
 | 
						|
      .str_user_error        = "column to be modified to NULL cannot be modified to NULL",
 | 
						|
      .oracle_errno          = 1451,
 | 
						|
      .oracle_str_error      = "ORA-01451: column to be modified to NULL cannot be modified to NULL",
 | 
						|
      .oracle_str_user_error = "ORA-01451: column to be modified to NULL cannot be modified to NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ENABLE_NOT_NULL_CONSTRAINT_VIOLATED = {
 | 
						|
      .error_name            = "OB_ENABLE_NOT_NULL_CONSTRAINT_VIOLATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot enable - null values found",
 | 
						|
      .str_user_error        = "cannot enable (%.*s.%.*s) - null values found",
 | 
						|
      .oracle_errno          = 2296,
 | 
						|
      .oracle_str_error      = "ORA-02296: cannot enable - null values found",
 | 
						|
      .oracle_str_user_error = "ORA-02296: cannot enable (%.*s.%.*s) - null values found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ARGUMENT_SHOULD_CONSTANT = {
 | 
						|
      .error_name            = "OB_ERR_ARGUMENT_SHOULD_CONSTANT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Argument should be a constant.",
 | 
						|
      .str_user_error        = "Argument should be a constant.",
 | 
						|
      .oracle_errno          = 30496,
 | 
						|
      .oracle_str_error      = "ORA-30496: Argument should be a constant.",
 | 
						|
      .oracle_str_user_error = "ORA-30496: Argument should be a constant."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_A_SINGLE_GROUP_FUNCTION = {
 | 
						|
      .error_name            = "OB_ERR_NOT_A_SINGLE_GROUP_FUNCTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not a single-group group function",
 | 
						|
      .str_user_error        = "not a single-group group function",
 | 
						|
      .oracle_errno          = 937,
 | 
						|
      .oracle_str_error      = "ORA-00937: not a single-group group function",
 | 
						|
      .oracle_str_user_error = "ORA-00937: not a single-group group function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ZERO_LENGTH_IDENTIFIER = {
 | 
						|
      .error_name            = "OB_ERR_ZERO_LENGTH_IDENTIFIER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal zero-length identifier",
 | 
						|
      .str_user_error        = "illegal zero-length identifier",
 | 
						|
      .oracle_errno          = 1741,
 | 
						|
      .oracle_str_error      = "ORA-01741: illegal zero-length identifier",
 | 
						|
      .oracle_str_user_error = "ORA-01741: illegal zero-length identifier"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARAM_VALUE_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_PARAM_VALUE_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "parameter cannot be modified because specified value is invalid",
 | 
						|
      .str_user_error        = "parameter cannot be modified because specified value is invalid",
 | 
						|
      .oracle_errno          = 2097,
 | 
						|
      .oracle_str_error      = "ORA-02097: parameter cannot be modified because specified value is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-02097: parameter cannot be modified because specified value is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DBMS_SQL_CURSOR_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_DBMS_SQL_CURSOR_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DBMS_SQL access denied",
 | 
						|
      .str_user_error        = "DBMS_SQL access denied",
 | 
						|
      .oracle_errno          = 29471,
 | 
						|
      .oracle_str_error      = "ORA-29471: DBMS_SQL access denied",
 | 
						|
      .oracle_str_user_error = "ORA-29471: DBMS_SQL access denied"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DBMS_SQL_NOT_ALL_VAR_BIND = {
 | 
						|
      .error_name            = "OB_ERR_DBMS_SQL_NOT_ALL_VAR_BIND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not all variables bound",
 | 
						|
      .str_user_error        = "not all variables bound",
 | 
						|
      .oracle_errno          = 1008,
 | 
						|
      .oracle_str_error      = "ORA-01008: not all variables bound",
 | 
						|
      .oracle_str_user_error = "ORA-01008: not all variables bound"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONFLICTING_DECLARATIONS = {
 | 
						|
      .error_name            = "OB_ERR_CONFLICTING_DECLARATIONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CONFLICTING_DECLARATIONS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Conflicting declarations",
 | 
						|
      .str_user_error        = "Conflicting declarations: '%s' and '%s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5858, Conflicting declarations",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5858, Conflicting declarations: '%s' and '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DROP_COL_REFERENCED_MULTI_COLS_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_DROP_COL_REFERENCED_MULTI_COLS_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DEPENDENT_BY_CHECK_CONSTRAINT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column is referenced in a multi-column constraint",
 | 
						|
      .str_user_error        = "Check constraint \'%.*s\' uses column \'%.*s\', hence column cannot be dropped or renamed.",
 | 
						|
      .oracle_errno          = 12991,
 | 
						|
      .oracle_str_error      = "ORA-12991: column is referenced in a multi-column constraint",
 | 
						|
      .oracle_str_user_error = "ORA-12991: column \'%.*s\' is referenced in a multi-column constraint \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_COL_DATATYEP_REFERENCED_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_COL_DATATYEP_REFERENCED_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot modify column datatype with current constraint(s)",
 | 
						|
      .str_user_error        = "cannot modify column datatype with current constraint(s)",
 | 
						|
      .oracle_errno          = 1463,
 | 
						|
      .oracle_str_error      = "ORA-01463: cannot modify column datatype with current constraint(s)",
 | 
						|
      .oracle_str_user_error = "ORA-01463: cannot modify column datatype with current constraint(s)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PERCENTILE_VALUE_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_PERCENTILE_VALUE_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The percentile value should be a number between 0 and 1.",
 | 
						|
      .str_user_error        = "The percentile value should be a number between 0 and 1.",
 | 
						|
      .oracle_errno          = 30493,
 | 
						|
      .oracle_str_error      = "ORA-30493: The percentile value should be a number between 0 and 1.",
 | 
						|
      .oracle_str_user_error = "ORA-30493: The percentile value should be a number between 0 and 1."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ARGUMENT_SHOULD_NUMERIC_DATE_DATETIME_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_ARGUMENT_SHOULD_NUMERIC_DATE_DATETIME_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The argument should be of numeric or date/datetime type.",
 | 
						|
      .str_user_error        = "The argument should be of numeric or date/datetime type.",
 | 
						|
      .oracle_errno          = 30495,
 | 
						|
      .oracle_str_error      = "ORA-30495: The argument should be of numeric or date/datetime type.",
 | 
						|
      .oracle_str_user_error = "ORA-30495: The argument should be of numeric or date/datetime type."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_TABLE_RENAME_WITH_OPTION = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_TABLE_RENAME_WITH_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ALTER TABLE|INDEX RENAME may not be combined with other operations",
 | 
						|
      .str_user_error        = "ALTER TABLE|INDEX RENAME may not be combined with other operations",
 | 
						|
      .oracle_errno          = 14047,
 | 
						|
      .oracle_str_error      = "ORA-14047: ALTER TABLE|INDEX RENAME may not be combined with other operations",
 | 
						|
      .oracle_str_user_error = "ORA-14047: ALTER TABLE|INDEX RENAME may not be combined with other operations"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_SIMPLE_COLUMN_NAME_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_SIMPLE_COLUMN_NAME_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "only simple column names allowed here.",
 | 
						|
      .str_user_error        = "only simple column names allowed here.",
 | 
						|
      .oracle_errno          = 1748,
 | 
						|
      .oracle_str_error      = "ORA-01748: only simple column names allowed here.",
 | 
						|
      .oracle_str_user_error = "ORA-01748: only simple column names allowed here."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SAFE_UPDATE_MODE_NEED_WHERE_OR_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_SAFE_UPDATE_MODE_NEED_WHERE_OR_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column",
 | 
						|
      .str_user_error        = "You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5865, You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5865, You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SPECIFIY_PARTITION_DESCRIPTION = {
 | 
						|
      .error_name            = "OB_ERR_SPECIFIY_PARTITION_DESCRIPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot specify <(sub)partition-description> clause in CREATE TABLE or CREATE INDEX",
 | 
						|
      .str_user_error        = "cannot specify <(sub)partition-description> clause in CREATE TABLE or CREATE INDEX",
 | 
						|
      .oracle_errno          = 14170,
 | 
						|
      .oracle_str_error      = "ORA-14170: cannot specify <(sub)partition-description> clause in CREATE TABLE or CREATE INDEX",
 | 
						|
      .oracle_str_user_error = "ORA-14170: cannot specify <(sub)partition-description> clause in CREATE TABLE or CREATE INDEX"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SAME_NAME_SUBPARTITION = {
 | 
						|
      .error_name            = "OB_ERR_SAME_NAME_SUBPARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate partition name",
 | 
						|
      .str_user_error        = "Duplicate partition name %.*s",
 | 
						|
      .oracle_errno          = 14159,
 | 
						|
      .oracle_str_error      = "ORA-14159: duplicate subpartition name",
 | 
						|
      .oracle_str_user_error = "ORA-14159: duplicate subpartition name %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_ORDER_BY = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_ORDER_BY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect usage of UPDATE and ORDER BY",
 | 
						|
      .str_user_error        = "Incorrect usage of UPDATE and ORDER BY",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5868, Incorrect usage of UPDATE and ORDER BY",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5868, Incorrect usage of UPDATE and ORDER BY"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect usage of UPDATE and LIMIT",
 | 
						|
      .str_user_error        = "Incorrect usage of UPDATE and LIMIT",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5869, Incorrect usage of UPDATE and LIMIT",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5869, Incorrect usage of UPDATE and LIMIT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROWID_TYPE_MISMATCH = {
 | 
						|
      .error_name            = "OB_ROWID_TYPE_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rowid type mismatch",
 | 
						|
      .str_user_error        = "rowid type mismatch, expect %.*s, got %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: rowid type mismatch",
 | 
						|
      .oracle_str_user_error = "ORA-00600: rowid type mismatch, expect %.*s, got %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROWID_NUM_MISMATCH = {
 | 
						|
      .error_name            = "OB_ROWID_NUM_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rowid num mismatch",
 | 
						|
      .str_user_error        = "rowid num mismatch, expect %ld, actual %ld",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: rowid num mismatch",
 | 
						|
      .oracle_str_user_error = "ORA-00600: rowid num mismatch, expect %ld, actual %ld"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_COLUMN_ALIAS = {
 | 
						|
      .error_name            = "OB_NO_COLUMN_ALIAS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "must name this expression with a column alias",
 | 
						|
      .str_user_error        = "must name %.*s with a column alias",
 | 
						|
      .oracle_errno          = 998,
 | 
						|
      .oracle_str_error      = "ORA-00998: must name this expression with a column alias",
 | 
						|
      .oracle_str_user_error = "ORA-00998: must name %.*s with a column alias"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NUMERIC_NOT_MATCH_FORMAT_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_NUMERIC_NOT_MATCH_FORMAT_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the numeric value does not match the length of the format item",
 | 
						|
      .str_user_error        = "the numeric value does not match the length of the format item",
 | 
						|
      .oracle_errno          = 1862,
 | 
						|
      .oracle_str_error      = "ORA-01862: the numeric value does not match the length of the format item",
 | 
						|
      .oracle_str_user_error = "ORA-01862: the numeric value does not match the length of the format item"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_DATATYPE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_DATATYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid datatype",
 | 
						|
      .str_user_error        = "invalid datatype",
 | 
						|
      .oracle_errno          = 902,
 | 
						|
      .oracle_str_error      = "ORA-00902: invalid datatype",
 | 
						|
      .oracle_str_user_error = "ORA-00902: invalid datatype"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_COMPOSITE_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_NOT_COMPOSITE_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table is not partitioned by composite partition method",
 | 
						|
      .str_user_error        = "table is not partitioned by composite partition method",
 | 
						|
      .oracle_errno          = 14253,
 | 
						|
      .oracle_str_error      = "ORA-14253: table is not partitioned by composite partition method",
 | 
						|
      .oracle_str_user_error = "ORA-14253: table is not partitioned by composite partition method"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SUBPARTITION_NOT_EXPECT_VALUES_IN = {
 | 
						|
      .error_name            = "OB_ERR_SUBPARTITION_NOT_EXPECT_VALUES_IN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "VALUES IN (<value list>) cannot be used for Range subpartitioned tables",
 | 
						|
      .str_user_error        = "VALUES IN (<value list>) cannot be used for Range subpartitioned tables",
 | 
						|
      .oracle_errno          = 14214,
 | 
						|
      .oracle_str_error      = "ORA-14214: VALUES (<value list>) cannot be used for Range subpartitioned tables",
 | 
						|
      .oracle_str_user_error = "ORA-14214: VALUES (<value list>) cannot be used for Range subpartitioned tables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SUBPARTITION_EXPECT_VALUES_IN = {
 | 
						|
      .error_name            = "OB_ERR_SUBPARTITION_EXPECT_VALUES_IN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "VALUES IN (<value list>) clause expected",
 | 
						|
      .str_user_error        = "VALUES IN (<value list>) clause expected",
 | 
						|
      .oracle_errno          = 14217,
 | 
						|
      .oracle_str_error      = "ORA-14217: VALUES (<value list>) clause expected",
 | 
						|
      .oracle_str_user_error = "ORA-14217: VALUES (<value list>) clause expected"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_NOT_EXPECT_VALUES_LESS_THAN = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_NOT_EXPECT_VALUES_LESS_THAN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "VALUES LESS THAN or AT clause cannot be used with List partitioned tables",
 | 
						|
      .str_user_error        = "VALUES LESS THAN or AT clause cannot be used with List partitioned tables",
 | 
						|
      .oracle_errno          = 14310,
 | 
						|
      .oracle_str_error      = "ORA-14310: VALUES LESS THAN or AT clause cannot be used with List partitioned tables",
 | 
						|
      .oracle_str_user_error = "ORA-14310: VALUES LESS THAN or AT clause cannot be used with List partitioned tables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_EXPECT_VALUES_LESS_THAN = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_EXPECT_VALUES_LESS_THAN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Expecting VALUES LESS THAN  or AT clause",
 | 
						|
      .str_user_error        = "Expecting VALUES LESS THAN  or AT clause",
 | 
						|
      .oracle_errno          = 14311,
 | 
						|
      .oracle_str_error      = "ORA-14311: Expecting VALUES LESS THAN  or AT clause",
 | 
						|
      .oracle_str_user_error = "ORA-14311: Expecting VALUES LESS THAN  or AT clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PROGRAM_UNIT_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_PROGRAM_UNIT_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Procedure, function, package, or package body does not exist",
 | 
						|
      .str_user_error        = "Procedure, function, package, or package body does not exist",
 | 
						|
      .oracle_errno          = 4042,
 | 
						|
      .oracle_str_error      = "ORA-04042: procedure, function, package, or package body does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-04042: procedure, function, package, or package body does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_RESTORE_POINT_NAME = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_RESTORE_POINT_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid restore point name specified in connection string",
 | 
						|
      .str_user_error        = "invalid restore point name specified in connection string",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5881, invalid restore point name specified in connection string",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5881, invalid restore point name specified in connection string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INPUT_TIME_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_INPUT_TIME_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid time limit specified",
 | 
						|
      .str_user_error        = "invalid time limit specified",
 | 
						|
      .oracle_errno          = 14312,
 | 
						|
      .oracle_str_error      = "ORA-14312: invalid time limit specified",
 | 
						|
      .oracle_str_user_error = "ORA-14312: invalid time limit specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IN_ARRAY_DML = {
 | 
						|
      .error_name            = "OB_ERR_IN_ARRAY_DML",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "error(s) in array DML",
 | 
						|
      .str_user_error        = "error(s) in array DML",
 | 
						|
      .oracle_errno          = 24381,
 | 
						|
      .oracle_str_error      = "ORA-24381: error(s) in array DML",
 | 
						|
      .oracle_str_user_error = "ORA-24381: error(s) in array DML"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_COMPILE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_COMPILE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "trigger compile error",
 | 
						|
      .str_user_error        = "%s \'%.*s.%.*s\' compile error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5884, trigger compile error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5884, %s \'%.*s.%.*s\' compile error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IN_TRIM_SET = {
 | 
						|
      .error_name            = "OB_ERR_IN_TRIM_SET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "trim set should have only one character",
 | 
						|
      .str_user_error        = "trim set should have only one character",
 | 
						|
      .oracle_errno          = 30001,
 | 
						|
      .oracle_str_error      = "ORA-30001: trim set should have only one character",
 | 
						|
      .oracle_str_user_error = "ORA-30001: trim set should have only one character"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_OR_INVALID_PASSWORD_FOR_ROLE = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_OR_INVALID_PASSWORD_FOR_ROLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing or invalid password",
 | 
						|
      .str_user_error        = "missing or invalid password for role '%.*s'",
 | 
						|
      .oracle_errno          = 1979,
 | 
						|
      .oracle_str_error      = "ORA-01979: missing or invalid password",
 | 
						|
      .oracle_str_user_error = "ORA-01979: missing or invalid password for role '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_OR_INVALID_PASSWORD = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_OR_INVALID_PASSWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing or invalid password(s)",
 | 
						|
      .str_user_error        = "missing or invalid password(s)",
 | 
						|
      .oracle_errno          = 988,
 | 
						|
      .oracle_str_error      = "ORA-00988: missing or invalid password(s)",
 | 
						|
      .oracle_str_user_error = "ORA-00988: missing or invalid password(s)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_OPTIONS_FOR_ALTER_USER = {
 | 
						|
      .error_name            = "OB_ERR_NO_OPTIONS_FOR_ALTER_USER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no options specified for ALTER USER",
 | 
						|
      .str_user_error        = "no options specified for ALTER USER",
 | 
						|
      .oracle_errno          = 2157,
 | 
						|
      .oracle_str_error      = "ORA-02157: no options specified for ALTER USER",
 | 
						|
      .oracle_str_user_error = "ORA-02157: no options specified for ALTER USER"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_MATCHING_UK_PK_FOR_COL_LIST = {
 | 
						|
      .error_name            = "OB_ERR_NO_MATCHING_UK_PK_FOR_COL_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no matching unique or primary key for this column-list",
 | 
						|
      .str_user_error        = "no matching unique or primary key for this column-list",
 | 
						|
      .oracle_errno          = 2270,
 | 
						|
      .oracle_str_error      = "ORA-02270: no matching unique or primary key for this column-list",
 | 
						|
      .oracle_str_user_error = "ORA-02270: no matching unique or primary key for this column-list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_FK_IN_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_DUP_FK_IN_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate referential constraint specifications",
 | 
						|
      .str_user_error        = "duplicate referential constraint specifications",
 | 
						|
      .oracle_errno          = 2774,
 | 
						|
      .oracle_str_error      = "ORA-02774: duplicate referential constraint specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02774: duplicate referential constraint specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_FK_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_DUP_FK_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "such a referential constraint already exists in the table",
 | 
						|
      .str_user_error        = "such a referential constraint already exists in the table",
 | 
						|
      .oracle_errno          = 2775,
 | 
						|
      .oracle_str_error      = "ORA-02775: such a referential constraint already exists in the table",
 | 
						|
      .oracle_str_user_error = "ORA-02775: such a referential constraint already exists in the table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_OR_INVALID_PRIVIEGE = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_OR_INVALID_PRIVIEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing or invalid privilege",
 | 
						|
      .str_user_error        = "missing or invalid privilege",
 | 
						|
      .oracle_errno          = 990,
 | 
						|
      .oracle_str_error      = "ORA-00990: missing or invalide privilege",
 | 
						|
      .oracle_str_user_error = "ORA-00990: missing or invalide privilege"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_VIRTUAL_COLUMN_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_VIRTUAL_COLUMN_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "specified data type is not supported for a virtual column",
 | 
						|
      .str_user_error        = "specified data type is not supported for a virtual column",
 | 
						|
      .oracle_errno          = 54003,
 | 
						|
      .oracle_str_error      = "ORA-54003: specified data type is not supported for a virtual column",
 | 
						|
      .oracle_str_user_error = "ORA-54003: specified data type is not supported for a virtual column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REFERENCED_TABLE_HAS_NO_PK = {
 | 
						|
      .error_name            = "OB_ERR_REFERENCED_TABLE_HAS_NO_PK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "referenced table does not have a primary key",
 | 
						|
      .str_user_error        = "referenced table does not have a primary key",
 | 
						|
      .oracle_errno          = 2268,
 | 
						|
      .oracle_str_error      = "ORA-02268: referenced table does not have a primary key",
 | 
						|
      .oracle_str_user_error = "ORA-02268: referenced table does not have a primary key"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_PART_COLUMN_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_PART_COLUMN_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "data type or length of a table partitioning column may not be changed",
 | 
						|
      .str_user_error        = "data type or length of a table partitioning column may not be changed",
 | 
						|
      .oracle_errno          = 14060,
 | 
						|
      .oracle_str_error      = "ORA-14060: data type or length of a table partitioning column may not be changed",
 | 
						|
      .oracle_str_user_error = "ORA-14060: data type or length of a table partitioning column may not be changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFY_SUBPART_COLUMN_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_MODIFY_SUBPART_COLUMN_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "data type or length of a table subpartitioning column may not be changed",
 | 
						|
      .str_user_error        = "data type or length of a table subpartitioning column may not be changed",
 | 
						|
      .oracle_errno          = 14265,
 | 
						|
      .oracle_str_error      = "ORA-14265: data type or length of a table subpartitioning column may not be changed",
 | 
						|
      .oracle_str_user_error = "ORA-14265: data type or length of a table subpartitioning column may not be changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DECREASE_COLUMN_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_DECREASE_COLUMN_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot decrease column length because some value is too big",
 | 
						|
      .str_user_error        = "cannot decrease column length because some value is too big",
 | 
						|
      .oracle_errno          = 1441,
 | 
						|
      .oracle_str_error      = "ORA-01441: cannot decrease column length because some value is too big",
 | 
						|
      .oracle_str_user_error = "ORA-01441: cannot decrease column length because some value is too big"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATETIME_INTERVAL_INTERNAL_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_DATETIME_INTERVAL_INTERNAL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Datetime/Interval internal error",
 | 
						|
      .str_user_error        = "Datetime/Interval internal error",
 | 
						|
      .oracle_errno          = 1891,
 | 
						|
      .oracle_str_error      = "ORA-01891: Datetime/Interval internal error",
 | 
						|
      .oracle_str_user_error = "ORA-01891: Datetime/Interval internal error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REMOTE_PART_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_REMOTE_PART_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition extended table name cannot refer to a remote object",
 | 
						|
      .str_user_error        = "partition extended table name cannot refer to a remote object",
 | 
						|
      .oracle_errno          = 14100,
 | 
						|
      .oracle_str_error      = "ORA-14100: partition extended table name cannot refer to a remote object",
 | 
						|
      .oracle_str_user_error = "ORA-14100: partition extended table name cannot refer to a remote object"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_COLUMN_EXPRESSION_WAS_SPECIFIED = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_COLUMN_EXPRESSION_WAS_SPECIFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate column expression was specified",
 | 
						|
      .str_user_error        = "Duplicate column expression was specified",
 | 
						|
      .oracle_errno          = 54015,
 | 
						|
      .oracle_str_error      = "ORA-54015: Duplicate column expression was specified",
 | 
						|
      .oracle_str_user_error = "ORA-54015: Duplicate column expression was specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_A_VIEW_NOT_APPROPRIATE_HERE = {
 | 
						|
      .error_name            = "OB_ERR_A_VIEW_NOT_APPROPRIATE_HERE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a view is not appropriate here",
 | 
						|
      .str_user_error        = "a view is not appropriate here",
 | 
						|
      .oracle_errno          = 1702,
 | 
						|
      .oracle_str_error      = "ORA-01702: a view is not appropriate here",
 | 
						|
      .oracle_str_user_error = "ORA-01702: a view is not appropriate here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROWID_VIEW_NO_KEY_PRESERVED = {
 | 
						|
      .error_name            = "OB_ROWID_VIEW_NO_KEY_PRESERVED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot select ROWID from, or sample, a join view without a key-preserved table",
 | 
						|
      .str_user_error        = "cannot select ROWID from, or sample, a join view without a key-preserved table",
 | 
						|
      .oracle_errno          = 1445,
 | 
						|
      .oracle_str_error      = "ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table",
 | 
						|
      .oracle_str_user_error = "ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ROWID_VIEW_HAS_DISTINCT_ETC = {
 | 
						|
      .error_name            = "OB_ROWID_VIEW_HAS_DISTINCT_ETC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc",
 | 
						|
      .str_user_error        = "cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc",
 | 
						|
      .oracle_errno          = 1446,
 | 
						|
      .oracle_str_error      = "ORA-01446: cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc",
 | 
						|
      .oracle_str_user_error = "ORA-01446: cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_AT_LEAST_ONE_COLUMN_NOT_VIRTUAL = {
 | 
						|
      .error_name            = "OB_ERR_AT_LEAST_ONE_COLUMN_NOT_VIRTUAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TABLE_MUST_HAVE_COLUMNS,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "A table must have at least 1 column",
 | 
						|
      .str_user_error        = "A table must have at least 1 column",
 | 
						|
      .oracle_errno          = 54037,
 | 
						|
      .oracle_str_error      = "ORA-54037: table must have at least 1 column that is not virtual",
 | 
						|
      .oracle_str_user_error = "ORA-54037: table must have at least 1 column that is not virtual"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_PURE_FUNC_CANBE_INDEXED = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_PURE_FUNC_CANBE_INDEXED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "only pure functions can be indexed",
 | 
						|
      .str_user_error        = "only pure functions can be indexed",
 | 
						|
      .oracle_errno          = 1743,
 | 
						|
      .oracle_str_error      = "ORA-01743: only pure functions can be indexed",
 | 
						|
      .oracle_str_user_error = "ORA-01743: only pure functions can be indexed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_PURE_FUNC_CANBE_VIRTUAL_COLUMN_EXPRESSION = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_PURE_FUNC_CANBE_VIRTUAL_COLUMN_EXPRESSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 3102,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Expression of generated column contains a disallowed function",
 | 
						|
      .str_user_error        = "Expression of generated column contains a disallowed function",
 | 
						|
      .oracle_errno          = 54002,
 | 
						|
      .oracle_str_error      = "ORA-54002: only pure functions can be specified in a virtual column expression",
 | 
						|
      .oracle_str_user_error = "ORA-54002: only pure functions can be specified in a virtual column expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_OPERATION_ON_VIRTUAL_COLUMNS = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_OPERATION_ON_VIRTUAL_COLUMNS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "UPDATE operation disallowed on virtual columns",
 | 
						|
      .str_user_error        = "UPDATE operation disallowed on virtual columns",
 | 
						|
      .oracle_errno          = 54017,
 | 
						|
      .oracle_str_error      = "ORA-54017: UPDATE operation disallowed on virtual columns",
 | 
						|
      .oracle_str_user_error = "ORA-54017: UPDATE operation disallowed on virtual columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_COLUMN_EXPRESSION = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_COLUMN_EXPRESSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid column expression was specified",
 | 
						|
      .str_user_error        = "Invalid column expression was specified",
 | 
						|
      .oracle_errno          = 54016,
 | 
						|
      .oracle_str_error      = "ORA-54016: Invalid column expression was specified",
 | 
						|
      .oracle_str_user_error = "ORA-54016: Invalid column expression was specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IDENTITY_COLUMN_COUNT_EXCE_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_IDENTITY_COLUMN_COUNT_EXCE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table can have only one identity column",
 | 
						|
      .str_user_error        = "table can have only one identity column",
 | 
						|
      .oracle_errno          = 30669,
 | 
						|
      .oracle_str_error      = "ORA-30669: table can have only one identity column",
 | 
						|
      .oracle_str_user_error = "ORA-30669: table can have only one identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid NOT NULL constraint specified on an identity column",
 | 
						|
      .str_user_error        = "invalid NOT NULL constraint specified on an identity column",
 | 
						|
      .oracle_errno          = 30670,
 | 
						|
      .oracle_str_error      = "ORA-30670: invalid NOT NULL constraint specified on an identity column",
 | 
						|
      .oracle_str_user_error = "ORA-30670: invalid NOT NULL constraint specified on an identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot modify NOT NULL constraint on an identity column",
 | 
						|
      .str_user_error        = "cannot modify NOT NULL constraint on an identity column",
 | 
						|
      .oracle_errno          = 30671,
 | 
						|
      .oracle_str_error      = "ORA-30671: cannot modify NOT NULL constraint on an identity column",
 | 
						|
      .oracle_str_user_error = "ORA-30671: cannot modify NOT NULL constraint on an identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot drop NOT NULL constraint on an identity column",
 | 
						|
      .str_user_error        = "cannot drop NOT NULL constraint on an identity column",
 | 
						|
      .oracle_errno          = 30672,
 | 
						|
      .oracle_str_error      = "ORA-30672: cannot drop NOT NULL constraint on an identity column",
 | 
						|
      .oracle_str_user_error = "ORA-30672: cannot drop NOT NULL constraint on an identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_MODIFY_TO_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_MODIFY_TO_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column to be modified is not an identity column",
 | 
						|
      .str_user_error        = "column to be modified is not an identity column",
 | 
						|
      .oracle_errno          = 30673,
 | 
						|
      .oracle_str_error      = "ORA-30673: column to be modified is not an identity column",
 | 
						|
      .oracle_str_user_error = "ORA-30673: column to be modified is not an identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IDENTITY_COLUMN_CANNOT_HAVE_DEFAULT_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_IDENTITY_COLUMN_CANNOT_HAVE_DEFAULT_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "identity column cannot have a default value",
 | 
						|
      .str_user_error        = "identity column cannot have a default value",
 | 
						|
      .oracle_errno          = 30674,
 | 
						|
      .oracle_str_error      = "ORA-30674: identity column cannot have a default value",
 | 
						|
      .oracle_str_user_error = "ORA-30674: identity column cannot have a default value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IDENTITY_COLUMN_MUST_BE_NUMERIC_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_IDENTITY_COLUMN_MUST_BE_NUMERIC_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "identity column must be a numeric type",
 | 
						|
      .str_user_error        = "identity column must be a numeric type",
 | 
						|
      .oracle_errno          = 30675,
 | 
						|
      .oracle_str_error      = "ORA-30675: identity column must be a numeric type",
 | 
						|
      .oracle_str_user_error = "ORA-30675: identity column must be a numeric type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PREBUILT_TABLE_MANAGED_CANNOT_BE_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_PREBUILT_TABLE_MANAGED_CANNOT_BE_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "prebuilt table managed column cannot be an identity column",
 | 
						|
      .str_user_error        = "prebuilt table managed column cannot be an identity column",
 | 
						|
      .oracle_errno          = 32792,
 | 
						|
      .oracle_str_error      = "ORA-32792: prebuilt table managed column cannot be an identity column",
 | 
						|
      .oracle_str_user_error = "ORA-32792: prebuilt table managed column cannot be an identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_ALTER_SYSTEM_GENERATED_SEQUENCE = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_ALTER_SYSTEM_GENERATED_SEQUENCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot alter a system-generated sequence",
 | 
						|
      .str_user_error        = "cannot alter a system-generated sequence",
 | 
						|
      .oracle_errno          = 32793,
 | 
						|
      .oracle_str_error      = "ORA-32793: cannot alter a system-generated sequence",
 | 
						|
      .oracle_str_user_error = "ORA-32793: cannot alter a system-generated sequence"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_DROP_SYSTEM_GENERATED_SEQUENCE = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_DROP_SYSTEM_GENERATED_SEQUENCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot drop a system-generated sequence",
 | 
						|
      .str_user_error        = "cannot drop a system-generated sequence",
 | 
						|
      .oracle_errno          = 32794,
 | 
						|
      .oracle_str_error      = "ORA-32794: cannot drop a system-generated sequence",
 | 
						|
      .oracle_str_user_error = "ORA-32794: cannot drop a system-generated sequence"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INSERT_INTO_GENERATED_ALWAYS_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_INSERT_INTO_GENERATED_ALWAYS_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot insert into a generated always identity column",
 | 
						|
      .str_user_error        = "cannot insert into a generated always identity column",
 | 
						|
      .oracle_errno          = 32795,
 | 
						|
      .oracle_str_error      = "ORA-32795: cannot insert into a generated always identity column",
 | 
						|
      .oracle_str_user_error = "ORA-32795: cannot insert into a generated always identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_GENERATED_ALWAYS_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_GENERATED_ALWAYS_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot update a generated always identity column",
 | 
						|
      .str_user_error        = "cannot update a generated always identity column",
 | 
						|
      .oracle_errno          = 32796,
 | 
						|
      .oracle_str_error      = "ORA-32796: cannot update a generated always identity column",
 | 
						|
      .oracle_str_user_error = "ORA-32796: cannot update a generated always identity column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IDENTITY_COLUMN_SEQUENCE_MISMATCH_ALTER_TABLE_EXCHANGE_PARTITION = {
 | 
						|
      .error_name            = "OB_ERR_IDENTITY_COLUMN_SEQUENCE_MISMATCH_ALTER_TABLE_EXCHANGE_PARTITION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "identity column sequence mismatch in ALTER TABLE EXCHANGE PARTITION",
 | 
						|
      .str_user_error        = "identity column sequence mismatch in ALTER TABLE EXCHANGE PARTITION",
 | 
						|
      .oracle_errno          = 32797,
 | 
						|
      .oracle_str_error      = "ORA-32797: identity column sequence mismatch in ALTER TABLE EXCHANGE PARTITION",
 | 
						|
      .oracle_str_user_error = "ORA-32797: identity column sequence mismatch in ALTER TABLE EXCHANGE PARTITION"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_RENAME_SYSTEM_GENERATED_SEQUENCE = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_RENAME_SYSTEM_GENERATED_SEQUENCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot rename a system-generated sequence",
 | 
						|
      .str_user_error        = "cannot rename a system-generated sequence",
 | 
						|
      .oracle_errno          = 32799,
 | 
						|
      .oracle_str_error      = "ORA-32799: cannot rename a system-generated sequence",
 | 
						|
      .oracle_str_user_error = "ORA-32799: cannot rename a system-generated sequence"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REVOKE_BY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_REVOKE_BY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "UPDATE/REFERENCES may only be REVOKEd from the whole table, not by column",
 | 
						|
      .str_user_error        = "UPDATE/REFERENCES may only be REVOKEd from the whole table, not by column",
 | 
						|
      .oracle_errno          = 1750,
 | 
						|
      .oracle_str_error      = "ORA-01750: UPDATE/REFERENCES may only be REVOKEd from the whole table, not by column",
 | 
						|
      .oracle_str_user_error = "ORA-01750: UPDATE/REFERENCES may only be REVOKEd from the whole table, not by column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_BODY_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_BODY_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not executed, type body does not exist",
 | 
						|
      .str_user_error        = "not executed, type body '%.*s' does not exist",
 | 
						|
      .oracle_errno          = 4067,
 | 
						|
      .oracle_str_error      = "ORA-04067: not executed, type body does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-04067: not executed, type body '%.*s' does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_ARGUMENT_FOR_WIDTH_BUCKET = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_ARGUMENT_FOR_WIDTH_BUCKET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The argument of WIDTH_BUCKET function is NULL or invalid.",
 | 
						|
      .str_user_error        = "The argument [%s] of WIDTH_BUCKET function is NULL or invalid.",
 | 
						|
      .oracle_errno          = 30494,
 | 
						|
      .oracle_str_error      = "ORA-30494: The argument of WIDTH_BUCKET function is NULL or invalid.",
 | 
						|
      .oracle_str_user_error = "ORA-30494: The argument [%s] of WIDTH_BUCKET function is NULL or invalid."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CBY_NO_MEMORY = {
 | 
						|
      .error_name            = "OB_ERR_CBY_NO_MEMORY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Not enough memory for CONNECT BY operation",
 | 
						|
      .str_user_error        = "Not enough memory for CONNECT BY operation",
 | 
						|
      .oracle_errno          = 30009,
 | 
						|
      .oracle_str_error      = "ORA-30009: Not enough memory for CONNECT BY operation",
 | 
						|
      .oracle_str_user_error = "ORA-30009: Not enough memory for CONNECT BY operation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_PARAM_FOR_CBY_PATH = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_PARAM_FOR_CBY_PATH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal parameter in SYS_CONNECT_BY_PATH function",
 | 
						|
      .str_user_error        = "illegal parameter in SYS_CONNECT_BY_PATH function",
 | 
						|
      .oracle_errno          = 30003,
 | 
						|
      .oracle_str_error      = "ORA-30003: illegal parameter in SYS_CONNECT_BY_PATH function",
 | 
						|
      .oracle_str_user_error = "ORA-30003: illegal parameter in SYS_CONNECT_BY_PATH function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_HOST_UNKNOWN = {
 | 
						|
      .error_name            = "OB_ERR_HOST_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "host unknown",
 | 
						|
      .str_user_error        = "host %.*s unknown",
 | 
						|
      .oracle_errno          = 29257,
 | 
						|
      .oracle_str_error      = "ORA-29257: host unknown",
 | 
						|
      .oracle_str_user_error = "ORA-29257: host %.*s unknown"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WINDOW_NAME_IS_NOT_DEFINE = {
 | 
						|
      .error_name            = "OB_ERR_WINDOW_NAME_IS_NOT_DEFINE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Window name is not defined.",
 | 
						|
      .str_user_error        = "Window name '%.*s' is not defined.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5929, Window name is not defined.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5929, Window name '%.*s' is not defined."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OPEN_CURSORS_EXCEEDED = {
 | 
						|
      .error_name            = "OB_ERR_OPEN_CURSORS_EXCEEDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "maximum open cursors exceeded",
 | 
						|
      .str_user_error        = "maximum open cursors exceeded",
 | 
						|
      .oracle_errno          = 1000,
 | 
						|
      .oracle_str_error      = "ORA-01000: maximum open cursors exceeded",
 | 
						|
      .oracle_str_user_error = "ORA-01000: maximum open cursors exceeded"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FETCH_OUT_SEQUENCE = {
 | 
						|
      .error_name            = "OB_ERR_FETCH_OUT_SEQUENCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fetch out of sequence",
 | 
						|
      .str_user_error        = "fetch out of sequence",
 | 
						|
      .oracle_errno          = 1002,
 | 
						|
      .oracle_str_error      = "ORA-01002: fetch out of sequence",
 | 
						|
      .oracle_str_user_error = "ORA-01002: fetch out of sequence"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNEXPECTED_NAME_STR = {
 | 
						|
      .error_name            = "OB_ERR_UNEXPECTED_NAME_STR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unexpected name string",
 | 
						|
      .str_user_error        = "unexpected name string '%.*s'",
 | 
						|
      .oracle_errno          = 23481,
 | 
						|
      .oracle_str_error      = "ORA-23481: unexpected name string",
 | 
						|
      .oracle_str_user_error = "ORA-23481: unexpected name string '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_PROGRAM_UNIT = {
 | 
						|
      .error_name            = "OB_ERR_NO_PROGRAM_UNIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL: could not find program unit being called",
 | 
						|
      .str_user_error        = "PL/SQL: could not find program unit being called: '%.*s'",
 | 
						|
      .oracle_errno          = 6508,
 | 
						|
      .oracle_str_error      = "ORA-06508: PL/SQL: could not find program unit being called",
 | 
						|
      .oracle_str_user_error = "ORA-06508: PL/SQL: could not find program unit being called: '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ARG_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_ARG_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "argument is null, invalid, or out of range",
 | 
						|
      .str_user_error        = "argument is null, invalid, or out of range",
 | 
						|
      .oracle_errno          = 21560,
 | 
						|
      .oracle_str_error      = "ORA-21560: argument %.*s is null, invalid, or out of range",
 | 
						|
      .oracle_str_user_error = "ORA-21560: argument %.*s is null, invalid, or out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DBMS_STATS_PL = {
 | 
						|
      .error_name            = "OB_ERR_DBMS_STATS_PL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "must use LOG_USER_ERROR",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 20001,
 | 
						|
      .oracle_str_error      = "ORA-20001: must use LOG_USER_ERROR",
 | 
						|
      .oracle_str_user_error = "ORA-20001: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INCORRECT_VALUE_FOR_FUNCTION = {
 | 
						|
      .error_name            = "OB_ERR_INCORRECT_VALUE_FOR_FUNCTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_VALUE_FOR_TYPE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect value for function",
 | 
						|
      .str_user_error        = "Incorrect %.*s value: '%.*s' for function %.*s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5936, Incorrect value for function",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5936, Incorrect %.*s value: '%.*s' for function %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNSUPPORTED_CHARACTER_SET = {
 | 
						|
      .error_name            = "OB_ERR_UNSUPPORTED_CHARACTER_SET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unsupported character set",
 | 
						|
      .str_user_error        = "unsupported character set",
 | 
						|
      .oracle_errno          = 1482,
 | 
						|
      .oracle_str_error      = "ORA-01482: unsupported character set",
 | 
						|
      .oracle_str_user_error = "ORA-01482: unsupported character set"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MUST_BE_FOLLOWED_BY_FOUR_HEXDECIMAL_CHARACTERS_OR_ANOTHER = {
 | 
						|
      .error_name            = "OB_ERR_MUST_BE_FOLLOWED_BY_FOUR_HEXDECIMAL_CHARACTERS_OR_ANOTHER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "'\\' must be followed by four hexdecimal characters or another '\\'",
 | 
						|
      .str_user_error        = "'\\' must be followed by four hexdecimal characters or another '\\'",
 | 
						|
      .oracle_errno          = 30186,
 | 
						|
      .oracle_str_error      = "ORA-30186: '\\' must be followed by four hexdecimal characters or another '\\'",
 | 
						|
      .oracle_str_user_error = "ORA-30186: '\\' must be followed by four hexdecimal characters or another '\\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARAMETER_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_PARAMETER_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "parameter value longer than maximum characters",
 | 
						|
      .str_user_error        = "parameter value longer than %d characters",
 | 
						|
      .oracle_errno          = 32021,
 | 
						|
      .oracle_str_error      = "ORA-32021: parameter value longer than maximum characters",
 | 
						|
      .oracle_str_user_error = "ORA-32021: parameter value longer than %d characters"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PLSQL_CCFLAGS = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PLSQL_CCFLAGS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid parameter for PLSQL_CCFLAGS",
 | 
						|
      .str_user_error        = "invalid parameter for PLSQL_CCFLAGS",
 | 
						|
      .oracle_errno          = 39962,
 | 
						|
      .oracle_str_error      = "ORA-39962: invalid parameter for PLSQL_CCFLAGS",
 | 
						|
      .oracle_str_user_error = "ORA-39962: invalid parameter for PLSQL_CCFLAGS"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REF_MUTUALLY_DEP = {
 | 
						|
      .error_name            = "OB_ERR_REF_MUTUALLY_DEP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Aborted: formed a non-REF mutually-dependent cycle",
 | 
						|
      .str_user_error        = "Aborted: '%.*s' formed a non-REF mutually-dependent cycle with '%.*s'",
 | 
						|
      .oracle_errno          = 4055,
 | 
						|
      .oracle_str_error      = "ORA-04055: Aborted: formed a non-REF mutually-dependent cycle",
 | 
						|
      .oracle_str_user_error = "ORA-04055: Aborted: '%.*s' formed a non-REF mutually-dependent cycle with '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column not allowed here",
 | 
						|
      .str_user_error        = "column not allowed here",
 | 
						|
      .oracle_errno          = 984,
 | 
						|
      .oracle_str_error      = "ORA-00984: column not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-00984: column not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_ACCESS_NLS_DATA_FILES_OR_INVALID_ENVIRONMENT_SPECIFIED = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_ACCESS_NLS_DATA_FILES_OR_INVALID_ENVIRONMENT_SPECIFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot access NLS data files or invalid environment specified",
 | 
						|
      .str_user_error        = "Cannot access NLS data files or invalid environment specified",
 | 
						|
      .oracle_errno          = 12705,
 | 
						|
      .oracle_str_error      = "ORA-12705: Cannot access NLS data files or invalid environment specified",
 | 
						|
      .oracle_str_user_error = "ORA-12705: Cannot access NLS data files or invalid environment specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_NULL_SPECIFICATION = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_NULL_SPECIFICATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate or conflicting NULL and/or NOT NULL specifications",
 | 
						|
      .str_user_error        = "duplicate or conflicting NULL and/or NOT NULL specifications",
 | 
						|
      .oracle_errno          = 2258,
 | 
						|
      .oracle_str_error      = "ORA-02258: duplicate or conflicting NULL and/or NOT NULL specifications",
 | 
						|
      .oracle_str_user_error = "ORA-02258: duplicate or conflicting NULL and/or NOT NULL specifications"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_NULL_CONSTRAINT_VIOLATED = {
 | 
						|
      .error_name            = "OB_ERR_NOT_NULL_CONSTRAINT_VIOLATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot enable not null constraint - null values found",
 | 
						|
      .str_user_error        = "cannot enable (%.*s.%.*s) - null values found",
 | 
						|
      .oracle_errno          = 2296,
 | 
						|
      .oracle_str_error      = "ORA-02296: cannot enable not null constraint - null values found",
 | 
						|
      .oracle_str_user_error = "ORA-02296: cannot enable (%.*s.%.*s) - null values found"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLE_ADD_NOT_NULL_COLUMN_NOT_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_TABLE_ADD_NOT_NULL_COLUMN_NOT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "table must be empty to add mandatory (NOT NULL) column",
 | 
						|
      .str_user_error        = "table must be empty to add mandatory (NOT NULL) column",
 | 
						|
      .oracle_errno          = 1758,
 | 
						|
      .oracle_str_error      = "ORA-01758: table must be empty to add mandatory (NOT NULL) column",
 | 
						|
      .oracle_str_user_error = "ORA-01758: table must be empty to add mandatory (NOT NULL) column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COLUMN_EXPRESSION_MODIFICATION_WITH_OTHER_DDL = {
 | 
						|
      .error_name            = "OB_ERR_COLUMN_EXPRESSION_MODIFICATION_WITH_OTHER_DDL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Column expression modifications cannot be combined with any other column DDL operation",
 | 
						|
      .str_user_error        = "Column expression modifications cannot be combined with any other column DDL operation",
 | 
						|
      .oracle_errno          = 54048,
 | 
						|
      .oracle_str_error      = "ORA-54048: Column expression modifications cannot be combined with any other column DDL operation",
 | 
						|
      .oracle_str_user_error = "ORA-54048: Column expression modifications cannot be combined with any other column DDL operation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_VIRTUAL_COL_WITH_CONSTRAINT_CANT_BE_CHANGED = {
 | 
						|
      .error_name            = "OB_ERR_VIRTUAL_COL_WITH_CONSTRAINT_CANT_BE_CHANGED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Virtual column expression cannot be changed because a constraint is defined on column",
 | 
						|
      .str_user_error        = "Virtual column expression cannot be changed because a constraint is defined on column",
 | 
						|
      .oracle_errno          = 54023,
 | 
						|
      .oracle_str_error      = "ORA-54023: Virtual column expression cannot be changed because a constraint is defined on column",
 | 
						|
      .oracle_str_user_error = "ORA-54023: Virtual column expression cannot be changed because a constraint is defined on column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_IDENTITY_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_IDENTITY_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid NOT NULL constraint specified on a DEFAULT ON NULL column",
 | 
						|
      .str_user_error        = "invalid NOT NULL constraint specified on a DEFAULT ON NULL column",
 | 
						|
      .oracle_errno          = 30665,
 | 
						|
      .oracle_str_error      = "ORA-30665: invalid NOT NULL constraint specified on a DEFAULT ON NULL column",
 | 
						|
      .oracle_str_user_error = "ORA-30665: invalid NOT NULL constraint specified on a DEFAULT ON NULL column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_DATA_TYPE_FOR_AT_TIME_ZONE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_DATA_TYPE_FOR_AT_TIME_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid data type for datetime primary with time zone modifier",
 | 
						|
      .str_user_error        = "invalid data type for datetime primary with time zone modifier",
 | 
						|
      .oracle_errno          = 30084,
 | 
						|
      .oracle_str_error      = "ORA-30084: invalid data type for datetime primary with time zone modifier",
 | 
						|
      .oracle_str_user_error = "ORA-30084: invalid data type for datetime primary with time zone modifier"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_ARG = {
 | 
						|
      .error_name            = "OB_ERR_BAD_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "bad argument",
 | 
						|
      .str_user_error        = "bad argument",
 | 
						|
      .oracle_errno          = 29261,
 | 
						|
      .oracle_str_error      = "ORA-29261: bad argument",
 | 
						|
      .oracle_str_user_error = "ORA-29261: bad argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot modify NOT NULL constraint on a DEFAULT ON NULL column",
 | 
						|
      .str_user_error        = "cannot modify NOT NULL constraint on a DEFAULT ON NULL column",
 | 
						|
      .oracle_errno          = 30666,
 | 
						|
      .oracle_str_error      = "ORA-30666: cannot modify NOT NULL constraint on a DEFAULT ON NULL column",
 | 
						|
      .oracle_str_user_error = "ORA-30666: cannot modify NOT NULL constraint on a DEFAULT ON NULL column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot drop NOT NULL constraint on a DEFAULT ON NULL column",
 | 
						|
      .str_user_error        = "cannot drop NOT NULL constraint on a DEFAULT ON NULL column",
 | 
						|
      .oracle_errno          = 30667,
 | 
						|
      .oracle_str_error      = "ORA-30667: cannot drop NOT NULL constraint on a DEFAULT ON NULL column",
 | 
						|
      .oracle_str_user_error = "ORA-30667: cannot drop NOT NULL constraint on a DEFAULT ON NULL column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PATH = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PATH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file or LOB operation string failed",
 | 
						|
      .str_user_error        = "file or LOB operation string failed",
 | 
						|
      .oracle_errno          = 22288,
 | 
						|
      .oracle_str_error      = "ORA-22288: file or LOB operation string failed",
 | 
						|
      .oracle_str_user_error = "ORA-22288: file or LOB operation string failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_PARAM_ENCOUNTERED = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_PARAM_ENCOUNTERED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid parameter encountered in method string",
 | 
						|
      .str_user_error        = "invalid parameter encountered in method %s",
 | 
						|
      .oracle_errno          = 22369,
 | 
						|
      .oracle_str_error      = "ORA-22369: invalid parameter encountered in method string",
 | 
						|
      .oracle_str_user_error = "ORA-22369: invalid parameter encountered in method %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INCORRECT_METHOD_USAGE = {
 | 
						|
      .error_name            = "OB_ERR_INCORRECT_METHOD_USAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "incorrect usage of method string",
 | 
						|
      .str_user_error        = "incorrect usage of method %s",
 | 
						|
      .oracle_errno          = 22370,
 | 
						|
      .oracle_str_error      = "ORA-22370: incorrect usage of method string",
 | 
						|
      .oracle_str_user_error = "ORA-22370: incorrect usage of method %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Type Mismatch while constructing or accessing OCIAnyData",
 | 
						|
      .str_user_error        = "Type Mismatch while constructing or accessing OCIAnyData",
 | 
						|
      .oracle_errno          = 22626,
 | 
						|
      .oracle_str_error      = "ORA-22626: Type Mismatch while constructing or accessing OCIAnyData",
 | 
						|
      .oracle_str_user_error = "ORA-22626: Type Mismatch while constructing or accessing OCIAnyData"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FETCH_COLUMN_NULL = {
 | 
						|
      .error_name            = "OB_ERR_FETCH_COLUMN_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "fetched column value is NULL",
 | 
						|
      .str_user_error        = "fetched column value is NULL",
 | 
						|
      .oracle_errno          = 1405,
 | 
						|
      .oracle_str_error      = "ORA-01405: fetched column value is NULL",
 | 
						|
      .oracle_str_user_error = "ORA-01405: fetched column value is NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SIZE_SPECIFIED = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SIZE_SPECIFIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid SIZE specified",
 | 
						|
      .str_user_error        = "invalid SIZE specified",
 | 
						|
      .oracle_errno          = 1494,
 | 
						|
      .oracle_str_error      = "ORA-01494: invalid SIZE specified",
 | 
						|
      .oracle_str_user_error = "ORA-01494: invalid SIZE specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SOURCE_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_SOURCE_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "source text is empty",
 | 
						|
      .str_user_error        = "source text is empty",
 | 
						|
      .oracle_errno          = 24236,
 | 
						|
      .oracle_str_error      = "ORA-24236: source text is empty",
 | 
						|
      .oracle_str_user_error = "ORA-24236: source text is empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BAD_VALUE_FOR_OBJECT_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_BAD_VALUE_FOR_OBJECT_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "bad value for object type: string",
 | 
						|
      .str_user_error        = "bad value for object type: %.*s",
 | 
						|
      .oracle_errno          = 24235,
 | 
						|
      .oracle_str_error      = "ORA-24235: bad value for object type: string",
 | 
						|
      .oracle_str_user_error = "ORA-24235: bad value for object type: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNABLE_GET_SOURCE = {
 | 
						|
      .error_name            = "OB_ERR_UNABLE_GET_SOURCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unable to get source of string \'string\'.\'string\', insufficient privileges or does not exist",
 | 
						|
      .str_user_error        = "unable to get source of string \'%.*s\'.\'%.*s\', insufficient privileges or does not exist",
 | 
						|
      .oracle_errno          = 24234,
 | 
						|
      .oracle_str_error      = "ORA-24234: unable to get source of string \'string\'.\'string\', insufficient privileges or does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-24234: unable to get source of string \'%.*s\'.\'%.*s\', insufficient privileges or does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_IDENTIFIER = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_IDENTIFIER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing identifier",
 | 
						|
      .str_user_error        = "missing identifier",
 | 
						|
      .oracle_errno          = 931,
 | 
						|
      .oracle_str_error      = "ORA-00931: missing identifier",
 | 
						|
      .oracle_str_user_error = "ORA-00931: missing identifier"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_COMPILE_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_DUP_COMPILE_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate setting for PL/SQL compiler parameter string",
 | 
						|
      .str_user_error        = "duplicate setting for PL/SQL compiler parameter %.*s",
 | 
						|
      .oracle_errno          = 39956,
 | 
						|
      .oracle_str_error      = "ORA-39956: duplicate setting for PL/SQL compiler parameter string",
 | 
						|
      .oracle_str_user_error = "ORA-39956: duplicate setting for PL/SQL compiler parameter %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DATA_NOT_WELL_FORMAT = {
 | 
						|
      .error_name            = "OB_ERR_DATA_NOT_WELL_FORMAT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OCIAnyData is not well-formed",
 | 
						|
      .str_user_error        = "OCIAnyData is not well-formed",
 | 
						|
      .oracle_errno          = 22625,
 | 
						|
      .oracle_str_error      = "ORA-22625: OCIAnyData is not well-formed",
 | 
						|
      .oracle_str_user_error = "ORA-22625: OCIAnyData is not well-formed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MUST_COMPOSIT_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_MUST_COMPOSIT_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tc [string] must be that of object/varray/nested table",
 | 
						|
      .str_user_error        = "tc [%s] must be that of object/varray/nested table",
 | 
						|
      .oracle_errno          = 22627,
 | 
						|
      .oracle_str_error      = "ORA-22627: tc [string] must be that of object/varray/nested table",
 | 
						|
      .oracle_str_user_error = "ORA-22627: tc [%s] must be that of object/varray/nested table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USER_EXCEED_RESOURCE = {
 | 
						|
      .error_name            = "OB_ERR_USER_EXCEED_RESOURCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 1226,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "User has exceeded the resource",
 | 
						|
      .str_user_error        = "User '%.*s' has exceeded the '%s' resource (current value: %lu)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5967, User has exceeded the resource",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5967, User '%.*s' has exceeded the '%s' resource (current value: %lu)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UTL_ENCODE_ARGUMENT_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_UTL_ENCODE_ARGUMENT_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "bad argument",
 | 
						|
      .str_user_error        = "bad argument",
 | 
						|
      .oracle_errno          = 29261,
 | 
						|
      .oracle_str_error      = "ORA-29261: bad argument",
 | 
						|
      .oracle_str_user_error = "ORA-29261: bad argument"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UTL_ENCODE_CHARSET_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_UTL_ENCODE_CHARSET_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid Character set",
 | 
						|
      .str_user_error        = "invalid Character set",
 | 
						|
      .oracle_errno          = 30205,
 | 
						|
      .oracle_str_error      = "ORA-30205: invalid Character set",
 | 
						|
      .oracle_str_user_error = "ORA-30205: invalid Character set"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UTL_ENCODE_MIME_HEAD_TAG = {
 | 
						|
      .error_name            = "OB_ERR_UTL_ENCODE_MIME_HEAD_TAG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid mime header tag",
 | 
						|
      .str_user_error        = "invalid mime header tag",
 | 
						|
      .oracle_errno          = 29295,
 | 
						|
      .oracle_str_error      = "ORA-29295: invalid mime header tag",
 | 
						|
      .oracle_str_user_error = "ORA-29295: invalid mime header tag"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_OPTION_VIOLATED = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_OPTION_VIOLATED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_CHECK_FAILED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CHECK OPTION failed",
 | 
						|
      .str_user_error        = "CHECK OPTION failed '%.*s.%.*s'",
 | 
						|
      .oracle_errno          = 1402,
 | 
						|
      .oracle_str_error      = "ORA-01402: view WITH CHECK OPTION where-clause violation",
 | 
						|
      .oracle_str_user_error = "ORA-01402: view WITH CHECK OPTION where-clause violation"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_OPTION_ON_NONUPDATABLE_VIEW = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_OPTION_ON_NONUPDATABLE_VIEW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_VIEW_NONUPD_CHECK,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CHECK OPTION on non-updatable view",
 | 
						|
      .str_user_error        = "CHECK OPTION on non-updatable view '%.*s.%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5972, CHECK OPTION on non-updatable view",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5972, CHECK OPTION on non-updatable view '%.*s.%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_DESC_FOR_POS = {
 | 
						|
      .error_name            = "OB_ERR_NO_DESC_FOR_POS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no descriptor for this position",
 | 
						|
      .str_user_error        = "no descriptor for this position",
 | 
						|
      .oracle_errno          = 24334,
 | 
						|
      .oracle_str_error      = "ORA-24334: no descriptor for this position",
 | 
						|
      .oracle_str_user_error = "ORA-24334: no descriptor for this position"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILL_OBJ_FLAG = {
 | 
						|
      .error_name            = "OB_ERR_ILL_OBJ_FLAG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object specified is incompatible with the flag specified",
 | 
						|
      .str_user_error        = "object specified is incompatible with the flag specified",
 | 
						|
      .oracle_errno          = 4047,
 | 
						|
      .oracle_str_error      = "ORA-04047: object specified is incompatible with the flag specified",
 | 
						|
      .oracle_str_user_error = "ORA-04047: object specified is incompatible with the flag specified"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DBLINK_REMOTE_ECODE = {
 | 
						|
      .error_name            = "OB_ERR_DBLINK_REMOTE_ECODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unknown errorcode: %d",
 | 
						|
      .str_user_error        = "dblink remote ora error code: %d",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5975, Unknown errorcode: %d",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5975, dblink remote ora error code: %d"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DBLINK_NO_LIB = {
 | 
						|
      .error_name            = "OB_ERR_DBLINK_NO_LIB",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "oci lib not founded",
 | 
						|
      .str_user_error        = "oci lib not founded",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5976, oci lib not founded",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5976, oci lib not founded"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITION_EXTENDED_ON_VIEW = {
 | 
						|
      .error_name            = "OB_ERR_PARTITION_EXTENDED_ON_VIEW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partition-extended object names may only be used with tables and editioning views",
 | 
						|
      .str_user_error        = "partition-extended object names may only be used with tables and editioning views",
 | 
						|
      .oracle_errno          = 14109,
 | 
						|
      .oracle_str_error      = "ORA-14109: partition-extended object names may only be used with tables and editioning views",
 | 
						|
      .oracle_str_user_error = "ORA-14109: partition-extended object names may only be used with tables and editioning views"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_ALL_VARIABLE_BIND = {
 | 
						|
      .error_name            = "OB_ERR_NOT_ALL_VARIABLE_BIND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not all variables bound",
 | 
						|
      .str_user_error        = "not all variables bound",
 | 
						|
      .oracle_errno          = 1008,
 | 
						|
      .oracle_str_error      = "ORA-01008: not all variables bound",
 | 
						|
      .oracle_str_user_error = "ORA-01008: not all variables bound"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BIND_VARIABLE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_BIND_VARIABLE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "bind variable does not exist",
 | 
						|
      .str_user_error        = "bind variable does not exist",
 | 
						|
      .oracle_errno          = 1006,
 | 
						|
      .oracle_str_error      = "ORA-01006: bind variable does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01006: bind variable does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_VALID_ROUTINE_NAME = {
 | 
						|
      .error_name            = "OB_ERR_NOT_VALID_ROUTINE_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not a valid function or procedure name",
 | 
						|
      .str_user_error        = "not a valid function or procedure name",
 | 
						|
      .oracle_errno          = 6576,
 | 
						|
      .oracle_str_error      = "ORA-06576: not a valid function or procedure name",
 | 
						|
      .oracle_str_user_error = "ORA-06576: not a valid function or procedure name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DDL_IN_ILLEGAL_CONTEXT = {
 | 
						|
      .error_name            = "OB_ERR_DDL_IN_ILLEGAL_CONTEXT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DDL statement is executed in an illegal context",
 | 
						|
      .str_user_error        = "DDL statement is executed in an illegal context",
 | 
						|
      .oracle_errno          = 6546,
 | 
						|
      .oracle_str_error      = "ORA-06546: DDL statement is executed in an illegal context",
 | 
						|
      .oracle_str_user_error = "ORA-06546: DDL statement is executed in an illegal context"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CTE_NEED_QUERY_BLOCKS = {
 | 
						|
      .error_name            = "OB_ERR_CTE_NEED_QUERY_BLOCKS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 3574,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Recursive Common Table Expression should have one or more non-recursive query blocks followed by one or more recursive ones",
 | 
						|
      .str_user_error        = "Recursive Common Table Expression should have one or more non-recursive query blocks followed by one or more recursive ones: %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5982, Recursive Common Table Expression should have one or more non-recursive query blocks followed by one or more recursive ones",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5982, Recursive Common Table Expression should have one or more non-recursive query blocks followed by one or more recursive ones: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WINDOW_ROWS_INTERVAL_USE = {
 | 
						|
      .error_name            = "OB_ERR_WINDOW_ROWS_INTERVAL_USE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WINDOW_ROWS_INTERVAL_USE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Window '<unnamed window>': INTERVAL can only be used with RANGE frames.",
 | 
						|
      .str_user_error        = "Window '%s': INTERVAL can only be used with RANGE frames.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5983, Window '<unnamed window>': INTERVAL can only be used with RANGE frames.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5983, Window '%s': INTERVAL can only be used with RANGE frames."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WINDOW_RANGE_FRAME_ORDER_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_WINDOW_RANGE_FRAME_ORDER_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WINDOW_RANGE_FRAME_ORDER_TYPE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Window '<unnamed window>' with RANGE N PRECEDING/FOLLOWING frame requires exactly one ORDER BY expression of numeric or temporal type",
 | 
						|
      .str_user_error        = "Window '%s' with RANGE N PRECEDING/FOLLOWING frame requires exactly one ORDER BY expression of numeric or temporal type",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5984, Window '<unnamed window>' with RANGE N PRECEDING/FOLLOWING frame requires exactly one ORDER BY expression of numeric or temporal type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5984, Window '%s' with RANGE N PRECEDING/FOLLOWING frame requires exactly one ORDER BY expression of numeric or temporal type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WINDOW_ILLEGAL_ORDER_BY = {
 | 
						|
      .error_name            = "OB_ERR_WINDOW_ILLEGAL_ORDER_BY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WINDOW_ILLEGAL_ORDER_BY,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Window '<unnamed window>': ORDER BY or PARTITION BY uses legacy position indication which is not supported use expression.",
 | 
						|
      .str_user_error        = "Window '%s': ORDER BY or PARTITION BY uses legacy position indication which is not supported use expression.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5985, Window '<unnamed window>': ORDER BY or PARTITION BY uses legacy position indication which is not supported use expression.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5985, Window '%s': ORDER BY or PARTITION BY uses legacy position indication which is not supported use expression."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MULTIPLE_CONSTRAINTS_WITH_SAME_NAME = {
 | 
						|
      .error_name            = "OB_ERR_MULTIPLE_CONSTRAINTS_WITH_SAME_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_MULTIPLE_CONSTRAINTS_WITH_SAME_NAME,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table has multiple constraints with the name.",
 | 
						|
      .str_user_error        = "Table has multiple constraints with the name \'%.*s\'. Please use constraint specific \'%.*s\' clause.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5986, Table has multiple constraints with the name.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5986, Table has multiple constraints with the name \'%.*s\'. Please use constraint specific \'%.*s\' clause."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NON_BOOLEAN_EXPR_FOR_CHECK_CONSTRAINT = {
 | 
						|
      .error_name            = "OB_ERR_NON_BOOLEAN_EXPR_FOR_CHECK_CONSTRAINT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NON_BOOLEAN_EXPR_FOR_CHECK_CONSTRAINT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "An expression of non-boolean type specified to a check constraint",
 | 
						|
      .str_user_error        = "An expression of non-boolean type specified to a check constraint \'%.*s\'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5987, An expression of non-boolean type specified to a check constraint",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5987, An expression of non-boolean type specified to a check constraint \'%.*s\'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_NOT_FOUND,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Check constraint is not found in the table.",
 | 
						|
      .str_user_error        = "Check constraint \'%.*s\' is not found in the table.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5988, Check constraint is not found in the table.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5988, Check constraint \'%.*s\' is not found in the table."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ALTER_CONSTRAINT_ENFORCEMENT_NOT_SUPPORTED = {
 | 
						|
      .error_name            = "OB_ERR_ALTER_CONSTRAINT_ENFORCEMENT_NOT_SUPPORTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_ALTER_CONSTRAINT_ENFORCEMENT_NOT_SUPPORTED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Altering constraint enforcement is not supported for the constraint.",
 | 
						|
      .str_user_error        = "Altering constraint enforcement is not supported for the constraint \'%.*s\'. Enforcement state alter is not supported for the PRIMARY, UNIQUE and FOREIGN KEY type constraints.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5989, Altering constraint enforcement is not supported for the constraint.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5989, Altering constraint enforcement is not supported for the constraint \'%.*s\'. Enforcement state alter is not supported for the PRIMARY, UNIQUE and FOREIGN KEY type constraints."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_REFERS_AUTO_INCREMENT_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_REFERS_AUTO_INCREMENT_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_REFERS_AUTO_INCREMENT_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Check constraint cannot refer to an auto-increment column.",
 | 
						|
      .str_user_error        = "Check constraint \'%.*s\' cannot refer to an auto-increment column.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5990, Check constraint cannot refer to an auto-increment column.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5990, Check constraint \'%.*s\' cannot refer to an auto-increment column."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_NAMED_FUNCTION_IS_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_NAMED_FUNCTION_IS_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_NAMED_FUNCTION_IS_NOT_ALLOWED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "An expression of a check constraint contains disallowed function.",
 | 
						|
      .str_user_error        = "An expression of a check constraint \'%.*s\' contains disallowed function: %.*s.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5991, An expression of a check constraint contains disallowed function.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5991, An expression of a check constraint \'%.*s\' contains disallowed function: %.*s."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_FUNCTION_IS_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_FUNCTION_IS_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_FUNCTION_IS_NOT_ALLOWED,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "An expression of a check constraint contains disallowed function.",
 | 
						|
      .str_user_error        = "An expression of a check constraint \'%.*s\' contains disallowed function",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5992, An expression of a check constraint contains disallowed function.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5992, An expression of a check constraint \'%.*s\' contains disallowed function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_VARIABLES = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_VARIABLES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_VARIABLES,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "An expression of a check constraint cannot refer to a user or system variable.",
 | 
						|
      .str_user_error        = "An expression of a check constraint \'%.*s\' cannot refer to a user or system variable.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5993, An expression of a check constraint cannot refer to a user or system variable.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5993, An expression of a check constraint \'%.*s\' cannot refer to a user or system variable."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CHECK_CONSTRAINT_REFERS_UNKNOWN_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_CHECK_CONSTRAINT_REFERS_UNKNOWN_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CHECK_CONSTRAINT_REFERS_UNKNOWN_COLUMN,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Check constraint refers to non-existing column.",
 | 
						|
      .str_user_error        = "Check constraint \'%.*s\' refers to non-existing column \'%.*s\'.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -5994, Check constraint refers to non-existing column.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -5994, Check constraint \'%.*s\' refers to non-existing column \'%.*s\'."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USE_UDF_IN_PART = {
 | 
						|
      .error_name            = "OB_ERR_USE_UDF_IN_PART",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot use PL/SQL expressions in partitioning or subpartitioning columns",
 | 
						|
      .str_user_error        = "Cannot use PL/SQL expressions in partitioning or subpartitioning columns",
 | 
						|
      .oracle_errno          = 54021,
 | 
						|
      .oracle_str_error      = "ORA-54021: Cannot use PL/SQL expressions in partitioning or subpartitioning columns",
 | 
						|
      .oracle_str_user_error = "ORA-54021: Cannot use PL/SQL expressions in partitioning or subpartitioning columns"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_USE_UDF_NOT_DETERMIN = {
 | 
						|
      .error_name            = "OB_ERR_USE_UDF_NOT_DETERMIN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The function is not deterministic",
 | 
						|
      .str_user_error        = "The function is not deterministic",
 | 
						|
      .oracle_errno          = 30553,
 | 
						|
      .oracle_str_error      = "ORA-30553: The function is not deterministic",
 | 
						|
      .oracle_str_user_error = "ORA-30553: The function is not deterministic"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERVAL_CLAUSE_HAS_MORE_THAN_ONE_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_INTERVAL_CLAUSE_HAS_MORE_THAN_ONE_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Range partitioned table with INTERVAL clause has more than one column",
 | 
						|
      .str_user_error        = "Range partitioned table with INTERVAL clause has more than one column",
 | 
						|
      .oracle_errno          = 14750,
 | 
						|
      .oracle_str_error      = "ORA-14750: Range partitioned table with INTERVAL clause has more than one column",
 | 
						|
      .oracle_str_user_error = "ORA-14750: Range partitioned table with INTERVAL clause has more than one column"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_DATA_TYPE_INTERVAL_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_DATA_TYPE_INTERVAL_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid data type for partitioning column of an interval partitioned table",
 | 
						|
      .str_user_error        = "Invalid data type for partitioning column of an interval partitioned table",
 | 
						|
      .oracle_errno          = 14751,
 | 
						|
      .oracle_str_error      = "ORA-14751: Invalid data type for partitioning column of an interval partitioned table",
 | 
						|
      .oracle_str_user_error = "ORA-14751: Invalid data type for partitioning column of an interval partitioned table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERVAL_EXPR_NOT_CORRECT_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_INTERVAL_EXPR_NOT_CORRECT_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Interval expression is not a constant of the correct type",
 | 
						|
      .str_user_error        = "Interval expression is not a constant of the correct type",
 | 
						|
      .oracle_errno          = 14752,
 | 
						|
      .oracle_str_error      = "ORA-14752: Interval expression is not a constant of the correct type",
 | 
						|
      .oracle_str_user_error = "ORA-14752: Interval expression is not a constant of the correct type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLE_IS_ALREADY_A_RANGE_PARTITIONED_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_TABLE_IS_ALREADY_A_RANGE_PARTITIONED_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table is already a range partitioned table",
 | 
						|
      .str_user_error        = "Table is already a range partitioned table",
 | 
						|
      .oracle_errno          = 14757,
 | 
						|
      .oracle_str_error      = "ORA-14757: Table is already a range partitioned table",
 | 
						|
      .oracle_str_user_error = "ORA-14757: Table is already a range partitioned table"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSACTION_SET_VIOLATION = {
 | 
						|
      .error_name            = "OB_TRANSACTION_SET_VIOLATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Transaction set changed during the execution",
 | 
						|
      .str_user_error        = "Transaction set changed during the execution",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6001, Transaction set changed during the execution",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6001, Transaction set changed during the execution"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_ROLLBACKED = {
 | 
						|
      .error_name            = "OB_TRANS_ROLLBACKED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "40000",
 | 
						|
      .str_error             = "Transaction rollbacked",
 | 
						|
      .str_user_error        = "transaction is rolled back",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXCLUSIVE_LOCK_CONFLICT = {
 | 
						|
      .error_name            = "OB_ERR_EXCLUSIVE_LOCK_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_LOCK_WAIT_TIMEOUT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Lock wait timeout exceeded; try restarting transaction",
 | 
						|
      .str_user_error        = "Lock wait timeout exceeded; try restarting transaction",
 | 
						|
      .oracle_errno          = 30006,
 | 
						|
      .oracle_str_error      = "ORA-30006: resource busy; acquire with WAIT timeout expired",
 | 
						|
      .oracle_str_user_error = "ORA-30006: resource busy; acquire with WAIT timeout expired"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SHARED_LOCK_CONFLICT = {
 | 
						|
      .error_name            = "OB_ERR_SHARED_LOCK_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Statement is timeout",
 | 
						|
      .str_user_error        = "Statement is timeout",
 | 
						|
      .oracle_errno          = 2049,
 | 
						|
      .oracle_str_error      = "ORA-02049: timeout: distributed transaction waiting for lock",
 | 
						|
      .oracle_str_user_error = "ORA-02049: timeout: distributed transaction waiting for lock"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRY_LOCK_ROW_CONFLICT = {
 | 
						|
      .error_name            = "OB_TRY_LOCK_ROW_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Try lock row conflict",
 | 
						|
      .str_user_error        = "Try lock row conflict",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6005, Try lock row conflict",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6005, Try lock row conflict"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXCLUSIVE_LOCK_CONFLICT_NOWAIT = {
 | 
						|
      .error_name            = "OB_ERR_EXCLUSIVE_LOCK_CONFLICT_NOWAIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_LOCK_WAIT_TIMEOUT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Lock wait timeout exceeded; try restarting transaction",
 | 
						|
      .str_user_error        = "Lock wait timeout exceeded; try restarting transaction",
 | 
						|
      .oracle_errno          = 54,
 | 
						|
      .oracle_str_error      = "ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired",
 | 
						|
      .oracle_str_user_error = "ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLOCK_OUT_OF_ORDER = {
 | 
						|
      .error_name            = "OB_CLOCK_OUT_OF_ORDER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Clock out of order",
 | 
						|
      .str_user_error        = "Clock out of order",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6201, Clock out of order",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6201, Clock out of order"
 | 
						|
};
 | 
						|
static const _error _error_OB_SWITCHING_TO_FOLLOWER_GRACEFULLY = {
 | 
						|
      .error_name            = "OB_SWITCHING_TO_FOLLOWER_GRACEFULLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "tx ctx switching to follower gracefully",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6202, tx ctx switching to follower gracefully",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6202, %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_MASK_SET_NO_NODE = {
 | 
						|
      .error_name            = "OB_MASK_SET_NO_NODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Mask set has no node",
 | 
						|
      .str_user_error        = "Mask set has no node",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6203, Mask set has no node",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6203, Mask set has no node"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_HAS_DECIDED = {
 | 
						|
      .error_name            = "OB_TRANS_HAS_DECIDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction has been decided",
 | 
						|
      .str_user_error        = "Transaction has been decided",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6204, Transaction has been decided",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6204, Transaction has been decided"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_INVALID_STATE = {
 | 
						|
      .error_name            = "OB_TRANS_INVALID_STATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction state invalid",
 | 
						|
      .str_user_error        = "Transaction state invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6205, Transaction state invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6205, Transaction state invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_STATE_NOT_CHANGE = {
 | 
						|
      .error_name            = "OB_TRANS_STATE_NOT_CHANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction state not changed",
 | 
						|
      .str_user_error        = "Transaction state not changed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6206, Transaction state not changed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6206, Transaction state not changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_PROTOCOL_ERROR = {
 | 
						|
      .error_name            = "OB_TRANS_PROTOCOL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction protocol error",
 | 
						|
      .str_user_error        = "Transaction protocol error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6207, Transaction protocol error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6207, Transaction protocol error"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_INVALID_MESSAGE = {
 | 
						|
      .error_name            = "OB_TRANS_INVALID_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction message invalid",
 | 
						|
      .str_user_error        = "Transaction message invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6208, Transaction message invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6208, Transaction message invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_INVALID_MESSAGE_TYPE = {
 | 
						|
      .error_name            = "OB_TRANS_INVALID_MESSAGE_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction message type invalid",
 | 
						|
      .str_user_error        = "Transaction message type invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6209, Transaction message type invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6209, Transaction message type invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_TIMEOUT = {
 | 
						|
      .error_name            = "OB_TRANS_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Transaction timeout occurred, please rollback the transaction, set the variable ob_trx_timeout to a larger value and then restart the transaction",
 | 
						|
      .str_user_error        = "Transaction timeout occurred, please rollback the transaction, set the variable ob_trx_timeout to a larger value and then restart the transaction",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6210, Transaction timeout occurred, please rollback the transaction, set the variable ob_trx_timeout to a larger value and then restart the transaction",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6210, Transaction timeout occurred, please rollback the transaction, set the variable ob_trx_timeout to a larger value and then restart the transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_KILLED = {
 | 
						|
      .error_name            = "OB_TRANS_KILLED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Transaction is killed",
 | 
						|
      .str_user_error        = "Transaction is killed",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: transaction is killed",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: transaction is killed"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_STMT_TIMEOUT = {
 | 
						|
      .error_name            = "OB_TRANS_STMT_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Statement timeout occurred, please set the variable ob_query_timeout to a larger value an then restart the statement",
 | 
						|
      .str_user_error        = "Statement timeout occurred, please set the variable ob_query_timeout to a larger value an then restart the statement",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6212, Statement timeout occurred, please set the variable ob_query_timeout to a larger value an then restart the statement",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6212, Statement timeout occurred, please set the variable ob_query_timeout to a larger value an then restart the statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_CTX_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TRANS_CTX_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction context does not exist",
 | 
						|
      .str_user_error        = "Transaction context does not exist",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: transaction context does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: transaction context does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_FROZEN = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_FROZEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Partition is frozen",
 | 
						|
      .str_user_error        = "Partition is frozen",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: partition is frozen",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: partition is frozen"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_NOT_FROZEN = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_NOT_FROZEN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition is not frozen",
 | 
						|
      .str_user_error        = "Partition is not frozen",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6215, Partition is not frozen",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6215, Partition is not frozen"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_INVALID_LOG_TYPE = {
 | 
						|
      .error_name            = "OB_TRANS_INVALID_LOG_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction invalid log type",
 | 
						|
      .str_user_error        = "Transaction invalid log type",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6219, Transaction invalid log type",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6219, Transaction invalid log type"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_SQL_SEQUENCE_ILLEGAL = {
 | 
						|
      .error_name            = "OB_TRANS_SQL_SEQUENCE_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SQL sequence illegal",
 | 
						|
      .str_user_error        = "SQL sequence illegal",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6220, SQL sequence illegal",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6220, SQL sequence illegal"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_CANNOT_BE_KILLED = {
 | 
						|
      .error_name            = "OB_TRANS_CANNOT_BE_KILLED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction context cannot be killed",
 | 
						|
      .str_user_error        = "Transaction context cannot be killed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6221, Transaction context cannot be killed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6221, Transaction context cannot be killed"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_STATE_UNKNOWN = {
 | 
						|
      .error_name            = "OB_TRANS_STATE_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction state unknown",
 | 
						|
      .str_user_error        = "Transaction state unknown",
 | 
						|
      .oracle_errno          = 25405,
 | 
						|
      .oracle_str_error      = "ORA-25405: transaction status unknown",
 | 
						|
      .oracle_str_user_error = "ORA-25405: transaction status unknown"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_IS_EXITING = {
 | 
						|
      .error_name            = "OB_TRANS_IS_EXITING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Transaction exiting",
 | 
						|
      .str_user_error        = "Transaction exiting",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: Transaction exiting",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: Transaction exiting"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_NEED_ROLLBACK = {
 | 
						|
      .error_name            = "OB_TRANS_NEED_ROLLBACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "transaction needs rollback",
 | 
						|
      .str_user_error        = "transaction needs rollback",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: transaction needs rollback",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: transaction needs rollback"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_UNKNOWN = {
 | 
						|
      .error_name            = "OB_TRANS_UNKNOWN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Transaction result is unknown",
 | 
						|
      .str_user_error        = "Transaction result is unknown",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6225, Transaction result is unknown",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6225, Transaction result is unknown"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_READ_ONLY_TRANSACTION = {
 | 
						|
      .error_name            = "OB_ERR_READ_ONLY_TRANSACTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION,
 | 
						|
      .sqlstate              = "25006",
 | 
						|
      .str_error             = "Cannot execute statement in a READ ONLY transaction",
 | 
						|
      .str_user_error        = "Cannot execute statement in a READ ONLY transaction",
 | 
						|
      .oracle_errno          = 1456,
 | 
						|
      .oracle_str_error      = "ORA-01456: may not perform insert/delete/update operation inside a READ ONLY transaction",
 | 
						|
      .oracle_str_user_error = "ORA-01456: may not perform insert/delete/update operation inside a READ ONLY transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_NOT_STOPPED = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_NOT_STOPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition is not stopped",
 | 
						|
      .str_user_error        = "Partition is not stopped",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6227, Partition is not stopped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6227, Partition is not stopped"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_STOPPED = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_STOPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition has been stopped",
 | 
						|
      .str_user_error        = "Partition has been stopped",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6228, Partition has been stopped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6228, Partition has been stopped"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_BLOCKED = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_BLOCKED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition has been blocked",
 | 
						|
      .str_user_error        = "Partition has been blocked",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6229, Partition has been blocked",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6229, Partition has been blocked"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_RPC_TIMEOUT = {
 | 
						|
      .error_name            = "OB_TRANS_RPC_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 4012,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "transaction rpc timeout",
 | 
						|
      .str_user_error        = "transaction rpc timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6230, transaction rpc timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6230, transaction rpc timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_REPLICA_NOT_READABLE = {
 | 
						|
      .error_name            = "OB_REPLICA_NOT_READABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "replica is not readable",
 | 
						|
      .str_user_error        = "replica is not readable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6231, replica is not readable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6231, replica is not readable"
 | 
						|
};
 | 
						|
static const _error _error_OB_PARTITION_IS_SPLITTING = {
 | 
						|
      .error_name            = "OB_PARTITION_IS_SPLITTING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Partition is splitting",
 | 
						|
      .str_user_error        = "Partition is splitting",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6232, Partition is splitting",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6232, Partition is splitting"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_COMMITED = {
 | 
						|
      .error_name            = "OB_TRANS_COMMITED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction has been commited",
 | 
						|
      .str_user_error        = "Transaction has been commited",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6233, Transaction has been commited",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6233, Transaction has been commited"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_CTX_COUNT_REACH_LIMIT = {
 | 
						|
      .error_name            = "OB_TRANS_CTX_COUNT_REACH_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "transaction context count reach limit",
 | 
						|
      .str_user_error        = "transaction context count reach limit",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: transaction context count reach limit",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: transaction context count reach limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_CANNOT_SERIALIZE = {
 | 
						|
      .error_name            = "OB_TRANS_CANNOT_SERIALIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "can't serialize access for this transaction",
 | 
						|
      .str_user_error        = "can't serialize access for this transaction",
 | 
						|
      .oracle_errno          = 8177,
 | 
						|
      .oracle_str_error      = "ORA-08177: can't serialize access for this transaction",
 | 
						|
      .oracle_str_user_error = "ORA-08177: can't serialize access for this transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_WEAK_READ_VERSION_NOT_READY = {
 | 
						|
      .error_name            = "OB_TRANS_WEAK_READ_VERSION_NOT_READY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transaction weak read version is not ready",
 | 
						|
      .str_user_error        = "transaction weak read version is not ready",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6236, transaction weak read version is not ready",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6236, transaction weak read version is not ready"
 | 
						|
};
 | 
						|
static const _error _error_OB_GTS_STANDBY_IS_INVALID = {
 | 
						|
      .error_name            = "OB_GTS_STANDBY_IS_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "gts standby is invalid",
 | 
						|
      .str_user_error        = "gts standby is invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6237, gts standby is invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6237, gts standby is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_GTS_UPDATE_FAILED = {
 | 
						|
      .error_name            = "OB_GTS_UPDATE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "gts update failed",
 | 
						|
      .str_user_error        = "gts update failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6238, gts update failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6238, gts update failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_GTS_IS_NOT_SERVING = {
 | 
						|
      .error_name            = "OB_GTS_IS_NOT_SERVING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "gts is not serving",
 | 
						|
      .str_user_error        = "gts is not serving",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6239, gts is not serving",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6239, gts is not serving"
 | 
						|
};
 | 
						|
static const _error _error_OB_PG_PARTITION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_PG_PARTITION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "pg partition not exist",
 | 
						|
      .str_user_error        = "pg partition not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6240, pg partition not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6240, pg partition not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_STMT_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_TRANS_STMT_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transaction statement need retry",
 | 
						|
      .str_user_error        = "transaction statement need retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6241, transaction statement need retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6241, transaction statement need retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_SAVEPOINT_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_SAVEPOINT_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_DOES_NOT_EXIST,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "savepoint does not exist",
 | 
						|
      .str_user_error        = "savepoint does not exist",
 | 
						|
      .oracle_errno          = 1086,
 | 
						|
      .oracle_str_error      = "ORA-01086: savepoint does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01086: savepoint does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_WAIT_SCHEMA_REFRESH = {
 | 
						|
      .error_name            = "OB_TRANS_WAIT_SCHEMA_REFRESH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "local schema is not new enough, replaying logs of user table from standby cluster needs to wait for schema refreshing ",
 | 
						|
      .str_user_error        = "local schema is not new enough, replaying logs of user table from standby cluster needs to wait for schema refreshing ",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6243, local schema is not new enough, replaying logs of user table from standby cluster needs to wait for schema refreshing ",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6243, local schema is not new enough, replaying logs of user table from standby cluster needs to wait for schema refreshing "
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_OUT_OF_THRESHOLD = {
 | 
						|
      .error_name            = "OB_TRANS_OUT_OF_THRESHOLD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "out of transaction threshold",
 | 
						|
      .str_user_error        = "out of transaction threshold",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6244, out of transaction threshold",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6244, out of transaction threshold"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_NOTA = {
 | 
						|
      .error_name            = "OB_TRANS_XA_NOTA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_NOTA,
 | 
						|
      .sqlstate              = "XAE04",
 | 
						|
      .str_error             = "Unknown XID",
 | 
						|
      .str_user_error        = "Unknown XID",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6245, Unknown XID",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6245, Unknown XID"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_RMFAIL = {
 | 
						|
      .error_name            = "OB_TRANS_XA_RMFAIL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_RMFAIL,
 | 
						|
      .sqlstate              = "XAE07",
 | 
						|
      .str_error             = "The command cannot be executed when global transaction is in this state",
 | 
						|
      .str_user_error        = "The command cannot be executed when global transaction is in the %s state",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6246, The command cannot be executed when global transaction is in this state",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6246, The command cannot be executed when global transaction is in the %s state"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_DUPID = {
 | 
						|
      .error_name            = "OB_TRANS_XA_DUPID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_DUPID,
 | 
						|
      .sqlstate              = "XAE08",
 | 
						|
      .str_error             = "The XID already exists",
 | 
						|
      .str_user_error        = "The XID already exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6247, The XID already exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6247, The XID already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_OUTSIDE = {
 | 
						|
      .error_name            = "OB_TRANS_XA_OUTSIDE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_OUTSIDE,
 | 
						|
      .sqlstate              = "XAE09",
 | 
						|
      .str_error             = "Some work is done outside global transaction",
 | 
						|
      .str_user_error        = "Some work is done outside global transaction",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6248, Some work is done outside global transaction",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6248, Some work is done outside global transaction"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_INVAL = {
 | 
						|
      .error_name            = "OB_TRANS_XA_INVAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_INVAL,
 | 
						|
      .sqlstate              = "XAE05",
 | 
						|
      .str_error             = "Invalid arguments were given",
 | 
						|
      .str_user_error        = "Invalid arguments were given",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6249, Invalid arguments were given",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6249, Invalid arguments were given"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_RMERR = {
 | 
						|
      .error_name            = "OB_TRANS_XA_RMERR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_RMERR,
 | 
						|
      .sqlstate              = "XAE03",
 | 
						|
      .str_error             = "Resource manager error occurred in the transaction branch",
 | 
						|
      .str_user_error        = "Resource manager error occurred in the transaction branch",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6250, Resource manager error occurred in the transaction branch",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6250, Resource manager error occurred in the transaction branch"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_PROTO = {
 | 
						|
      .error_name            = "OB_TRANS_XA_PROTO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Routine invoked in an improper context",
 | 
						|
      .str_user_error        = "Routine invoked in an improper context",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6251, Routine invoked in an improper context",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6251, Routine invoked in an improper context"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_RBROLLBACK = {
 | 
						|
      .error_name            = "OB_TRANS_XA_RBROLLBACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XA_RBROLLBACK,
 | 
						|
      .sqlstate              = "XA100",
 | 
						|
      .str_error             = "Rollback was caused by an unspecified reason",
 | 
						|
      .str_user_error        = "Rollback was caused by an unspecified reason",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6252, Rollback was caused by an unspecified reason",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6252, Rollback was caused by an unspecified reason"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_RBTIMEOUT = {
 | 
						|
      .error_name            = "OB_TRANS_XA_RBTIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XA_RBTIMEOUT,
 | 
						|
      .sqlstate              = "XA106",
 | 
						|
      .str_error             = "Transaction branch took long",
 | 
						|
      .str_user_error        = "Transaction branch took long",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6253, Transaction branch took long",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6253, Transaction branch took long"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_RDONLY = {
 | 
						|
      .error_name            = "OB_TRANS_XA_RDONLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Transaction was read-only and has been committed",
 | 
						|
      .str_user_error        = "Transaction was read-only and has been committed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6254, Transaction was read-only and has been committed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6254, Transaction was read-only and has been committed"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_RETRY = {
 | 
						|
      .error_name            = "OB_TRANS_XA_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Routine returned with no effect and may be re-issued",
 | 
						|
      .str_user_error        = "Routine returned with no effect and may be re-issued",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6255, Routine returned with no effect and may be re-issued",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6255, Routine returned with no effect and may be re-issued"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ROW_NOT_LOCKED = {
 | 
						|
      .error_name            = "OB_ERR_ROW_NOT_LOCKED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Row has not been locked",
 | 
						|
      .str_user_error        = "Row has not been locked",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6256, Row has not been locked",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6256, Row has not been locked"
 | 
						|
};
 | 
						|
static const _error _error_OB_EMPTY_PG = {
 | 
						|
      .error_name            = "OB_EMPTY_PG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Empty partition group",
 | 
						|
      .str_user_error        = "Empty partition group",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6257, Empty partition group",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6257, Empty partition group"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_ERR_COMMIT = {
 | 
						|
      .error_name            = "OB_TRANS_XA_ERR_COMMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_XAER_RMFAIL,
 | 
						|
      .sqlstate              = "XAE07",
 | 
						|
      .str_error             = "RMFAIL: The command cannot be executed when global transaction is in this state",
 | 
						|
      .str_user_error        = "RMFAIL: The command cannot be executed when global transaction is in the %s state",
 | 
						|
      .oracle_errno          = 2089,
 | 
						|
      .oracle_str_error      = "ORA-02089: COMMIT is not allowed in a subordinate session",
 | 
						|
      .oracle_str_user_error = "ORA-02089: COMMIT is not allowed in a subordinate session"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESTORE_POINT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_RESTORE_POINT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Restore point %s already exists",
 | 
						|
      .str_user_error        = "Restore point %s already exists",
 | 
						|
      .oracle_errno          = 38778,
 | 
						|
      .oracle_str_error      = "ORA-38778: Restore point %s already exists",
 | 
						|
      .oracle_str_user_error = "ORA-38778: Restore point %s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESTORE_POINT_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_RESTORE_POINT_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Restore point %s does not exist",
 | 
						|
      .str_user_error        = "Restore point %s does not exist",
 | 
						|
      .oracle_errno          = 38780,
 | 
						|
      .oracle_str_error      = "ORA-38780: Restore point %s does not exists",
 | 
						|
      .oracle_str_user_error = "ORA-38780: Restore point %s does not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BACKUP_POINT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_BACKUP_POINT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Backup point %s already exists",
 | 
						|
      .str_user_error        = "Backup point %s already exists",
 | 
						|
      .oracle_errno          = 38778,
 | 
						|
      .oracle_str_error      = "ORA-38778: Restore point %s already exists",
 | 
						|
      .oracle_str_user_error = "ORA-38778: Restore point %s already exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BACKUP_POINT_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_BACKUP_POINT_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Backup point %s does not exist",
 | 
						|
      .str_user_error        = "Backup point %s does not exist",
 | 
						|
      .oracle_errno          = 38780,
 | 
						|
      .oracle_str_error      = "ORA-38780: Restore point %s does not exists",
 | 
						|
      .oracle_str_user_error = "ORA-38780: Restore point %s does not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESTORE_POINT_TOO_MANY = {
 | 
						|
      .error_name            = "OB_ERR_RESTORE_POINT_TOO_MANY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot create restore point - too many restore points",
 | 
						|
      .str_user_error        = "cannot create restore point - too many restore points",
 | 
						|
      .oracle_errno          = 38779,
 | 
						|
      .oracle_str_error      = "ORA-38779: cannot create restore point - too many restore points",
 | 
						|
      .oracle_str_user_error = "ORA-38779: cannot create restore point - too many restore points"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_XA_BRANCH_FAIL = {
 | 
						|
      .error_name            = "OB_TRANS_XA_BRANCH_FAIL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "another session or branch in same transaction failed or finalized",
 | 
						|
      .str_user_error        = "another session or branch in same transaction failed or finalized",
 | 
						|
      .oracle_errno          = 2051,
 | 
						|
      .oracle_str_error      = "ORA-02051: another session or branch in same transaction failed or finalized",
 | 
						|
      .oracle_str_user_error = "ORA-02051: another session or branch in same transaction failed or finalized"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_LOCK_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_OBJ_LOCK_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object lock does not exist.",
 | 
						|
      .str_user_error        = "object lock does not exist.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6265, object lock does not exist.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6265, object lock does not exist."
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_LOCK_EXIST = {
 | 
						|
      .error_name            = "OB_OBJ_LOCK_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object lock exists.",
 | 
						|
      .str_user_error        = "object lock exists.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6266, object lock exists.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6266, object lock exists."
 | 
						|
};
 | 
						|
static const _error _error_OB_TRY_LOCK_OBJ_CONFLICT = {
 | 
						|
      .error_name            = "OB_TRY_LOCK_OBJ_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Try lock object conflict",
 | 
						|
      .str_user_error        = "Try lock object conflict",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6267, Try lock object conflict",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6267, Try lock object conflict"
 | 
						|
};
 | 
						|
static const _error _error_OB_TX_NOLOGCB = {
 | 
						|
      .error_name            = "OB_TX_NOLOGCB",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "No log callbacks available",
 | 
						|
      .str_user_error        = "No log callbacks available",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6268, No log callbacks available",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6268, No log callbacks available"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ADD_PARTITION_ON_INTERVAL = {
 | 
						|
      .error_name            = "OB_ERR_ADD_PARTITION_ON_INTERVAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ADD PARTITION is not permitted on Interval partitioned objects",
 | 
						|
      .str_user_error        = "ADD PARTITION is not permitted on Interval partitioned objects",
 | 
						|
      .oracle_errno          = 14760,
 | 
						|
      .oracle_str_error      = "ORA-14760: ADD PARTITION is not permitted on Interval partitioned objects",
 | 
						|
      .oracle_str_user_error = "ORA-14760: ADD PARTITION is not permitted on Interval partitioned objects"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MAXVALUE_PARTITION_WITH_INTERVAL = {
 | 
						|
      .error_name            = "OB_ERR_MAXVALUE_PARTITION_WITH_INTERVAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MAXVALUE partition cannot be specified for Interval partitioned objects",
 | 
						|
      .str_user_error        = "MAXVALUE partition cannot be specified for Interval partitioned objects",
 | 
						|
      .oracle_errno          = 14761,
 | 
						|
      .oracle_str_error      = "ORA-14761: MAXVALUE partition cannot be specified for Interval partitioned objects",
 | 
						|
      .oracle_str_user_error = "ORA-14761: MAXVALUE partition cannot be specified for Interval partitioned objects"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_INTERVAL_HIGH_BOUNDS = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_INTERVAL_HIGH_BOUNDS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot specify this interval with existing high bounds",
 | 
						|
      .str_user_error        = "Cannot specify this interval with existing high bounds",
 | 
						|
      .oracle_errno          = 14767,
 | 
						|
      .oracle_str_error      = "ORA-14767: Cannot specify this interval with existing high bounds",
 | 
						|
      .oracle_str_user_error = "ORA-14767: Cannot specify this interval with existing high bounds"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_PARTITION_FOR_INTERVAL_PART = {
 | 
						|
      .error_name            = "OB_NO_PARTITION_FOR_INTERVAL_PART",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table has no partition for value in interval partition table",
 | 
						|
      .str_user_error        = "Table has no partition for value in interval partition table",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6272, Table has no partition for value in interval partition table",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6272, Table has no partition for value in interval partition table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTERVAL_CANNOT_BE_ZERO = {
 | 
						|
      .error_name            = "OB_ERR_INTERVAL_CANNOT_BE_ZERO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Interval cannot be zero",
 | 
						|
      .str_user_error        = "Interval cannot be zero",
 | 
						|
      .oracle_errno          = 14753,
 | 
						|
      .oracle_str_error      = "ORA-14753: Interval cannot be zero",
 | 
						|
      .oracle_str_user_error = "ORA-14753: Interval cannot be zero"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARTITIONING_KEY_MAPS_TO_A_PARTITION_OUTSIDE_MAXIMUM_PERMITTED_NUMBER_OF_PARTITIONS = {
 | 
						|
      .error_name            = "OB_ERR_PARTITIONING_KEY_MAPS_TO_A_PARTITION_OUTSIDE_MAXIMUM_PERMITTED_NUMBER_OF_PARTITIONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "partitioning key maps to a partition outside maximum permitted number of partitions",
 | 
						|
      .str_user_error        = "partitioning key maps to a partition outside maximum permitted number of partitions",
 | 
						|
      .oracle_errno          = 14300,
 | 
						|
      .oracle_str_error      = "ORA-14300: partitioning key maps to a partition outside maximum permitted number of partitions",
 | 
						|
      .oracle_str_user_error = "ORA-14300: partitioning key maps to a partition outside maximum permitted number of partitions"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_LOCK_NOT_COMPLETED = {
 | 
						|
      .error_name            = "OB_OBJ_LOCK_NOT_COMPLETED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object lock not completed, and can not unlock.",
 | 
						|
      .str_user_error        = "object lock not completed, and can not unlock.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6275, object lock not completed, and can not unlock.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6275, object lock not completed, and can not unlock."
 | 
						|
};
 | 
						|
static const _error _error_OB_OBJ_UNLOCK_CONFLICT = {
 | 
						|
      .error_name            = "OB_OBJ_UNLOCK_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "there is an unlock operation doing, unlock conflict.",
 | 
						|
      .str_user_error        = "there is an unlock operation doing, unlock conflict.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6276, there is an unlock operation doing, unlock conflict.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6276, there is an unlock operation doing, unlock conflict."
 | 
						|
};
 | 
						|
static const _error _error_OB_SCN_OUT_OF_BOUND = {
 | 
						|
      .error_name            = "OB_SCN_OUT_OF_BOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "scn is out of bounds of memtable",
 | 
						|
      .str_user_error        = "scn is out of bounds of memtable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6277, scn is out of bounds of memtable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6277, scn is out of bounds of memtable"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_IDLE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_TRANS_IDLE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = 6002,
 | 
						|
      .sqlstate              = "25000",
 | 
						|
      .str_error             = "Transaction idle timeout occurred, please rollback the transaction, set the variable ob_trx_idle_timeout to a larger value and then restart the transaction",
 | 
						|
      .str_user_error        = "Transaction idle timeout occurred, please rollback the transaction, set the variable ob_trx_idle_timeout to a larger value and then restart the transaction",
 | 
						|
      .oracle_errno          = 24761,
 | 
						|
      .oracle_str_error      = "ORA-24761: transaction rolled back: transaction idle timeout",
 | 
						|
      .oracle_str_user_error = "ORA-24761: transaction rolled back: transaction idle timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ID_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_LOG_ID_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log id not found",
 | 
						|
      .str_user_error        = "log id not found",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6301, log id not found",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6301, log id not found"
 | 
						|
};
 | 
						|
static const _error _error_OB_LSR_THREAD_STOPPED = {
 | 
						|
      .error_name            = "OB_LSR_THREAD_STOPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log scan runnable thread stop",
 | 
						|
      .str_user_error        = "log scan runnable thread stop",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6302, log scan runnable thread stop",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6302, log scan runnable thread stop"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_LOG = {
 | 
						|
      .error_name            = "OB_NO_LOG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no log ever scanned",
 | 
						|
      .str_user_error        = "no log ever scanned",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6303, no log ever scanned",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6303, no log ever scanned"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ID_RANGE_ERROR = {
 | 
						|
      .error_name            = "OB_LOG_ID_RANGE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log id range error",
 | 
						|
      .str_user_error        = "log id range error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6304, log id range error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6304, log id range error"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ITER_ENOUGH = {
 | 
						|
      .error_name            = "OB_LOG_ITER_ENOUGH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "iter scans enough files",
 | 
						|
      .str_user_error        = "iter scans enough files",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6305, iter scans enough files",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6305, iter scans enough files"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLOG_INVALID_ACK = {
 | 
						|
      .error_name            = "OB_CLOG_INVALID_ACK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid ack msg",
 | 
						|
      .str_user_error        = "invalid ack msg",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6306, invalid ack msg",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6306, invalid ack msg"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLOG_CACHE_INVALID = {
 | 
						|
      .error_name            = "OB_CLOG_CACHE_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "clog cache invalid",
 | 
						|
      .str_user_error        = "clog cache invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6307, clog cache invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6307, clog cache invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_EXT_HANDLE_UNFINISH = {
 | 
						|
      .error_name            = "OB_EXT_HANDLE_UNFINISH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "external executor handle do not finish",
 | 
						|
      .str_user_error        = "external executor handle do not finish",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6308, external executor handle do not finish",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6308, external executor handle do not finish"
 | 
						|
};
 | 
						|
static const _error _error_OB_CURSOR_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_CURSOR_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cursor not exist",
 | 
						|
      .str_user_error        = "cursor not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6309, cursor not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6309, cursor not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_STREAM_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_STREAM_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "stream not exist",
 | 
						|
      .str_user_error        = "stream not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6310, stream not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6310, stream not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_STREAM_BUSY = {
 | 
						|
      .error_name            = "OB_STREAM_BUSY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "stream busy",
 | 
						|
      .str_user_error        = "stream busy",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6311, stream busy",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6311, stream busy"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_RECYCLED = {
 | 
						|
      .error_name            = "OB_FILE_RECYCLED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file recycled",
 | 
						|
      .str_user_error        = "file recycled",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6312, file recycled",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6312, file recycled"
 | 
						|
};
 | 
						|
static const _error _error_OB_REPLAY_EAGAIN_TOO_MUCH_TIME = {
 | 
						|
      .error_name            = "OB_REPLAY_EAGAIN_TOO_MUCH_TIME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "replay eagain cost too much time",
 | 
						|
      .str_user_error        = "replay eagain cost too much time",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6313, replay eagain cost too much time",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6313, replay eagain cost too much time"
 | 
						|
};
 | 
						|
static const _error _error_OB_MEMBER_CHANGE_FAILED = {
 | 
						|
      .error_name            = "OB_MEMBER_CHANGE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "member change log sync failed",
 | 
						|
      .str_user_error        = "member change log sync failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6314, member change log sync failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6314, member change log sync failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_NEED_BATCH_CTX = {
 | 
						|
      .error_name            = "OB_NO_NEED_BATCH_CTX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no need batch ctx",
 | 
						|
      .str_user_error        = "no need batch ctx",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6315, no need batch ctx",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6315, no need batch ctx"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_LARGE_LOG_ID = {
 | 
						|
      .error_name            = "OB_TOO_LARGE_LOG_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too large log id",
 | 
						|
      .str_user_error        = "too large log id",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6316, too large log id",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6316, too large log id"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALLOC_LOG_ID_NEED_RETRY = {
 | 
						|
      .error_name            = "OB_ALLOC_LOG_ID_NEED_RETRY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "alloc log id need retry",
 | 
						|
      .str_user_error        = "alloc log id need retry",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6317, alloc log id need retry",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6317, alloc log id need retry"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANS_ONE_PC_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_TRANS_ONE_PC_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transaction one pc not allowed",
 | 
						|
      .str_user_error        = "transaction one pc not allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6318, transaction one pc not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6318, transaction one pc not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_NEED_REBUILD = {
 | 
						|
      .error_name            = "OB_LOG_NEED_REBUILD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "need rebuild",
 | 
						|
      .str_user_error        = "need rebuild",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6319, need rebuild",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6319, need rebuild"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_LOG_TASK = {
 | 
						|
      .error_name            = "OB_TOO_MANY_LOG_TASK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many log tasks",
 | 
						|
      .str_user_error        = "too many log tasks",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6320, too many log tasks",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6320, too many log tasks"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_BATCH_SIZE = {
 | 
						|
      .error_name            = "OB_INVALID_BATCH_SIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ob invalid batch size",
 | 
						|
      .str_user_error        = "ob invalid batch size",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6321, ob invalid batch size",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6321, ob invalid batch size"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLOG_SLIDE_TIMEOUT = {
 | 
						|
      .error_name            = "OB_CLOG_SLIDE_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ob clog slide timeout",
 | 
						|
      .str_user_error        = "ob clog slide timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -6322, ob clog slide timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -6322, ob clog slide timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_LOGBUF_FULL = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_LOGBUF_FULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The log buffer is full",
 | 
						|
      .str_user_error        = "The log buffer is full",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7000, The log buffer is full",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7000, The log buffer is full"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_LOGBUF_EMPTY = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_LOGBUF_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The log buffer is empty",
 | 
						|
      .str_user_error        = "The log buffer is empty",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7001, The log buffer is empty",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7001, The log buffer is empty"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_NOT_RUNNING = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_NOT_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The object is not running",
 | 
						|
      .str_user_error        = "The object is not running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7002, The object is not running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7002, The object is not running"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_IS_RUNNING = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_IS_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The object is running",
 | 
						|
      .str_user_error        = "The object is running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7003, The object is running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7003, The object is running"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_NOT_REACH_MAJORITY = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_NOT_REACH_MAJORITY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election does not reach majority",
 | 
						|
      .str_user_error        = "Election does not reach majority",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7004, Election does not reach majority",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7004, Election does not reach majority"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_INVALID_SERVER = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_INVALID_SERVER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The server is not valid",
 | 
						|
      .str_user_error        = "The server is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7005, The server is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7005, The server is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_INVALID_LEADER = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_INVALID_LEADER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The leader is not valid",
 | 
						|
      .str_user_error        = "The leader is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7006, The leader is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7006, The leader is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_LEADER_LEASE_EXPIRED = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_LEADER_LEASE_EXPIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The leader lease is expired",
 | 
						|
      .str_user_error        = "The leader lease is expired",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7007, The leader lease is expired",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7007, The leader lease is expired"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_INVALID_MESSAGE = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_INVALID_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The message is not valid",
 | 
						|
      .str_user_error        = "The message is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7010, The message is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7010, The message is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_MESSAGE_NOT_INTIME = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_MESSAGE_NOT_INTIME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The message is not intime",
 | 
						|
      .str_user_error        = "The message is not intime",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7011, The message is not intime",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7011, The message is not intime"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_NOT_CANDIDATE = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_NOT_CANDIDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The server is not candidate",
 | 
						|
      .str_user_error        = "The server is not candidate",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7012, The server is not candidate",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7012, The server is not candidate"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_NOT_CANDIDATE_OR_VOTER = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_NOT_CANDIDATE_OR_VOTER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The server is not candidate or voter",
 | 
						|
      .str_user_error        = "The server is not candidate or voter",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7013, The server is not candidate or voter",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7013, The server is not candidate or voter"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_PROTOCOL_ERROR = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_PROTOCOL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election protocol error",
 | 
						|
      .str_user_error        = "Election protocol error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7014, Election protocol error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7014, Election protocol error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_RUNTIME_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_RUNTIME_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The task run time out of range",
 | 
						|
      .str_user_error        = "The task run time out of range",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7015, The task run time out of range",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7015, The task run time out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_LAST_OPERATION_NOT_DONE = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_LAST_OPERATION_NOT_DONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Last operation has not done",
 | 
						|
      .str_user_error        = "Last operation has not done",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7021, Last operation has not done",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7021, Last operation has not done"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_CURRENT_SERVER_NOT_LEADER = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_CURRENT_SERVER_NOT_LEADER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Current server is not leader",
 | 
						|
      .str_user_error        = "Current server is not leader",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7022, Current server is not leader",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7022, Current server is not leader"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_NO_PREPARE_MESSAGE = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_NO_PREPARE_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "There is not prepare message",
 | 
						|
      .str_user_error        = "There is not prepare message",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7024, There is not prepare message",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7024, There is not prepare message"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_ERROR_MULTI_PREPARE_MESSAGE = {
 | 
						|
      .error_name            = "OB_ELECTION_ERROR_MULTI_PREPARE_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "There is more than one prepare message",
 | 
						|
      .str_user_error        = "There is more than one prepare message",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7025, There is more than one prepare message",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7025, There is more than one prepare message"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ELECTION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election does not exist",
 | 
						|
      .str_user_error        = "Election does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7026, Election does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7026, Election does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_MGR_IS_RUNNING = {
 | 
						|
      .error_name            = "OB_ELECTION_MGR_IS_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election manager is running",
 | 
						|
      .str_user_error        = "Election manager is running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7027, Election manager is running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7027, Election manager is running"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_NO_MAJORITY_PREPARE_MESSAGE = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_NO_MAJORITY_PREPARE_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election msg pool not have majority prepare message",
 | 
						|
      .str_user_error        = "Election msg pool not have majority prepare message",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7029, Election msg pool not have majority prepare message",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7029, Election msg pool not have majority prepare message"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_ASYNC_LOG_WARN_INIT = {
 | 
						|
      .error_name            = "OB_ELECTION_ASYNC_LOG_WARN_INIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election async log init error",
 | 
						|
      .str_user_error        = "Election async log init error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7030, Election async log init error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7030, Election async log init error"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WAIT_LEADER_MESSAGE = {
 | 
						|
      .error_name            = "OB_ELECTION_WAIT_LEADER_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election waiting leader message",
 | 
						|
      .str_user_error        = "Election waiting leader message",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7031, Election waiting leader message",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7031, Election waiting leader message"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_GROUP_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ELECTION_GROUP_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election group not exist",
 | 
						|
      .str_user_error        = "Election group not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7032, Election group not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7032, Election group not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_UNEXPECT_EG_VERSION = {
 | 
						|
      .error_name            = "OB_UNEXPECT_EG_VERSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unexpected eg_version",
 | 
						|
      .str_user_error        = "unexpected eg_version",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7033, unexpected eg_version",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7033, unexpected eg_version"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_GROUP_MGR_IS_RUNNING = {
 | 
						|
      .error_name            = "OB_ELECTION_GROUP_MGR_IS_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "election_group_mgr is running",
 | 
						|
      .str_user_error        = "election_group_mgr is running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7034, election_group_mgr is running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7034, election_group_mgr is running"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_MGR_NOT_RUNNING = {
 | 
						|
      .error_name            = "OB_ELECTION_MGR_NOT_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Election manager is not running",
 | 
						|
      .str_user_error        = "Election manager is not running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7035, Election manager is not running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7035, Election manager is not running"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_ERROR_VOTE_MSG_CONFLICT = {
 | 
						|
      .error_name            = "OB_ELECTION_ERROR_VOTE_MSG_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Receive change leader msg and vote msg with same T1 timestamp",
 | 
						|
      .str_user_error        = "Receive change leader msg and vote msg with same T1 timestamp",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7036, Receive change leader msg and vote msg with same T1 timestamp",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7036, Receive change leader msg and vote msg with same T1 timestamp"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_ERROR_DUPLICATED_MSG = {
 | 
						|
      .error_name            = "OB_ELECTION_ERROR_DUPLICATED_MSG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Receive duplicated prepare/vote msg with same T1 timestamp",
 | 
						|
      .str_user_error        = "Receive duplicated prepare/vote msg with same T1 timestamp",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7037, Receive duplicated prepare/vote msg with same T1 timestamp",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7037, Receive duplicated prepare/vote msg with same T1 timestamp"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_WARN_T1_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ELECTION_WARN_T1_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "T1 timestamp is not match",
 | 
						|
      .str_user_error        = "T1 timestamp is not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7038, T1 timestamp is not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7038, T1 timestamp is not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_BELOW_MAJORITY = {
 | 
						|
      .error_name            = "OB_ELECTION_BELOW_MAJORITY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not reach majority",
 | 
						|
      .str_user_error        = "not reach majority",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7039, not reach majority",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7039, not reach majority"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_OVER_MAJORITY = {
 | 
						|
      .error_name            = "OB_ELECTION_OVER_MAJORITY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "over majority",
 | 
						|
      .str_user_error        = "over majority",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7040, over majority",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7040, over majority"
 | 
						|
};
 | 
						|
static const _error _error_OB_ELECTION_DURING_UPGRADING = {
 | 
						|
      .error_name            = "OB_ELECTION_DURING_UPGRADING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "election priority mechanism changed, maybe during upgrading",
 | 
						|
      .str_user_error        = "election priority mechanism changed, maybe during upgrading",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7041, election priority mechanism changed, maybe during upgrading",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7041, election priority mechanism changed, maybe during upgrading"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSFER_TASK_COMPLETED = {
 | 
						|
      .error_name            = "OB_TRANSFER_TASK_COMPLETED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transfer task completed",
 | 
						|
      .str_user_error        = "transfer task completed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7100, transfer task completed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7100, transfer task completed"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_TRANSFER_TASK = {
 | 
						|
      .error_name            = "OB_TOO_MANY_TRANSFER_TASK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many transfer tasks",
 | 
						|
      .str_user_error        = "too many transfer tasks",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7101, too many transfer tasks",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7101, too many transfer tasks"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSFER_TASK_EXIST = {
 | 
						|
      .error_name            = "OB_TRANSFER_TASK_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transfer task exist",
 | 
						|
      .str_user_error        = "transfer task exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7102, transfer task exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7102, transfer task exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSFER_TASK_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_TRANSFER_TASK_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transfer task not exist",
 | 
						|
      .str_user_error        = "transfer task not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7103, transfer task not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7103, transfer task not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_ALLOW_TO_REMOVE = {
 | 
						|
      .error_name            = "OB_NOT_ALLOW_TO_REMOVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "not allow to remove",
 | 
						|
      .str_user_error        = "not allow to remove",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7104, not allow to remove",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7104, not allow to remove"
 | 
						|
};
 | 
						|
static const _error _error_OB_RG_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_RG_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "replication group not match",
 | 
						|
      .str_user_error        = "replication group not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7105, replication group not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7105, replication group not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSFER_TASK_ABORTED = {
 | 
						|
      .error_name            = "OB_TRANSFER_TASK_ABORTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transfer task aborted",
 | 
						|
      .str_user_error        = "transfer task aborted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7106, transfer task aborted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7106, transfer task aborted"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSFER_INVALID_MESSAGE = {
 | 
						|
      .error_name            = "OB_TRANSFER_INVALID_MESSAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transfer invalid message",
 | 
						|
      .str_user_error        = "transfer invalid message",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7107, transfer invalid message",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7107, transfer invalid message"
 | 
						|
};
 | 
						|
static const _error _error_OB_TRANSFER_CTX_TS_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_TRANSFER_CTX_TS_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "transfer ctx_ts not match",
 | 
						|
      .str_user_error        = "transfer ctx_ts not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -7108, transfer ctx_ts not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -7108, transfer ctx_ts not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_IS_INIT = {
 | 
						|
      .error_name            = "OB_SERVER_IS_INIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08004",
 | 
						|
      .str_error             = "Server is initializing",
 | 
						|
      .str_user_error        = "Server is initializing",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -8001, Server is initializing",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -8001, Server is initializing"
 | 
						|
};
 | 
						|
static const _error _error_OB_SERVER_IS_STOPPING = {
 | 
						|
      .error_name            = "OB_SERVER_IS_STOPPING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08004",
 | 
						|
      .str_error             = "Server is stopping",
 | 
						|
      .str_user_error        = "Server is stopping",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -8002, Server is stopping",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -8002, Server is stopping"
 | 
						|
};
 | 
						|
static const _error _error_OB_PACKET_CHECKSUM_ERROR = {
 | 
						|
      .error_name            = "OB_PACKET_CHECKSUM_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08004",
 | 
						|
      .str_error             = "Packet checksum error",
 | 
						|
      .str_user_error        = "Packet checksum error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -8003, Packet checksum error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -8003, Packet checksum error"
 | 
						|
};
 | 
						|
static const _error _error_OB_PACKET_CLUSTER_ID_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_PACKET_CLUSTER_ID_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "08004",
 | 
						|
      .str_error             = "Packet cluster_id not match",
 | 
						|
      .str_user_error        = "Packet cluster_id not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -8004, Packet cluster_id not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -8004, Packet cluster_id not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_URI_ERROR = {
 | 
						|
      .error_name            = "OB_URI_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "URI error",
 | 
						|
      .str_user_error        = "URI error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9001, URI error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9001, URI error"
 | 
						|
};
 | 
						|
static const _error _error_OB_FINAL_MD5_ERROR = {
 | 
						|
      .error_name            = "OB_FINAL_MD5_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OSS file MD5 error",
 | 
						|
      .str_user_error        = "OSS file MD5 error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9002, OSS file MD5 error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9002, OSS file MD5 error"
 | 
						|
};
 | 
						|
static const _error _error_OB_OSS_ERROR = {
 | 
						|
      .error_name            = "OB_OSS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OSS error",
 | 
						|
      .str_user_error        = "OSS error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9003, OSS error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9003, OSS error"
 | 
						|
};
 | 
						|
static const _error _error_OB_INIT_MD5_ERROR = {
 | 
						|
      .error_name            = "OB_INIT_MD5_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Init MD5 fail",
 | 
						|
      .str_user_error        = "Init MD5 fail",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9004, Init MD5 fail",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9004, Init MD5 fail"
 | 
						|
};
 | 
						|
static const _error _error_OB_OUT_OF_ELEMENT = {
 | 
						|
      .error_name            = "OB_OUT_OF_ELEMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Out of element",
 | 
						|
      .str_user_error        = "Out of element",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9005, Out of element",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9005, Out of element"
 | 
						|
};
 | 
						|
static const _error _error_OB_UPDATE_MD5_ERROR = {
 | 
						|
      .error_name            = "OB_UPDATE_MD5_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Update MD5 fail",
 | 
						|
      .str_user_error        = "Update MD5 fail",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9006, Update MD5 fail",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9006, Update MD5 fail"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_LENGTH_INVALID = {
 | 
						|
      .error_name            = "OB_FILE_LENGTH_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid OSS file length",
 | 
						|
      .str_user_error        = "Invalid OSS file length",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9007, Invalid OSS file length",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9007, Invalid OSS file length"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_READ_ALL_DATA = {
 | 
						|
      .error_name            = "OB_NOT_READ_ALL_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Read all data fail",
 | 
						|
      .str_user_error        = "Read all data fail",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9008, Read all data fail",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9008, Read all data fail"
 | 
						|
};
 | 
						|
static const _error _error_OB_BUILD_MD5_ERROR = {
 | 
						|
      .error_name            = "OB_BUILD_MD5_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Build MD5 fail",
 | 
						|
      .str_user_error        = "Build MD5 fail",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9009, Build MD5 fail",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9009, Build MD5 fail"
 | 
						|
};
 | 
						|
static const _error _error_OB_MD5_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_MD5_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OSS file MD5 not match",
 | 
						|
      .str_user_error        = "OSS file MD5 not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9010, OSS file MD5 not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9010, OSS file MD5 not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_FILE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_BACKUP_FILE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot find backup file",
 | 
						|
      .str_user_error        = "cannot find backup file",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9011, cannot find backup file",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9011, cannot find backup file"
 | 
						|
};
 | 
						|
static const _error _error_OB_OSS_DATA_VERSION_NOT_MATCHED = {
 | 
						|
      .error_name            = "OB_OSS_DATA_VERSION_NOT_MATCHED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Can not get data version from timestamp",
 | 
						|
      .str_user_error        = "Can not get data version from timestamp",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9012, Can not get data version from timestamp",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9012, Can not get data version from timestamp"
 | 
						|
};
 | 
						|
static const _error _error_OB_OSS_WRITE_ERROR = {
 | 
						|
      .error_name            = "OB_OSS_WRITE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Write OSS file error",
 | 
						|
      .str_user_error        = "Write OSS file error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9013, Write OSS file error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9013, Write OSS file error"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESTORE_IN_PROGRESS = {
 | 
						|
      .error_name            = "OB_RESTORE_IN_PROGRESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Another restore is in progress",
 | 
						|
      .str_user_error        = "Another restore is in progress",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9014, Another restore is in progress",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9014, Another restore is in progress"
 | 
						|
};
 | 
						|
static const _error _error_OB_AGENT_INITING_BACKUP_COUNT_ERROR = {
 | 
						|
      .error_name            = "OB_AGENT_INITING_BACKUP_COUNT_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "agent initing backup count error",
 | 
						|
      .str_user_error        = "agent initing backup count error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9015, agent initing backup count error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9015, agent initing backup count error"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLUSTER_NAME_NOT_EQUAL = {
 | 
						|
      .error_name            = "OB_CLUSTER_NAME_NOT_EQUAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ob cluster name not equal",
 | 
						|
      .str_user_error        = "ob cluster name not equal",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9016, ob cluster name not equal",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9016, ob cluster name not equal"
 | 
						|
};
 | 
						|
static const _error _error_OB_RS_LIST_INVAILD = {
 | 
						|
      .error_name            = "OB_RS_LIST_INVAILD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "rs list invalid",
 | 
						|
      .str_user_error        = "rs list invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9017, rs list invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9017, rs list invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_AGENT_HAS_FAILED_TASK = {
 | 
						|
      .error_name            = "OB_AGENT_HAS_FAILED_TASK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "agent has failed task",
 | 
						|
      .str_user_error        = "agent has failed task",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9018, agent has failed task",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9018, agent has failed task"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESTORE_PARTITION_IS_COMPELETE = {
 | 
						|
      .error_name            = "OB_RESTORE_PARTITION_IS_COMPELETE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "restore partition is compelete",
 | 
						|
      .str_user_error        = "restore partition is compelete",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9019, restore partition is compelete",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9019, restore partition is compelete"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESTORE_PARTITION_TWICE = {
 | 
						|
      .error_name            = "OB_RESTORE_PARTITION_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "restore partition twice",
 | 
						|
      .str_user_error        = "restore partition twice",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9020, restore partition twice",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9020, restore partition twice"
 | 
						|
};
 | 
						|
static const _error _error_OB_STOP_DROP_SCHEMA = {
 | 
						|
      .error_name            = "OB_STOP_DROP_SCHEMA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "physical backup switch is on",
 | 
						|
      .str_user_error        = "physical backup switch is on",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9022, physical backup switch is on",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9022, physical backup switch is on"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_START_LOG_ARCHIVE_BACKUP = {
 | 
						|
      .error_name            = "OB_CANNOT_START_LOG_ARCHIVE_BACKUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot start log archive backup",
 | 
						|
      .str_user_error        = "cannot start log archive backup",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9023, cannot start log archive backup",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9023, cannot start log archive backup"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALREADY_NO_LOG_ARCHIVE_BACKUP = {
 | 
						|
      .error_name            = "OB_ALREADY_NO_LOG_ARCHIVE_BACKUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log archive backup is already disabled",
 | 
						|
      .str_user_error        = "log archive backup is already disabled",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9024, log archive backup is already disabled",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9024, log archive backup is already disabled"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_BACKUP_INFO_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_BACKUP_INFO_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log archive backup info not exists",
 | 
						|
      .str_user_error        = "log archive backup info not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9025, log archive backup info not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9025, log archive backup info not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_BACKUP_DEST = {
 | 
						|
      .error_name            = "OB_INVALID_BACKUP_DEST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup destination is not valid",
 | 
						|
      .str_user_error        = "backup destination is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9026, backup destination is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9026, backup destination is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_INTERRUPTED = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_INTERRUPTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ob log archive interrupted",
 | 
						|
      .str_user_error        = "ob log archive interrupted",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9027, ob log archive interrupted",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9027, ob log archive interrupted"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_STAT_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_STAT_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ob log archive stat not match",
 | 
						|
      .str_user_error        = "ob log archive stat not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9028, ob log archive stat not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9028, ob log archive stat not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_NOT_RUNNING = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_NOT_RUNNING",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log archive is not running",
 | 
						|
      .str_user_error        = "log archive is not running",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9029, log archive is not running",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9029, log archive is not running"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_INVALID_ROUND = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_INVALID_ROUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log archive invalid round",
 | 
						|
      .str_user_error        = "log archive invalid round",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9030, log archive invalid round",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9030, log archive invalid round"
 | 
						|
};
 | 
						|
static const _error _error_OB_REPLICA_CANNOT_BACKUP = {
 | 
						|
      .error_name            = "OB_REPLICA_CANNOT_BACKUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot backup ob replica",
 | 
						|
      .str_user_error        = "Cannot backup ob replica",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9031, Cannot backup ob replica",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9031, Cannot backup ob replica"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_INFO_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_BACKUP_INFO_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup info not exists",
 | 
						|
      .str_user_error        = "backup info not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9032, backup info not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9032, backup info not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_INFO_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_BACKUP_INFO_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Backup meta info stored in system dictionary does not match with current system status",
 | 
						|
      .str_user_error        = "Backup meta info stored in system dictionary does not match with current system status",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9033, Backup meta info stored in system dictionary does not match with current system status",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9033, Backup meta info stored in system dictionary does not match with current system status"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_ALREADY_STOPPED = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_ALREADY_STOPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log archive already stopped",
 | 
						|
      .str_user_error        = "log archive already stopped",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9034, log archive already stopped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9034, log archive already stopped"
 | 
						|
};
 | 
						|
static const _error _error_OB_RESTORE_INDEX_FAILED = {
 | 
						|
      .error_name            = "OB_RESTORE_INDEX_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "restore index failed",
 | 
						|
      .str_user_error        = "restore index failed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9035, restore index failed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9035, restore index failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_IN_PROGRESS = {
 | 
						|
      .error_name            = "OB_BACKUP_IN_PROGRESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Backup is in progress",
 | 
						|
      .str_user_error        = "Backup is in progress",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9036, Backup is in progress",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9036, Backup is in progress"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_LOG_ARCHIVE_STATUS = {
 | 
						|
      .error_name            = "OB_INVALID_LOG_ARCHIVE_STATUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log archive status is not valid",
 | 
						|
      .str_user_error        = "log archive status is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9037, log archive status is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9037, log archive status is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_ADD_REPLICA_DURING_SET_MEMBER_LIST = {
 | 
						|
      .error_name            = "OB_CANNOT_ADD_REPLICA_DURING_SET_MEMBER_LIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cannot add replica during set member list in restore",
 | 
						|
      .str_user_error        = "Cannot add replica during set member list in restore",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9038, Cannot add replica during set member list in restore",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9038, Cannot add replica during set member list in restore"
 | 
						|
};
 | 
						|
static const _error _error_OB_LOG_ARCHIVE_LEADER_CHANGED = {
 | 
						|
      .error_name            = "OB_LOG_ARCHIVE_LEADER_CHANGED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "pg log archive leader changed",
 | 
						|
      .str_user_error        = "pg log archive leader changed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9039, pg log archive leader changed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9039, pg log archive leader changed"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_CAN_NOT_START = {
 | 
						|
      .error_name            = "OB_BACKUP_CAN_NOT_START",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup can not start",
 | 
						|
      .str_user_error        = "backup can not start, because %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9040, backup can not start",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9040, backup can not start, because %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANCEL_BACKUP_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_CANCEL_BACKUP_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cancel backup do not allow",
 | 
						|
      .str_user_error        = "cancel backup do not allow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9041, cancel backup do not allow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9041, cancel backup do not allow"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_DATA_VERSION_GAP_OVER_LIMIT = {
 | 
						|
      .error_name            = "OB_BACKUP_DATA_VERSION_GAP_OVER_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup data version gap over limit",
 | 
						|
      .str_user_error        = "backup data version gap over limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9042, backup data version gap over limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9042, backup data version gap over limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_PG_LOG_ARCHIVE_STATUS_NOT_INIT = {
 | 
						|
      .error_name            = "OB_PG_LOG_ARCHIVE_STATUS_NOT_INIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "pg log archive status is still invalid",
 | 
						|
      .str_user_error        = "pg log archive status is still invalid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9043, pg log archive status is still invalid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9043, pg log archive status is still invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_DELETE_DATA_IN_PROGRESS = {
 | 
						|
      .error_name            = "OB_BACKUP_DELETE_DATA_IN_PROGRESS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "delete backup data is in progress",
 | 
						|
      .str_user_error        = "delete backup data is in progress",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9044, delete backup data is in progress",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9044, delete backup data is in progress"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_DELETE_BACKUP_SET_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_BACKUP_DELETE_BACKUP_SET_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "delete backup set do not allow",
 | 
						|
      .str_user_error        = "delete backup set do not allow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9045, delete backup set do not allow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9045, delete backup set do not allow"
 | 
						|
};
 | 
						|
static const _error _error_OB_INVALID_BACKUP_SET_ID = {
 | 
						|
      .error_name            = "OB_INVALID_BACKUP_SET_ID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup set id is not valid",
 | 
						|
      .str_user_error        = "backup set id is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9046, backup set id is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9046, backup set id is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_INVALID_PASSWORD = {
 | 
						|
      .error_name            = "OB_BACKUP_INVALID_PASSWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid password for backup",
 | 
						|
      .str_user_error        = "invalid password for backup",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9047, invalid password for backup",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9047, invalid password for backup"
 | 
						|
};
 | 
						|
static const _error _error_OB_ISOLATED_BACKUP_SET = {
 | 
						|
      .error_name            = "OB_ISOLATED_BACKUP_SET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup set is isolated by two log archive round",
 | 
						|
      .str_user_error        = "backup set is isolated by two log archive round",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9048, backup set is isolated by two log archive round",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9048, backup set is isolated by two log archive round"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_CANCEL_STOPPED_BACKUP = {
 | 
						|
      .error_name            = "OB_CANNOT_CANCEL_STOPPED_BACKUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup status is stopped, can not cancel",
 | 
						|
      .str_user_error        = "backup status is stopped, can not cancel",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9049, backup status is stopped, can not cancel",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9049, backup status is stopped, can not cancel"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_BACKUP_CAN_NOT_START = {
 | 
						|
      .error_name            = "OB_BACKUP_BACKUP_CAN_NOT_START",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no backup data to be backuped up",
 | 
						|
      .str_user_error        = "no backup data to be backuped up",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9050, no backup data to be backuped up",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9050, no backup data to be backuped up"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_MOUNT_FILE_NOT_VALID = {
 | 
						|
      .error_name            = "OB_BACKUP_MOUNT_FILE_NOT_VALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup mount file is not valid",
 | 
						|
      .str_user_error        = "backup mount file is not valid",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9051, backup mount file is not valid",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9051, backup mount file is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_CLEAN_INFO_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_BACKUP_CLEAN_INFO_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup clean info not match",
 | 
						|
      .str_user_error        = "backup clean info not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9052, backup clean info not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9052, backup clean info not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANCEL_DELETE_BACKUP_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_CANCEL_DELETE_BACKUP_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cancel delete backup do not allow",
 | 
						|
      .str_user_error        = "cancel delete backup do not allow",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9053, cancel delete backup do not allow",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9053, cancel delete backup do not allow"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_CLEAN_INFO_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_BACKUP_CLEAN_INFO_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup clean info not exists",
 | 
						|
      .str_user_error        = "backup clean info not exists",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9054, backup clean info not exists",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9054, backup clean info not exists"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_SET_BACKUP_REGION = {
 | 
						|
      .error_name            = "OB_CANNOT_SET_BACKUP_REGION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "can not set backup region",
 | 
						|
      .str_user_error        = "can not set backup region, because %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9057, can not set backup region",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9057, can not set backup region, because %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_CANNOT_SET_BACKUP_ZONE = {
 | 
						|
      .error_name            = "OB_CANNOT_SET_BACKUP_ZONE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "can not set backup zone",
 | 
						|
      .str_user_error        = "can not set backup zone, because %s",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9058, can not set backup zone",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9058, can not set backup zone, because %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_BACKUP_REACH_MAX_BACKUP_TIMES = {
 | 
						|
      .error_name            = "OB_BACKUP_BACKUP_REACH_MAX_BACKUP_TIMES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup backup has reached max backup times",
 | 
						|
      .str_user_error        = "backup backup has reached max backup times",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9059, backup backup has reached max backup times",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9059, backup backup has reached max backup times"
 | 
						|
};
 | 
						|
static const _error _error_OB_COS_ERROR = {
 | 
						|
      .error_name            = "OB_COS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "COS error",
 | 
						|
      .str_user_error        = "COS error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9060, COS error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9060, COS error"
 | 
						|
};
 | 
						|
static const _error _error_OB_IO_LIMIT = {
 | 
						|
      .error_name            = "OB_IO_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "IO limit",
 | 
						|
      .str_user_error        = "IO limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9061, IO limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9061, IO limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_BACKUP_REACH_COPY_LIMIT = {
 | 
						|
      .error_name            = "OB_BACKUP_BACKUP_REACH_COPY_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "reach backup backup copy limit",
 | 
						|
      .str_user_error        = "reach backup backup copy limit",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9062, reach backup backup copy limit",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9062, reach backup backup copy limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_IO_PROHIBITED = {
 | 
						|
      .error_name            = "OB_BACKUP_IO_PROHIBITED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup io is prohibited",
 | 
						|
      .str_user_error        = "backup io is prohibited",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9063, backup io is prohibited",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9063, backup io is prohibited"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARCHIVE_LOG_NOT_CONTINUES_WITH_DATA = {
 | 
						|
      .error_name            = "OB_ARCHIVE_LOG_NOT_CONTINUES_WITH_DATA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the archive log and backup data are not continuous",
 | 
						|
      .str_user_error        = "the archive log and backup data are not continuous",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9064, the archive log and backup data are not continuous",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9064, the archive log and backup data are not continuous"
 | 
						|
};
 | 
						|
static const _error _error_OB_AGENT_HAS_SUSPENDED = {
 | 
						|
      .error_name            = "OB_AGENT_HAS_SUSPENDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "agent has suspended",
 | 
						|
      .str_user_error        = "agent has suspended",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9065, agent has suspended",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9065, agent has suspended"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_DELETE_BACKUP_PIECE_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_BACKUP_DELETE_BACKUP_PIECE_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "deleting backup piece is not allowed",
 | 
						|
      .str_user_error        = "deleting backup piece is not allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9069, deleting backup piece is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9069, deleting backup piece is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_DEST_NOT_CONNECT = {
 | 
						|
      .error_name            = "OB_BACKUP_DEST_NOT_CONNECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "can not connect to backup destination",
 | 
						|
      .str_user_error        = "can not connect to backup destination",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9070, can not connect to backup destination",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9070, can not connect to backup destination"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_PERMISSION_DENIED = {
 | 
						|
      .error_name            = "OB_BACKUP_PERMISSION_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no I/O operation permission at the backup destination",
 | 
						|
      .str_user_error        = "no I/O operation permission at the backup destination",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9071, no I/O operation permission at the backup destination",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9071, no I/O operation permission at the backup destination"
 | 
						|
};
 | 
						|
static const _error _error_OB_ESI_SESSION_CONFLICTS = {
 | 
						|
      .error_name            = "OB_ESI_SESSION_CONFLICTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "obesi process session conflicts",
 | 
						|
      .str_user_error        = "obesi process session conflicts",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9072, obesi process session conflicts",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9072, obesi process session conflicts"
 | 
						|
};
 | 
						|
static const _error _error_OB_ESI_OBS_ERROR = {
 | 
						|
      .error_name            = "OB_ESI_OBS_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "external storage OBS error",
 | 
						|
      .str_user_error        = "external storage OBS error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9073, external storage OBS error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9073, external storage OBS error"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_VALIDATE_TASK_SKIPPED = {
 | 
						|
      .error_name            = "OB_BACKUP_VALIDATE_TASK_SKIPPED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup validation task skipped",
 | 
						|
      .str_user_error        = "backup validation task skipped",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9074, backup validation task skipped",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9074, backup validation task skipped"
 | 
						|
};
 | 
						|
static const _error _error_OB_ESI_IO_ERROR = {
 | 
						|
      .error_name            = "OB_ESI_IO_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "obesi process io error",
 | 
						|
      .str_user_error        = "obesi process io error",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9075, obesi process io error",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9075, obesi process io error"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_META_INDEX_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_BACKUP_META_INDEX_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup meta index does not exist",
 | 
						|
      .str_user_error        = "backup meta index does not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9076, backup meta index does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9076, backup meta index does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARCHIVE_ROUND_NOT_CONTINUOUS = {
 | 
						|
      .error_name            = "OB_ARCHIVE_ROUND_NOT_CONTINUOUS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "log discontinuous between two archive rounds",
 | 
						|
      .str_user_error        = "log discontinuous between two archive rounds",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9077, log discontinuous between two archive rounds",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9077, log discontinuous between two archive rounds"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARCHIVE_LOG_TO_END = {
 | 
						|
      .error_name            = "OB_ARCHIVE_LOG_TO_END",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "archive log is to end",
 | 
						|
      .str_user_error        = "archive log is to end",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9078, archive log is to end",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9078, archive log is to end"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARCHIVE_LOG_RECYCLED = {
 | 
						|
      .error_name            = "OB_ARCHIVE_LOG_RECYCLED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "archive log had been recycled",
 | 
						|
      .str_user_error        = "archive log had been recycled",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9079, archive log had been recycled",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9079, archive log had been recycled"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_FORMAT_FILE_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_BACKUP_FORMAT_FILE_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the format file does not exist under the destination",
 | 
						|
      .str_user_error        = "the format file does not exist under the destination",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9080, the format file does not exist under the destination",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9080, the format file does not exist under the destination"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_FORMAT_FILE_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_BACKUP_FORMAT_FILE_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the content of the format file at the destination does not match",
 | 
						|
      .str_user_error        = "the content of the format file at the destination does not match",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9081, the content of the format file at the destination does not match",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9081, the content of the format file at the destination does not match"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_DEVICE_OUT_OF_SPACE = {
 | 
						|
      .error_name            = "OB_BACKUP_DEVICE_OUT_OF_SPACE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup device out of space",
 | 
						|
      .str_user_error        = "backup device out of space",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9082, backup device out of space",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9082, backup device out of space"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_PWRITE_OFFSET_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_BACKUP_PWRITE_OFFSET_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the pwrite offset of the object storage is inconsistent",
 | 
						|
      .str_user_error        = "the pwrite offset of the object storage is inconsistent",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9083, the pwrite offset of the object storage is inconsistent",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9083, the pwrite offset of the object storage is inconsistent"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_PWRITE_CONTENT_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_BACKUP_PWRITE_CONTENT_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the contents of pwrite are inconsistent",
 | 
						|
      .str_user_error        = "the contents of pwrite are inconsistent",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9084, the contents of pwrite are inconsistent",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9084, the contents of pwrite are inconsistent"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_MAJOR_NOT_COVER_MINOR = {
 | 
						|
      .error_name            = "OB_BACKUP_MAJOR_NOT_COVER_MINOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup major sstable range not cover minor sstable",
 | 
						|
      .str_user_error        = "backup major sstable range not cover minor sstable",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9085, backup major sstable range not cover minor sstable",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9085, backup major sstable range not cover minor sstable"
 | 
						|
};
 | 
						|
static const _error _error_OB_BACKUP_ADVANCE_CHECKPOINT_TIMEOUT = {
 | 
						|
      .error_name            = "OB_BACKUP_ADVANCE_CHECKPOINT_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "backup advance checkpoint by flush timeout",
 | 
						|
      .str_user_error        = "backup advance checkpoint by flush timeout",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9086, backup advance checkpoint by flush timeout",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9086, backup advance checkpoint by flush timeout"
 | 
						|
};
 | 
						|
static const _error _error_OB_ESI_SESSION_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ESI_SESSION_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "obesi process session not exist",
 | 
						|
      .str_user_error        = "obesi process session not exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9090, obesi process session not exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9090, obesi process session not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALREADY_IN_ARCHIVE_MODE = {
 | 
						|
      .error_name            = "OB_ALREADY_IN_ARCHIVE_MODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Already in ARCHIVELOG mode",
 | 
						|
      .str_user_error        = "Already in ARCHIVELOG mode",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9091, Already in ARCHIVELOG mode",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9091, Already in ARCHIVELOG mode"
 | 
						|
};
 | 
						|
static const _error _error_OB_ALREADY_IN_NOARCHIVE_MODE = {
 | 
						|
      .error_name            = "OB_ALREADY_IN_NOARCHIVE_MODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Already in NOARCHIVELOG mode",
 | 
						|
      .str_user_error        = "Already in NOARCHIVELOG mode",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9092, Already in NOARCHIVELOG mode",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9092, Already in NOARCHIVELOG mode"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_SUCH_FILE_OR_DIRECTORY = {
 | 
						|
      .error_name            = "OB_NO_SUCH_FILE_OR_DIRECTORY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no such file or directory",
 | 
						|
      .str_user_error        = "no such file or directory",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9100, no such file or directory",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9100, no such file or directory"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_OR_DIRECTORY_EXIST = {
 | 
						|
      .error_name            = "OB_FILE_OR_DIRECTORY_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file or directory already exist",
 | 
						|
      .str_user_error        = "file or directory already exist",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9101, file or directory already exist",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9101, file or directory already exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_FILE_OR_DIRECTORY_PERMISSION_DENIED = {
 | 
						|
      .error_name            = "OB_FILE_OR_DIRECTORY_PERMISSION_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file or directory permission denied",
 | 
						|
      .str_user_error        = "file or directory permission denied",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9102, file or directory permission denied",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9102, file or directory permission denied"
 | 
						|
};
 | 
						|
static const _error _error_OB_TOO_MANY_OPEN_FILES = {
 | 
						|
      .error_name            = "OB_TOO_MANY_OPEN_FILES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many open files",
 | 
						|
      .str_user_error        = "too many open files",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9103, too many open files",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9103, too many open files"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESIZE_FILE_TO_SMALLER = {
 | 
						|
      .error_name            = "OB_ERR_RESIZE_FILE_TO_SMALLER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Extend ssblock file to smaller is not allowed",
 | 
						|
      .str_user_error        = "Extend ssblock file to smaller is not allowed",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9200, Extend ssblock file to smaller is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9200, Extend ssblock file to smaller is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_MARK_BLOCK_INFO_TIMEOUT = {
 | 
						|
      .error_name            = "OB_MARK_BLOCK_INFO_TIMEOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Mark blocks timeout(5s) in auto extend process when alloc block fail",
 | 
						|
      .str_user_error        = "Mark blocks timeout(5s) in auto extend process when alloc block fail",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9201, Mark blocks timeout(5s) in auto extend process when alloc block fail",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9201, Mark blocks timeout(5s) in auto extend process when alloc block fail"
 | 
						|
};
 | 
						|
static const _error _error_OB_NOT_READY_TO_EXTEND_FILE = {
 | 
						|
      .error_name            = "OB_NOT_READY_TO_EXTEND_FILE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Auto extend param is not ready to start extending file",
 | 
						|
      .str_user_error        = "Auto extend param is not ready to start extending file",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9202, Auto extend param is not ready to start extending file",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9202, Auto extend param is not ready to start extending file"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_HAVING_CLAUSE_IN_TABLE_EXPRESSION = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_HAVING_CLAUSE_IN_TABLE_EXPRESSION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Duplicate having-clause in table expression",
 | 
						|
      .str_user_error        = "Duplicate having-clause in table expression",
 | 
						|
      .oracle_errno          = 119,
 | 
						|
      .oracle_str_error      = "PLS-00119: Duplicate having-clause in table expression",
 | 
						|
      .oracle_str_user_error = "PLS-00119: Duplicate having-clause in table expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INOUT_PARAM_PLACEMENT_NOT_PROPERLY = {
 | 
						|
      .error_name            = "OB_ERR_INOUT_PARAM_PLACEMENT_NOT_PROPERLY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OUT and IN/OUT modes cannot be used in this context",
 | 
						|
      .str_user_error        = "OUT and IN/OUT modes cannot be used in this context",
 | 
						|
      .oracle_errno          = 254,
 | 
						|
      .oracle_str_error      = "PLS-00254: OUT and IN/OUT modes cannot be used in this context",
 | 
						|
      .oracle_str_user_error = "PLS-00254: OUT and IN/OUT modes cannot be used in this context"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OBJECT_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_OBJECT_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object not found",
 | 
						|
      .str_user_error        = "object '%.*s' of type %.*s not found in schema '%.*s'",
 | 
						|
      .oracle_errno          = 31603,
 | 
						|
      .oracle_str_error      = "ORA-31603: object not found",
 | 
						|
      .oracle_str_user_error = "ORA-31603: object '%.*s' of type %.*s not found in schema '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_INPUT_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_INPUT_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid input value",
 | 
						|
      .str_user_error        = "invalid input value %.*s for parameter %.*s in function %.*s",
 | 
						|
      .oracle_errno          = 31600,
 | 
						|
      .oracle_str_error      = "ORA-31600: invalid input value",
 | 
						|
      .oracle_str_user_error = "ORA-31600: invalid input value %.*s for parameter %.*s in function %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_GOTO_BRANCH_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_GOTO_BRANCH_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_LILABEL_MISMATCH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "no matching label: %.*s",
 | 
						|
      .str_user_error        = "no matching label: %.*s",
 | 
						|
      .oracle_errno          = 375,
 | 
						|
      .oracle_str_error      = "PLS-00375: illegal GOTO statement; this GOTO cannot branch to label '%.*s'",
 | 
						|
      .oracle_str_user_error = "PLS-00375: illegal GOTO statement; this GOTO cannot branch to label '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_SCHEMA_LEVEL_ALLOW = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_SCHEMA_LEVEL_ALLOW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Only schema-level programs allow AUTHID or DEFAULT COLLATION clause",
 | 
						|
      .str_user_error        = "Only schema-level programs allow %s",
 | 
						|
      .oracle_errno          = 157,
 | 
						|
      .oracle_str_error      = "PLS-00157: Only schema-level programs allow AUTHID or DEFAULT COLLATION clause",
 | 
						|
      .oracle_str_user_error = "PLS-00157: Only schema-level programs allow %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DECL_MORE_THAN_ONCE = {
 | 
						|
      .error_name            = "OB_ERR_DECL_MORE_THAN_ONCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "at most one declaration for identifier is permitted",
 | 
						|
      .str_user_error        = "at most one declaration for '%.*s' is permitted",
 | 
						|
      .oracle_errno          = 371,
 | 
						|
      .oracle_str_error      = "PLS-00371: at most one declaration for identifier is permitted",
 | 
						|
      .oracle_str_user_error = "PLS-00371: at most one declaration for '%.*s' is permitted"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_FILED = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_FILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate fields in RECORD,TABLE or argument list are not permitted",
 | 
						|
      .str_user_error        = "duplicate fields in RECORD,TABLE or argument list are not permitted",
 | 
						|
      .oracle_errno          = 410,
 | 
						|
      .oracle_str_error      = "PLS-00410: duplicate fields in RECORD,TABLE or argument list are not permitted",
 | 
						|
      .oracle_str_user_error = "PLS-00410: duplicate fields in RECORD,TABLE or argument list are not permitted"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRAGMA_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_PRAGMA_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Pragma string cannot be specified here",
 | 
						|
      .str_user_error        = "Pragma %s cannot be specified here",
 | 
						|
      .oracle_errno          = 710,
 | 
						|
      .oracle_str_error      = "PLS-00710: Pragma string cannot be specified here",
 | 
						|
      .oracle_str_user_error = "PLS-00710: Pragma %s cannot be specified here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXIT_CONTINUE_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_EXIT_CONTINUE_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal EXIT/CONTINUE statement; it must appear inside a loop",
 | 
						|
      .str_user_error        = "illegal EXIT/CONTINUE statement; it must appear inside a loop",
 | 
						|
      .oracle_errno          = 376,
 | 
						|
      .oracle_str_error      = "PLS-00376: illegal EXIT/CONTINUE statement; it must appear inside a loop",
 | 
						|
      .oracle_str_user_error = "PLS-00376: illegal EXIT/CONTINUE statement; it must appear inside a loop"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LABEL_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_LABEL_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "EXIT/CONTINUE label must label a LOOP statement",
 | 
						|
      .str_user_error        = "EXIT/CONTINUE label '%.*s' must label a LOOP statement",
 | 
						|
      .oracle_errno          = 373,
 | 
						|
      .oracle_str_error      = "PLS-00373: EXIT/CONTINUE label must label a LOOP statement",
 | 
						|
      .oracle_str_user_error = "PLS-00373: EXIT/CONTINUE label '%.*s' must label a LOOP statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CURSOR_LEFT_ASSIGN = {
 | 
						|
      .error_name            = "OB_ERR_CURSOR_LEFT_ASSIGN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expression '%.*s' is inappropriate as the left hand side of an assignment statement",
 | 
						|
      .str_user_error        = "expression '%.*s' is inappropriate as the left hand side of an assignment statement",
 | 
						|
      .oracle_errno          = 321,
 | 
						|
      .oracle_str_error      = "PLS-00321: expression '%.*s' is inappropriate as the left hand side of anassignment statement",
 | 
						|
      .oracle_str_user_error = "PLS-00321: expression '%.*s' is inappropriate as the left hand side of anassignment statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INIT_NOTNULL_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_INIT_NOTNULL_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a variable declared NOT NULL must have an initialization assignment",
 | 
						|
      .str_user_error        = "a variable declared NOT NULL must have an initialization assignment",
 | 
						|
      .oracle_errno          = 218,
 | 
						|
      .oracle_str_error      = "PLS-00218: a variable declared NOT NULL must have an initialization assignment",
 | 
						|
      .oracle_str_user_error = "PLS-00218: a variable declared NOT NULL must have an initialization assignment"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INIT_CONST_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_INIT_CONST_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "declaration of a constant 'string' must contain an initialization assignment",
 | 
						|
      .str_user_error        = "declaration of a constant '%.*s' must contain an initialization assignment",
 | 
						|
      .oracle_errno          = 322,
 | 
						|
      .oracle_str_error      = "PLS-00322: declaration of a constant 'string' must contain an initialization assignment",
 | 
						|
      .oracle_str_user_error = "PLS-00322: declaration of a constant '%.*s' must contain an initialization assignment"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CURSOR_VAR_IN_PKG = {
 | 
						|
      .error_name            = "OB_ERR_CURSOR_VAR_IN_PKG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cursor Variables cannot be declared as part of a package",
 | 
						|
      .str_user_error        = "Cursor Variables cannot be declared as part of a package",
 | 
						|
      .oracle_errno          = 994,
 | 
						|
      .oracle_str_error      = "PLS-00994: Cursor Variables cannot be declared as part of a package",
 | 
						|
      .oracle_str_user_error = "PLS-00994: Cursor Variables cannot be declared as part of a package"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LIMIT_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_LIMIT_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "value in LIMIT clause: \'%.*s\' use is invalid",
 | 
						|
      .str_user_error        = "value in LIMIT clause: \'%.*s\' use is invalid",
 | 
						|
      .oracle_errno          = 438,
 | 
						|
      .oracle_str_error      = "PLS-00438: value in LIMIT clause: \'%.*s\' use is invalid",
 | 
						|
      .oracle_str_user_error = "PLS-00438: value in LIMIT clause: \'%.*s\' use is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXPRESSION_WRONG_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_EXPRESSION_WRONG_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expression is of wrong type",
 | 
						|
      .str_user_error        = "expression is of wrong type",
 | 
						|
      .oracle_errno          = 382,
 | 
						|
      .oracle_str_error      = "PLS-00382: expression is of wrong type",
 | 
						|
      .oracle_str_user_error = "PLS-00382: expression is of wrong type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SPEC_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_SPEC_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot compile type body without its specification",
 | 
						|
      .str_user_error        = "cannot compile body of '%.*s' without its specification",
 | 
						|
      .oracle_errno          = 304,
 | 
						|
      .oracle_str_error      = "PLS-00304: cannot compile type body without its specification",
 | 
						|
      .oracle_str_user_error = "PLS-00304: cannot compile body of '%.*s' without its specification"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_SPEC_NO_ROUTINE = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_SPEC_NO_ROUTINE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subprogram is declared in an object type body and must be defined in the object type specification",
 | 
						|
      .str_user_error        = "subprogram '%.*s' is declared in an object type body and must be defined in the object type specification",
 | 
						|
      .oracle_errno          = 539,
 | 
						|
      .oracle_str_error      = "PLS-00539: subprogram is declared in an object type body and must be defined in the object type specification",
 | 
						|
      .oracle_str_user_error = "PLS-00539: subprogram '%.*s' is declared in an object type body and must be defined in the object type specification"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_BODY_NO_ROUTINE = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_BODY_NO_ROUTINE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subprogram or cursor is declared in an object type specification and must be defined in the object type body",
 | 
						|
      .str_user_error        = "subprogram or cursor '%.*s' is declared in an object type specification and must be defined in the object type body",
 | 
						|
      .oracle_errno          = 538,
 | 
						|
      .oracle_str_error      = "PLS-00538: subprogram or cursor is declared in an object type specification and must be defined in the object type body",
 | 
						|
      .oracle_str_user_error = "PLS-00538: subprogram or cursor '%.*s' is declared in an object type specification and must be defined in the object type body"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BOTH_ORDER_MAP = {
 | 
						|
      .error_name            = "OB_ERR_BOTH_ORDER_MAP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "An object type may have only 1 MAP or 1 ORDER method",
 | 
						|
      .str_user_error        = "An object type may have only 1 MAP or 1 ORDER method",
 | 
						|
      .oracle_errno          = 154,
 | 
						|
      .oracle_str_error      = "PLS-00154: An object type may have only 1 MAP or 1 ORDER method",
 | 
						|
      .oracle_str_user_error = "PLS-00154: An object type may have only 1 MAP or 1 ORDER method"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_ORDER_MAP = {
 | 
						|
      .error_name            = "OB_ERR_NO_ORDER_MAP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A MAP or ORDER function is required for comparing objects in PL/SQL",
 | 
						|
      .str_user_error        = "A MAP or ORDER function is required for comparing objects in PL/SQL",
 | 
						|
      .oracle_errno          = 526,
 | 
						|
      .oracle_str_error      = "PLS-00526: A MAP or ORDER function is required for comparing objects in PL/SQL",
 | 
						|
      .oracle_str_user_error = "PLS-00526: A MAP or ORDER function is required for comparing objects in PL/SQL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORDER_MAP_NEED_BE_FUNC = {
 | 
						|
      .error_name            = "OB_ERR_ORDER_MAP_NEED_BE_FUNC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Only a function may be a MAP, ORDER or CONSTRUCTOR method",
 | 
						|
      .str_user_error        = "Only a function may be a MAP, ORDER or CONSTRUCTOR method",
 | 
						|
      .oracle_errno          = 155,
 | 
						|
      .oracle_str_error      = "PLS-00155: Only a function may be a MAP, ORDER or CONSTRUCTOR method",
 | 
						|
      .oracle_str_user_error = "PLS-00155: Only a function may be a MAP, ORDER or CONSTRUCTOR method"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IDENTIFIER_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_IDENTIFIER_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_LONG_IDENT,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Identifier name \'%.*s\' is too long",
 | 
						|
      .str_user_error        = "Identifier name \'%.*s\' is too long",
 | 
						|
      .oracle_errno          = 114,
 | 
						|
      .oracle_str_error      = "PLS-00114: identifier '%.*s' too long",
 | 
						|
      .oracle_str_user_error = "PLS-00114: identifier '%.*s' too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVOKE_STATIC_BY_INSTANCE = {
 | 
						|
      .error_name            = "OB_ERR_INVOKE_STATIC_BY_INSTANCE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a static method cannot be invoked on an instance value",
 | 
						|
      .str_user_error        = "a static method cannot be invoked on an instance value",
 | 
						|
      .oracle_errno          = 587,
 | 
						|
      .oracle_str_error      = "PLS-00587: a static method cannot be invoked on an instance value",
 | 
						|
      .oracle_str_user_error = "PLS-00587: a static method cannot be invoked on an instance value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONS_NAME_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_CONS_NAME_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "constructor method name must match type name",
 | 
						|
      .str_user_error        = "constructor method name must match type name",
 | 
						|
      .oracle_errno          = 658,
 | 
						|
      .oracle_str_error      = "PLS-00658: constructor method name must match type name",
 | 
						|
      .oracle_str_user_error = "PLS-00658: constructor method name must match type name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ATTR_FUNC_CONFLICT = {
 | 
						|
      .error_name            = "OB_ERR_ATTR_FUNC_CONFLICT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "previous use of conflicts with this user",
 | 
						|
      .str_user_error        = "previous use of '%.*s' conflicts with this use",
 | 
						|
      .oracle_errno          = 305,
 | 
						|
      .oracle_str_error      = "PLS-00305: previous use of conflicts with this use",
 | 
						|
      .oracle_str_user_error = "PLS-00305: previous use of '%.*s' conflicts with this use"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SELF_PARAM_NOT_OUT = {
 | 
						|
      .error_name            = "OB_ERR_SELF_PARAM_NOT_OUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the SELF parameter can be declared only as IN or as IN OUT",
 | 
						|
      .str_user_error        = "the SELF parameter can be declared only as IN or as IN OUT",
 | 
						|
      .oracle_errno          = 594,
 | 
						|
      .oracle_str_error      = "PLS-00594: the SELF parameter can be declared only as IN or as IN OUT",
 | 
						|
      .oracle_str_user_error = "PLS-00594: the SELF parameter can be declared only as IN or as IN OUT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MAP_RET_SCALAR_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_MAP_RET_SCALAR_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MAP methods must return a scalar type",
 | 
						|
      .str_user_error        = "MAP methods must return a scalar type",
 | 
						|
      .oracle_errno          = 522,
 | 
						|
      .oracle_str_error      = "PLS-00522: MAP methods must return a scalar type",
 | 
						|
      .oracle_str_user_error = "PLS-00522: MAP methods must return a scalar type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MAP_MORE_THAN_SELF_PARAM = {
 | 
						|
      .error_name            = "OB_ERR_MAP_MORE_THAN_SELF_PARAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MAP methods must be declared without any parameters other than (optional) SELF",
 | 
						|
      .str_user_error        = "MAP methods must be declared without any parameters other than (optional) SELF",
 | 
						|
      .oracle_errno          = 520,
 | 
						|
      .oracle_str_error      = "PLS-00520: MAP methods must be declared without any parameters other than (optional) SELF",
 | 
						|
      .oracle_str_user_error = "PLS-00520: MAP methods must be declared without any parameters other than (optional) SELF"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORDER_RET_INT_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_ORDER_RET_INT_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ORDER methods must return an INTEGER",
 | 
						|
      .str_user_error        = "ORDER methods must return an INTEGER",
 | 
						|
      .oracle_errno          = 523,
 | 
						|
      .oracle_str_error      = "PLS-00523: ORDER methods must return an INTEGER",
 | 
						|
      .oracle_str_user_error = "PLS-00523: ORDER methods must return an INTEGER"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORDER_PARAM_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_ORDER_PARAM_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The parameter type in an ORDER method must be the containing object type",
 | 
						|
      .str_user_error        = "The parameter type in an ORDER method must be the containing object type",
 | 
						|
      .oracle_errno          = 524,
 | 
						|
      .oracle_str_error      = "PLS-00524: The parameter type in an ORDER method must be the containing object type",
 | 
						|
      .oracle_str_user_error = "PLS-00524: The parameter type in an ORDER method must be the containing object type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OBJ_CMP_SQL = {
 | 
						|
      .error_name            = "OB_ERR_OBJ_CMP_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Within SQL statements, only equality comparisons of objects are allowed without a map or order function",
 | 
						|
      .str_user_error        = "Within SQL statements, only equality comparisons of objects are allowed without a map or order function",
 | 
						|
      .oracle_errno          = 525,
 | 
						|
      .oracle_str_error      = "PLS-00525: Within SQL statements, only equality comparisons of objects are allowed without a map or order function",
 | 
						|
      .oracle_str_user_error = "PLS-00525: Within SQL statements, only equality comparisons of objects are allowed without a map or order function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MAP_ORDER_PRAGMA = {
 | 
						|
      .error_name            = "OB_ERR_MAP_ORDER_PRAGMA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "MAP or ORDER functions require a PRAGMA RESTRICT_REFERENCES specifying :WNDS,WNPS,RNPS,RNDS",
 | 
						|
      .str_user_error        = "MAP or ORDER functions require a PRAGMA RESTRICT_REFERENCES specifying :WNDS,WNPS,RNPS,RNDS",
 | 
						|
      .oracle_errno          = 527,
 | 
						|
      .oracle_str_error      = "PLS-00527: MAP or ORDER functions require a PRAGMA RESTRICT_REFERENCES specifying :WNDS,WNPS,RNPS,RNDS",
 | 
						|
      .oracle_str_user_error = "PLS-00527: MAP or ORDER functions require a PRAGMA RESTRICT_REFERENCES specifying :WNDS,WNPS,RNPS,RNDS"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORDER_PARAM_MUST_IN_MODE = {
 | 
						|
      .error_name            = "OB_ERR_ORDER_PARAM_MUST_IN_MODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The parameters to an ORDER function must have IN mode",
 | 
						|
      .str_user_error        = "The parameters to an ORDER function must have IN mode",
 | 
						|
      .oracle_errno          = 528,
 | 
						|
      .oracle_str_error      = "PLS-00528: The parameters to an ORDER function must have IN mode",
 | 
						|
      .oracle_str_user_error = "PLS-00528: The parameters to an ORDER function must have IN mode"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ORDER_PARAM_NOT_TWO = {
 | 
						|
      .error_name            = "OB_ERR_ORDER_PARAM_NOT_TWO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "ORDER methods must be declared with 1 (one) parameter in addition to (optional) SELF",
 | 
						|
      .str_user_error        = "ORDER methods must be declared with 1 (one) parameter in addition to (optional) SELF",
 | 
						|
      .oracle_errno          = 521,
 | 
						|
      .oracle_str_error      = "PLS-00521: ORDER methods must be declared with 1 (one) parameter in addition to (optional) SELF",
 | 
						|
      .oracle_str_user_error = "PLS-00521: ORDER methods must be declared with 1 (one) parameter in addition to (optional) SELF"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_REF_REFCURSIVE = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_REF_REFCURSIVE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "type is malformed because it is a non-REF mutually recursive type",
 | 
						|
      .str_user_error        = "type '%.*s' is malformed because it is a non-REF mutually recursive type",
 | 
						|
      .oracle_errno          = 318,
 | 
						|
      .oracle_str_error      = "PLS-00318: type is malformed because it is a non-REF mutually recursive type",
 | 
						|
      .oracle_str_user_error = "PLS-00318: type '%.*s' is malformed because it is a non-REF mutually recursive type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DIRECTIVE_ERROR = {
 | 
						|
      .error_name            = "OB_ERR_DIRECTIVE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "$ERROR: string",
 | 
						|
      .str_user_error        = "$ERROR: %.*s",
 | 
						|
      .oracle_errno          = 179,
 | 
						|
      .oracle_str_error      = "PLS-00179: $ERROR: string",
 | 
						|
      .oracle_str_user_error = "PLS-00179: $ERROR: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONS_HAS_RET_NODE = {
 | 
						|
      .error_name            = "OB_ERR_CONS_HAS_RET_NODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RETURN statement in a CONSTRUCTOR cannot include an expression",
 | 
						|
      .str_user_error        = "RETURN statement in a CONSTRUCTOR cannot include an expression",
 | 
						|
      .oracle_errno          = 661,
 | 
						|
      .oracle_str_error      = "PLS-00661: RETURN statement in a CONSTRUCTOR cannot include an expression",
 | 
						|
      .oracle_str_user_error = "PLS-00661: RETURN statement in a CONSTRUCTOR cannot include an expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CALL_WRONG_ARG = {
 | 
						|
      .error_name            = "OB_ERR_CALL_WRONG_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wrong number or types of arguments in call to procedure",
 | 
						|
      .str_user_error        = "wrong number or types of arguments in call to '%.*s'",
 | 
						|
      .oracle_errno          = 306,
 | 
						|
      .oracle_str_error      = "PLS-00306: wrong number or types of arguments in call to procedure",
 | 
						|
      .oracle_str_user_error = "PLS-00306: wrong number or types of arguments in call to '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FUNC_NAME_SAME_WITH_CONS = {
 | 
						|
      .error_name            = "OB_ERR_FUNC_NAME_SAME_WITH_CONS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "name must be a type",
 | 
						|
      .str_user_error        = "'%.*s' must be a type",
 | 
						|
      .oracle_errno          = 488,
 | 
						|
      .oracle_str_error      = "PLS-00488: name must be a type",
 | 
						|
      .oracle_str_user_error = "PLS-00488: '%.*s' must be a type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FUNC_DUP = {
 | 
						|
      .error_name            = "OB_ERR_FUNC_DUP",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "too many declarations of function match this call",
 | 
						|
      .str_user_error        = "too many declarations of '%.*s' match this call",
 | 
						|
      .oracle_errno          = 307,
 | 
						|
      .oracle_str_error      = "PLS-00307: too many declarations of function match this call",
 | 
						|
      .oracle_str_user_error = "PLS-00307: too many declarations of '%.*s' match this call"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WHEN_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_WHEN_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "WHEN clause cannot be used with table level triggers",
 | 
						|
      .str_user_error        = "WHEN clause cannot be used with table level triggers",
 | 
						|
      .oracle_errno          = 4077,
 | 
						|
      .oracle_str_error      = "ORA-04077: WHEN clause cannot be used with table level triggers",
 | 
						|
      .oracle_str_user_error = "ORA-04077: WHEN clause cannot be used with table level triggers"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEW_OLD_REFERENCES = {
 | 
						|
      .error_name            = "OB_ERR_NEW_OLD_REFERENCES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "NEW or OLD references not allowed in table level triggers",
 | 
						|
      .str_user_error        = "NEW or OLD references not allowed in table level triggers",
 | 
						|
      .oracle_errno          = 4082,
 | 
						|
      .oracle_str_error      = "ORA-04082: NEW or OLD references not allowed in table level triggers",
 | 
						|
      .oracle_str_user_error = "ORA-04082: NEW or OLD references not allowed in table level triggers"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_DECL_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_DECL_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "%%TYPE must be applied to a variable, column, field or attribute, not to other",
 | 
						|
      .str_user_error        = "%%TYPE must be applied to a variable, column, field or attribute, not to '%.*s'",
 | 
						|
      .oracle_errno          = 206,
 | 
						|
      .oracle_str_error      = "PLS-00206: %%TYPE must be applied to a variable, column, field or attribute, not to other",
 | 
						|
      .oracle_str_user_error = "PLS-00206: %%TYPE must be applied to a variable, column, field or attribute, not to '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OBJECT_INVALID = {
 | 
						|
      .error_name            = "OB_ERR_OBJECT_INVALID",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object is invalid",
 | 
						|
      .str_user_error        = "object '%.*s' is invalid",
 | 
						|
      .oracle_errno          = 905,
 | 
						|
      .oracle_str_error      = "PLS-00905: object is invalid",
 | 
						|
      .oracle_str_user_error = "PLS-00905: object '%.*s' is invalid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_XML_PARSE = {
 | 
						|
      .error_name            = "OB_ERR_XML_PARSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "XML parsing failed",
 | 
						|
      .str_user_error        = "XML parsing failed",
 | 
						|
      .oracle_errno          = 31011,
 | 
						|
      .oracle_str_error      = "ORA-31011: XML parsing failed",
 | 
						|
      .oracle_str_user_error = "ORA-31011: XML parsing failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXP_NOT_ASSIGNABLE = {
 | 
						|
      .error_name            = "OB_ERR_EXP_NOT_ASSIGNABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expression cannot be used as an assignment",
 | 
						|
      .str_user_error        = "expression '%.*s' cannot be used as an assignment",
 | 
						|
      .oracle_errno          = 363,
 | 
						|
      .oracle_str_error      = "PLS-00363: expression cannot be used as an assignment",
 | 
						|
      .oracle_str_user_error = "PLS-00363: expression '%.*s' cannot be used as an assignment"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CURSOR_CONTAIN_BOTH_REGULAR_AND_ARRAY = {
 | 
						|
      .error_name            = "OB_ERR_CURSOR_CONTAIN_BOTH_REGULAR_AND_ARRAY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cursor contains both regular and array defines which is illegal",
 | 
						|
      .str_user_error        = "Cursor contains both regular and array defines which is illegal",
 | 
						|
      .oracle_errno          = 29256,
 | 
						|
      .oracle_str_error      = "ORA-29256: Cursor contains both regular and array defines which is illegal",
 | 
						|
      .oracle_str_user_error = "ORA-29256: Cursor contains both regular and array defines which is illegal"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STATIC_BOOL_EXPR = {
 | 
						|
      .error_name            = "OB_ERR_STATIC_BOOL_EXPR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a static boolean expression must be used",
 | 
						|
      .str_user_error        = "a static boolean expression must be used",
 | 
						|
      .oracle_errno          = 174,
 | 
						|
      .oracle_str_error      = "PLS-00174: a static boolean expression must be used",
 | 
						|
      .oracle_str_user_error = "PLS-00174: a static boolean expression must be used"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DIRECTIVE_CONTEXT = {
 | 
						|
      .error_name            = "OB_ERR_DIRECTIVE_CONTEXT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "preprocessor directives are not supported in this context",
 | 
						|
      .str_user_error        = "preprocessor directives are not supported in this context",
 | 
						|
      .oracle_errno          = 180,
 | 
						|
      .oracle_str_error      = "PLS-00180: preprocessor directives are not supported in this context",
 | 
						|
      .oracle_str_user_error = "PLS-00180: preprocessor directives are not supported in this context"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_PATH = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_PATH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid directory path",
 | 
						|
      .str_user_error        = "invalid directory path",
 | 
						|
      .oracle_errno          = 29280,
 | 
						|
      .oracle_str_error      = "ORA-29280: invalid directory path",
 | 
						|
      .oracle_str_user_error = "ORA-29280: invalid directory path"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_MODE = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_MODE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid mode",
 | 
						|
      .str_user_error        = "invalid mode",
 | 
						|
      .oracle_errno          = 29281,
 | 
						|
      .oracle_str_error      = "ORA-29281: invalid mode",
 | 
						|
      .oracle_str_user_error = "ORA-29281: invalid mode"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_FILEHANDLE = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_FILEHANDLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid file ID",
 | 
						|
      .str_user_error        = "invalid file ID",
 | 
						|
      .oracle_errno          = 29282,
 | 
						|
      .oracle_str_error      = "ORA-29282: invalid file ID",
 | 
						|
      .oracle_str_user_error = "ORA-29282: invalid file ID"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_OPERATION = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_OPERATION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid file operation",
 | 
						|
      .str_user_error        = "invalid file operation: %.*s",
 | 
						|
      .oracle_errno          = 29283,
 | 
						|
      .oracle_str_error      = "ORA-29283: invalid file operation",
 | 
						|
      .oracle_str_user_error = "ORA-29283: invalid file operation: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_READ_ERROR = {
 | 
						|
      .error_name            = "OB_UTL_FILE_READ_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file read error",
 | 
						|
      .str_user_error        = "file read error",
 | 
						|
      .oracle_errno          = 29284,
 | 
						|
      .oracle_str_error      = "ORA-29284: file read error",
 | 
						|
      .oracle_str_user_error = "ORA-29284: file read error"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_WRITE_ERROR = {
 | 
						|
      .error_name            = "OB_UTL_FILE_WRITE_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file write error",
 | 
						|
      .str_user_error        = "file write error",
 | 
						|
      .oracle_errno          = 29285,
 | 
						|
      .oracle_str_error      = "ORA-29285: file write error",
 | 
						|
      .oracle_str_user_error = "ORA-29285: file write error"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INTERNAL_ERROR = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INTERNAL_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "internal error",
 | 
						|
      .str_user_error        = "internal error",
 | 
						|
      .oracle_errno          = 29286,
 | 
						|
      .oracle_str_error      = "ORA-29286: internal error",
 | 
						|
      .oracle_str_user_error = "ORA-29286: internal error"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_CHARSETMISMATCH = {
 | 
						|
      .error_name            = "OB_UTL_FILE_CHARSETMISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "character set mismatch",
 | 
						|
      .str_user_error        = "character set mismatch",
 | 
						|
      .oracle_errno          = 29298,
 | 
						|
      .oracle_str_error      = "ORA-29298: character set mismatch",
 | 
						|
      .oracle_str_user_error = "ORA-29298: character set mismatch"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_MAXLINESIZE = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_MAXLINESIZE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid maximum line size",
 | 
						|
      .str_user_error        = "invalid maximum line size",
 | 
						|
      .oracle_errno          = 29287,
 | 
						|
      .oracle_str_error      = "ORA-29287: invalid maximum line size",
 | 
						|
      .oracle_str_user_error = "ORA-29287: invalid maximum line size"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_FILENAME = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_FILENAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid file name",
 | 
						|
      .str_user_error        = "invalid file name",
 | 
						|
      .oracle_errno          = 29288,
 | 
						|
      .oracle_str_error      = "ORA-29288: invalid file name",
 | 
						|
      .oracle_str_user_error = "ORA-29288: invalid file name"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_ACCESS_DENIED = {
 | 
						|
      .error_name            = "OB_UTL_FILE_ACCESS_DENIED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "directory access denied",
 | 
						|
      .str_user_error        = "directory access denied",
 | 
						|
      .oracle_errno          = 29289,
 | 
						|
      .oracle_str_error      = "ORA-29289: directory access denied",
 | 
						|
      .oracle_str_user_error = "ORA-29289: directory access denied"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_INVALID_OFFSET = {
 | 
						|
      .error_name            = "OB_UTL_FILE_INVALID_OFFSET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid offset specified for seek",
 | 
						|
      .str_user_error        = "invalid offset specified for seek",
 | 
						|
      .oracle_errno          = 29290,
 | 
						|
      .oracle_str_error      = "ORA-29290: invalid offset specified for seek",
 | 
						|
      .oracle_str_user_error = "ORA-29290: invalid offset specified for seek"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_DELETE_FAILED = {
 | 
						|
      .error_name            = "OB_UTL_FILE_DELETE_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file remove operation failed",
 | 
						|
      .str_user_error        = "file remove operation failed",
 | 
						|
      .oracle_errno          = 29291,
 | 
						|
      .oracle_str_error      = "ORA-29291: file remove operation failed",
 | 
						|
      .oracle_str_user_error = "ORA-29291: file remove operation failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_UTL_FILE_RENAME_FAILED = {
 | 
						|
      .error_name            = "OB_UTL_FILE_RENAME_FAILED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "file rename operation failed",
 | 
						|
      .str_user_error        = "file rename operation failed",
 | 
						|
      .oracle_errno          = 29292,
 | 
						|
      .oracle_str_error      = "ORA-29292: file rename operation failed",
 | 
						|
      .oracle_str_user_error = "ORA-29292: file rename operation failed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BIND_TYPE_NOT_MATCH_COLUMN = {
 | 
						|
      .error_name            = "OB_ERR_BIND_TYPE_NOT_MATCH_COLUMN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "type of out argument must match type of column or bind variable",
 | 
						|
      .str_user_error        = "type of out argument must match type of column or bind variable",
 | 
						|
      .oracle_errno          = 6562,
 | 
						|
      .oracle_str_error      = "ORA-06562: type of out argument must match type of column or bind variable",
 | 
						|
      .oracle_str_user_error = "ORA-06562: type of out argument must match type of column or bind variable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NESTED_TABLE_IN_TRI = {
 | 
						|
      .error_name            = "OB_ERR_NESTED_TABLE_IN_TRI",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Nested table clause allowed only for INSTEAD OF triggers",
 | 
						|
      .str_user_error        = "Nested table clause allowed only for INSTEAD OF triggers",
 | 
						|
      .oracle_errno          = 25009,
 | 
						|
      .oracle_str_error      = "ORA-25009: Nested table clause allowed only for INSTEAD OF triggers",
 | 
						|
      .oracle_str_user_error = "ORA-25009: Nested table clause allowed only for INSTEAD OF triggers"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COL_LIST_IN_TRI = {
 | 
						|
      .error_name            = "OB_ERR_COL_LIST_IN_TRI",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "column list not valid for this trigger type",
 | 
						|
      .str_user_error        = "column list not valid for this trigger type",
 | 
						|
      .oracle_errno          = 4073,
 | 
						|
      .oracle_str_error      = "ORA-04073: column list not valid for this trigger type",
 | 
						|
      .oracle_str_user_error = "ORA-04073: column list not valid for this trigger type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WHEN_CLAUSE_IN_TRI = {
 | 
						|
      .error_name            = "OB_ERR_WHEN_CLAUSE_IN_TRI",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "WHEN clause is not allowed in INSTEAD OF triggers",
 | 
						|
      .str_user_error        = "WHEN clause is not allowed in INSTEAD OF triggers",
 | 
						|
      .oracle_errno          = 25004,
 | 
						|
      .oracle_str_error      = "ORA-25004: WHEN clause is not allowed in INSTEAD OF triggers",
 | 
						|
      .oracle_str_user_error = "ORA-25004: WHEN clause is not allowed in INSTEAD OF triggers"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INSTEAD_TRI_ON_TABLE = {
 | 
						|
      .error_name            = "OB_ERR_INSTEAD_TRI_ON_TABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot create INSTEAD OF triggers on tables",
 | 
						|
      .str_user_error        = "cannot create INSTEAD OF triggers on tables",
 | 
						|
      .oracle_errno          = 25002,
 | 
						|
      .oracle_str_error      = "ORA-25002: cannot create INSTEAD OF triggers on tables",
 | 
						|
      .oracle_str_user_error = "ORA-25002: cannot create INSTEAD OF triggers on tables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RETURNING_CLAUSE = {
 | 
						|
      .error_name            = "OB_ERR_RETURNING_CLAUSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unsupported feature with RETURNING clause",
 | 
						|
      .str_user_error        = "unsupported feature with RETURNING clause",
 | 
						|
      .oracle_errno          = 22816,
 | 
						|
      .oracle_str_error      = "ORA-22816: unsupported feature with RETURNING clause",
 | 
						|
      .oracle_str_user_error = "ORA-22816: unsupported feature with RETURNING clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_XSLT_PARSE = {
 | 
						|
      .error_name            = "OB_ERR_XSLT_PARSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "document is not a stylesheet",
 | 
						|
      .str_user_error        = "document is not a stylesheet",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9574, document is not a stylesheet",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9574, document is not a stylesheet"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_RETURN_IN_FUNCTION = {
 | 
						|
      .error_name            = "OB_ERR_NO_RETURN_IN_FUNCTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_NORETURN,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "No Return found in FUNCTION '%.*s'",
 | 
						|
      .str_user_error        = "No Return found in FUNCTION '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9575, No Return found in FUNCTION '%.*s'",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9575, No Return found in FUNCTION '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_FUNC_TRIGGER = {
 | 
						|
      .error_name            = "OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_FUNC_TRIGGER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "'%.*s' is not allowed in stored function or trigger.",
 | 
						|
      .str_user_error        = "'%.*s' is not allowed in stored function or trigger.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9576, '%.*s' is not allowed in stored function or trigger.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9576, '%.*s' is not allowed in stored function or trigger."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TOO_LONG_STRING_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_TOO_LONG_STRING_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_FIELDLENGTH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Column length too big for column '%.*s' (max = %d); use BLOB or TEXT instead",
 | 
						|
      .str_user_error        = "Column length too big for column '%.*s' (max = %d); use BLOB or TEXT instead",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9577, Column length too big for column '%.*s' (max = %d); use BLOB or TEXT instead",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9577, Column length too big for column '%.*s' (max = %d); use BLOB or TEXT instead"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WIDTH_OUT_OF_RANGE = {
 | 
						|
      .error_name            = "OB_ERR_WIDTH_OUT_OF_RANGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TOO_BIG_DISPLAYWIDTH,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Display width out of range for column '%.*s' (max = %d)",
 | 
						|
      .str_user_error        = "Display width out of range for column '%.*s' (max = %d)",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9578, Display width out of range for column '%.*s' (max = %d)",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9578, Display width out of range for column '%.*s' (max = %d)"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REDEFINE_LABEL = {
 | 
						|
      .error_name            = "OB_ERR_REDEFINE_LABEL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_LABEL_REDEFINE,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Redefining label '%.*s'",
 | 
						|
      .str_user_error        = "Redefining label '%.*s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9579, Redefining label '%.*s'",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9579, Redefining label '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_PROCEDRUE = {
 | 
						|
      .error_name            = "OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_PROCEDRUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SP_BADSTATEMENT,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "'%.*s' is not allowed in stored procedure.",
 | 
						|
      .str_user_error        = "'%.*s' is not allowed in stored procedure.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9580, '%.*s' is not allowed in stored procedure.",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9580, '%.*s' is not allowed in stored procedure."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_NOT_SUPPORT = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_NOT_SUPPORT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_NOT_SUPPORTED_YET,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "This version of OceanBase doesn't yet support 'multiple triggers with the same action time and event for one table'",
 | 
						|
      .str_user_error        = "This version of OceanBase doesn't yet support 'multiple triggers with the same action time and event for one table'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9581, This version of OceanBase doesn't yet support 'multiple triggers with the same action time and event for one table'",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9581, This version of OceanBase doesn't yet support 'multiple triggers with the same action time and event for one table'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_IN_WRONG_SCHEMA = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_IN_WRONG_SCHEMA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRG_IN_WRONG_SCHEMA,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Trigger in wrong schema",
 | 
						|
      .str_user_error        = "Trigger in wrong schema",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9582, Trigger in wrong schema",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9582, Trigger in wrong schema"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNKNOWN_EXCEPTION = {
 | 
						|
      .error_name            = "OB_ERR_UNKNOWN_EXCEPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unknown exception name 'string' in PRAGMA EXCEPTION_INIT",
 | 
						|
      .str_user_error        = "unknown exception name '%.*s' in PRAGMA EXCEPTION_INIT",
 | 
						|
      .oracle_errno          = 109,
 | 
						|
      .oracle_str_error      = "PLS-00109: unknown exception name 'string' in PRAGMA EXCEPTION_INIT",
 | 
						|
      .oracle_str_user_error = "PLS-00109: unknown exception name '%.*s' in PRAGMA EXCEPTION_INIT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_CANT_CHANGE_ROW = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_CANT_CHANGE_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRG_CANT_CHANGE_ROW,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Updating of NEW/OLD row is not allowed in this trigger",
 | 
						|
      .str_user_error        = "Updating of %s row is not allowed in %strigger",
 | 
						|
      .oracle_errno          = 4084,
 | 
						|
      .oracle_str_error      = "ORA-04084: cannot change NEW values for this trigger type",
 | 
						|
      .oracle_str_user_error = "ORA-04084: cannot change NEW values for this trigger type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ITEM_NOT_IN_BODY = {
 | 
						|
      .error_name            = "OB_ERR_ITEM_NOT_IN_BODY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subprogram or cursor 'string' is declared in a package specification and must be defined in the package body",
 | 
						|
      .str_user_error        = "subprogram or cursor '%.*s' is declared in a package specification and must be defined in the package body",
 | 
						|
      .oracle_errno          = 323,
 | 
						|
      .oracle_str_error      = "PLS-00323: subprogram or cursor 'string' is declared in a package specification and must be defined in the package body",
 | 
						|
      .oracle_str_user_error = "PLS-00323: subprogram or cursor '%.*s' is declared in a package specification and must be defined in the package body"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_ROWTYPE = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_ROWTYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "with %%ROWTYPE attribute, 'string' must name a table, cursor or cursor-variable",
 | 
						|
      .str_user_error        = "with %%ROWTYPE attribute, '%.*s' must name a table, cursor or cursor-variable",
 | 
						|
      .oracle_errno          = 310,
 | 
						|
      .oracle_str_error      = "PLS-00310: with %%ROWTYPE attribute, 'string' must name a table, cursor or cursor-variable",
 | 
						|
      .oracle_str_user_error = "PLS-00310: with %%ROWTYPE attribute, '%.*s' must name a table, cursor or cursor-variable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ROUTINE_NOT_DEFINE = {
 | 
						|
      .error_name            = "OB_ERR_ROUTINE_NOT_DEFINE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A subprogram body must be defined for the forward declaration of string.",
 | 
						|
      .str_user_error        = "A subprogram body must be defined for the forward declaration of %.*s.",
 | 
						|
      .oracle_errno          = 328,
 | 
						|
      .oracle_str_error      = "PLS-00328: A subprogram body must be defined for the forward declaration of string.",
 | 
						|
      .oracle_str_user_error = "PLS-00328: A subprogram body must be defined for the forward declaration of %.*s."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_NAME_IN_CURSOR = {
 | 
						|
      .error_name            = "OB_ERR_DUP_NAME_IN_CURSOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "alias required in SELECT list of cursor to avoid duplicate column names",
 | 
						|
      .str_user_error        = "alias required in SELECT list of cursor to avoid duplicate column names",
 | 
						|
      .oracle_errno          = 402,
 | 
						|
      .oracle_str_error      = "PLS-00402: alias required in SELECT list of cursor to avoid duplicate column names",
 | 
						|
      .oracle_str_user_error = "PLS-00402: alias required in SELECT list of cursor to avoid duplicate column names"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LOCAL_COLL_IN_SQL = {
 | 
						|
      .error_name            = "OB_ERR_LOCAL_COLL_IN_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "local collection types not allowed in SQL statements",
 | 
						|
      .str_user_error        = "local collection types not allowed in SQL statements",
 | 
						|
      .oracle_errno          = 642,
 | 
						|
      .oracle_str_error      = "PLS-00642: local collection types not allowed in SQL statements",
 | 
						|
      .oracle_str_user_error = "PLS-00642: local collection types not allowed in SQL statements"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_MISMATCH_IN_FETCH = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_MISMATCH_IN_FETCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "type mismatch found at 'string' between FETCH cursor and INTO variables",
 | 
						|
      .str_user_error        = "type mismatch found at '%.*s' between FETCH cursor and INTO variables",
 | 
						|
      .oracle_errno          = 386,
 | 
						|
      .oracle_str_error      = "PLS-00386: type mismatch found at 'string' between FETCH cursor and INTO variables",
 | 
						|
      .oracle_str_user_error = "PLS-00386: type mismatch found at '%.*s' between FETCH cursor and INTO variables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OTHERS_MUST_LAST = {
 | 
						|
      .error_name            = "OB_ERR_OTHERS_MUST_LAST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OTHERS handler must be last among the exception handlers of a block",
 | 
						|
      .str_user_error        = "OTHERS handler must be last among the exception handlers of a block",
 | 
						|
      .oracle_errno          = 370,
 | 
						|
      .oracle_str_error      = "PLS-00370: OTHERS handler must be last among the exception handlers of a block",
 | 
						|
      .oracle_str_user_error = "PLS-00370: OTHERS handler must be last among the exception handlers of a block"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RAISE_NOT_IN_HANDLER = {
 | 
						|
      .error_name            = "OB_ERR_RAISE_NOT_IN_HANDLER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a RAISE statement with no exception name must be inside an exception handler",
 | 
						|
      .str_user_error        = "a RAISE statement with no exception name must be inside an exception handler",
 | 
						|
      .oracle_errno          = 367,
 | 
						|
      .oracle_str_error      = "PLS-00367: a RAISE statement with no exception name must be inside an exception handler",
 | 
						|
      .oracle_str_user_error = "PLS-00367: a RAISE statement with no exception name must be inside an exception handler"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CURSOR_RETURN_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CURSOR_RETURN_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid cursor return type; 'string' must be a record type",
 | 
						|
      .str_user_error        = "invalid cursor return type; '%.*s' must be a record type",
 | 
						|
      .oracle_errno          = 362,
 | 
						|
      .oracle_str_error      = "PLS-00362: invalid cursor return type; 'string' must be a record type",
 | 
						|
      .oracle_str_user_error = "PLS-00362: invalid cursor return type; '%.*s' must be a record type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IN_CURSOR_OPEND = {
 | 
						|
      .error_name            = "OB_ERR_IN_CURSOR_OPEND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "IN cursor 'string' cannot be OPEN'ed",
 | 
						|
      .str_user_error        = "IN cursor '%.*s' cannot be OPEN'ed",
 | 
						|
      .oracle_errno          = 361,
 | 
						|
      .oracle_str_error      = "PLS-00361: IN cursor 'string' cannot be OPEN'ed",
 | 
						|
      .oracle_str_user_error = "PLS-00361: IN cursor '%.*s' cannot be OPEN'ed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CURSOR_NO_RETURN_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_CURSOR_NO_RETURN_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cursor declaration without body needs return type",
 | 
						|
      .str_user_error        = "cursor declaration without body needs return type",
 | 
						|
      .oracle_errno          = 360,
 | 
						|
      .oracle_str_error      = "PLS-00360: cursor declaration without body needs return type",
 | 
						|
      .oracle_str_user_error = "PLS-00360: cursor declaration without body needs return type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_CHOICES = {
 | 
						|
      .error_name            = "OB_ERR_NO_CHOICES",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no choices may appear with choice OTHERS in an exception handler",
 | 
						|
      .str_user_error        = "no choices may appear with choice OTHERS in an exception handler",
 | 
						|
      .oracle_errno          = 369,
 | 
						|
      .oracle_str_error      = "PLS-00369: no choices may appear with choice OTHERS in an exception handler",
 | 
						|
      .oracle_str_user_error = "PLS-00369: no choices may appear with choice OTHERS in an exception handler"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_DECL_MALFORMED = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_DECL_MALFORMED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the declaration of the type of this expression is incomplete or malformed",
 | 
						|
      .str_user_error        = "the declaration of the type of this expression is incomplete or malformed",
 | 
						|
      .oracle_errno          = 320,
 | 
						|
      .oracle_str_error      = "PLS-00320: the declaration of the type of this expression is incomplete or malformed",
 | 
						|
      .oracle_str_user_error = "PLS-00320: the declaration of the type of this expression is incomplete or malformed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IN_FORMAL_NOT_DENOTABLE = {
 | 
						|
      .error_name            = "OB_ERR_IN_FORMAL_NOT_DENOTABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subprogram 'in' formal string is not yet denotable",
 | 
						|
      .str_user_error        = "subprogram 'in' formal %.*s is not yet denotable",
 | 
						|
      .oracle_errno          = 227,
 | 
						|
      .oracle_str_error      = "PLS-00227: subprogram 'in' formal string is not yet denotable",
 | 
						|
      .oracle_str_user_error = "PLS-00227: subprogram 'in' formal %.*s is not yet denotable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUT_PARAM_HAS_DEFAULT = {
 | 
						|
      .error_name            = "OB_ERR_OUT_PARAM_HAS_DEFAULT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "OUT and IN OUT formal parameters may not have default expressions",
 | 
						|
      .str_user_error        = "OUT and IN OUT formal parameters may not have default expressions",
 | 
						|
      .oracle_errno          = 230,
 | 
						|
      .oracle_str_error      = "PLS-00230: OUT and IN OUT formal parameters may not have default expressions",
 | 
						|
      .oracle_str_user_error = "PLS-00230: OUT and IN OUT formal parameters may not have default expressions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ONLY_FUNC_CAN_PIPELINED = {
 | 
						|
      .error_name            = "OB_ERR_ONLY_FUNC_CAN_PIPELINED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "only functions can be declared as PIPELINED",
 | 
						|
      .str_user_error        = "only functions can be declared as PIPELINED",
 | 
						|
      .oracle_errno          = 655,
 | 
						|
      .oracle_str_error      = "PLS-00655: only functions can be declared as PIPELINED",
 | 
						|
      .oracle_str_user_error = "PLS-00655: only functions can be declared as PIPELINED"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PIPE_RETURN_NOT_COLL = {
 | 
						|
      .error_name            = "OB_ERR_PIPE_RETURN_NOT_COLL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "pipelined functions must have a supported collection return type",
 | 
						|
      .str_user_error        = "pipelined functions must have a supported collection return type",
 | 
						|
      .oracle_errno          = 630,
 | 
						|
      .oracle_str_error      = "PLS-00630: pipelined functions must have a supported collection return type",
 | 
						|
      .oracle_str_user_error = "PLS-00630: pipelined functions must have a supported collection return type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISMATCH_SUBPROGRAM = {
 | 
						|
      .error_name            = "OB_ERR_MISMATCH_SUBPROGRAM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "mismatch between string on a subprogram specification and body",
 | 
						|
      .str_user_error        = "mismatch between string on a subprogram specification and body",
 | 
						|
      .oracle_errno          = 263,
 | 
						|
      .oracle_str_error      = "PLS-00263: mismatch between string on a subprogram specification and body",
 | 
						|
      .oracle_str_user_error = "PLS-00263: mismatch between string on a subprogram specification and body"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARAM_IN_PACKAGE_SPEC = {
 | 
						|
      .error_name            = "OB_ERR_PARAM_IN_PACKAGE_SPEC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Pragma string must be declared in a package specification",
 | 
						|
      .str_user_error        = "Pragma %.*s must be declared in a package specification",
 | 
						|
      .oracle_errno          = 708,
 | 
						|
      .oracle_str_error      = "PLS-00708: Pragma string must be declared in a package specification",
 | 
						|
      .oracle_str_user_error = "PLS-00708: Pragma %.*s must be declared in a package specification"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NUMERIC_LITERAL_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_NUMERIC_LITERAL_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "numeric literal required",
 | 
						|
      .str_user_error        = "numeric literal required",
 | 
						|
      .oracle_errno          = 491,
 | 
						|
      .oracle_str_error      = "PLS-00491: numeric literal required",
 | 
						|
      .oracle_str_user_error = "PLS-00491: numeric literal required"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NON_INT_LITERAL = {
 | 
						|
      .error_name            = "OB_ERR_NON_INT_LITERAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "non-integral numeric literal string is inappropriate in this context",
 | 
						|
      .str_user_error        = "non-integral numeric literal %.*s is inappropriate in this context",
 | 
						|
      .oracle_errno          = 325,
 | 
						|
      .oracle_str_error      = "PLS-00325: non-integral numeric literal string is inappropriate in this context",
 | 
						|
      .oracle_str_user_error = "PLS-00325: non-integral numeric literal %.*s is inappropriate in this context"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IMPROPER_CONSTRAINT_FORM = {
 | 
						|
      .error_name            = "OB_ERR_IMPROPER_CONSTRAINT_FORM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "improper constraint form used",
 | 
						|
      .str_user_error        = "improper constraint form used",
 | 
						|
      .oracle_errno          = 572,
 | 
						|
      .oracle_str_error      = "PLS-00572: improper constraint form used",
 | 
						|
      .oracle_str_user_error = "PLS-00572: improper constraint form used"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TYPE_CANT_CONSTRAINED = {
 | 
						|
      .error_name            = "OB_ERR_TYPE_CANT_CONSTRAINED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "type name 'string' cannot be constrained",
 | 
						|
      .str_user_error        = "type name '%.*s' cannot be constrained",
 | 
						|
      .oracle_errno          = 566,
 | 
						|
      .oracle_str_error      = "PLS-00566: type name 'string' cannot be constrained",
 | 
						|
      .oracle_str_user_error = "PLS-00566: type name '%.*s' cannot be constrained"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ANY_CS_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_ANY_CS_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "character set ANY_CS is only allowed on a subprogram parameter",
 | 
						|
      .str_user_error        = "character set ANY_CS is only allowed on a subprogram parameter",
 | 
						|
      .oracle_errno          = 551,
 | 
						|
      .oracle_str_error      = "PLS-00551: character set ANY_CS is only allowed on a subprogram parameter",
 | 
						|
      .oracle_str_user_error = "PLS-00551: character set ANY_CS is only allowed on a subprogram parameter"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SCHEMA_TYPE_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_SCHEMA_TYPE_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "schema-level type has illegal reference to string",
 | 
						|
      .str_user_error        = "schema-level type has illegal reference to %.*s",
 | 
						|
      .oracle_errno          = 329,
 | 
						|
      .oracle_str_error      = "PLS-00329: schema-level type has illegal reference to string",
 | 
						|
      .oracle_str_user_error = "PLS-00329: schema-level type has illegal reference to %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNSUPPORTED_TABLE_INDEX_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_UNSUPPORTED_TABLE_INDEX_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Implementation restriction: unsupported table index type",
 | 
						|
      .str_user_error        = "Implementation restriction: unsupported table index type",
 | 
						|
      .oracle_errno          = 315,
 | 
						|
      .oracle_str_error      = "PLS-00315: Implementation restriction: unsupported table index type",
 | 
						|
      .oracle_str_user_error = "PLS-00315: Implementation restriction: unsupported table index type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ARRAY_MUST_HAVE_POSITIVE_LIMIT = {
 | 
						|
      .error_name            = "OB_ERR_ARRAY_MUST_HAVE_POSITIVE_LIMIT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A VARRAY must have a positive limit",
 | 
						|
      .str_user_error        = "A VARRAY must have a positive limit",
 | 
						|
      .oracle_errno          = 537,
 | 
						|
      .oracle_str_error      = "PLS-00537: A VARRAY must have a positive limit",
 | 
						|
      .oracle_str_user_error = "PLS-00537: A VARRAY must have a positive limit"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FORALL_ITER_NOT_ALLOWED = {
 | 
						|
      .error_name            = "OB_ERR_FORALL_ITER_NOT_ALLOWED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "FORALL iteration variable string is not allowed in this context",
 | 
						|
      .str_user_error        = "FORALL iteration variable %.*s is not allowed in this context",
 | 
						|
      .oracle_errno          = 430,
 | 
						|
      .oracle_str_error      = "PLS-00430: FORALL iteration variable string is not allowed in this context",
 | 
						|
      .oracle_str_user_error = "PLS-00430: FORALL iteration variable %.*s is not allowed in this context"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BULK_IN_BIND = {
 | 
						|
      .error_name            = "OB_ERR_BULK_IN_BIND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "references to fields of BULK In-BIND table of records or objects must have the form A(I).F",
 | 
						|
      .str_user_error        = "references to fields of BULK In-BIND table of records or objects must have the form A(I).F",
 | 
						|
      .oracle_errno          = 674,
 | 
						|
      .oracle_str_error      = "PLS-00674: references to fields of BULK In-BIND table of records or objects must have the form A(I).F",
 | 
						|
      .oracle_str_user_error = "PLS-00674: references to fields of BULK In-BIND table of records or objects must have the form A(I).F"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FORALL_BULK_TOGETHER = {
 | 
						|
      .error_name            = "OB_ERR_FORALL_BULK_TOGETHER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "implementation restriction: cannot use FORALL and BULK COLLECT INTO together in SELECT statements",
 | 
						|
      .str_user_error        = "implementation restriction: cannot use FORALL and BULK COLLECT INTO together in SELECT statements",
 | 
						|
      .oracle_errno          = 432,
 | 
						|
      .oracle_str_error      = "PLS-00432: implementation restriction: cannot use FORALL and BULK COLLECT INTO together in SELECT statements",
 | 
						|
      .oracle_str_user_error = "PLS-00432: implementation restriction: cannot use FORALL and BULK COLLECT INTO together in SELECT statements"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FORALL_DML_WITHOUT_BULK = {
 | 
						|
      .error_name            = "OB_ERR_FORALL_DML_WITHOUT_BULK",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DML statement without BULK In-BIND cannot be used inside FORALL",
 | 
						|
      .str_user_error        = "DML statement without BULK In-BIND cannot be used inside FORALL",
 | 
						|
      .oracle_errno          = 435,
 | 
						|
      .oracle_str_error      = "PLS-00435: DML statement without BULK In-BIND cannot be used inside FORALL",
 | 
						|
      .oracle_str_user_error = "PLS-00435: DML statement without BULK In-BIND cannot be used inside FORALL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SHOULD_COLLECTION_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_SHOULD_COLLECTION_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Type of expression should be a collection type",
 | 
						|
      .str_user_error        = "Type of expression should be a collection type",
 | 
						|
      .oracle_errno          = 668,
 | 
						|
      .oracle_str_error      = "PLS-00668: Type of expression should be a collection type",
 | 
						|
      .oracle_str_user_error = "PLS-00668: Type of expression should be a collection type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ASSOC_ELEM_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_ASSOC_ELEM_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Element type of associative array should be pls_integer or binary_integer",
 | 
						|
      .str_user_error        = "Element type of associative array should be pls_integer or binary_integer",
 | 
						|
      .oracle_errno          = 667,
 | 
						|
      .oracle_str_error      = "PLS-00667: Element type of associative array should be pls_integer or binary_integer",
 | 
						|
      .oracle_str_user_error = "PLS-00667: Element type of associative array should be pls_integer or binary_integer"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTO_CLAUSE_EXPECTED = {
 | 
						|
      .error_name            = "OB_ERR_INTO_CLAUSE_EXPECTED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "an INTO clause is expected in this SELECT statement",
 | 
						|
      .str_user_error        = "an INTO clause is expected in this SELECT statement",
 | 
						|
      .oracle_errno          = 428,
 | 
						|
      .oracle_str_error      = "PLS-00428: an INTO clause is expected in this SELECT statement",
 | 
						|
      .oracle_str_user_error = "PLS-00428: an INTO clause is expected in this SELECT statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SUBPROGRAM_VIOLATES_PRAGMA = {
 | 
						|
      .error_name            = "OB_ERR_SUBPROGRAM_VIOLATES_PRAGMA",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Subprogram 'string' violates its associated pragma",
 | 
						|
      .str_user_error        = "Subprogram '%.*s' violates its associated pragma",
 | 
						|
      .oracle_errno          = 452,
 | 
						|
      .oracle_str_error      = "PLS-00452: Subprogram 'string' violates its associated pragma",
 | 
						|
      .oracle_str_user_error = "PLS-00452: Subprogram '%.*s' violates its associated pragma"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXPR_SQL_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_EXPR_SQL_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expressions have to be of SQL types",
 | 
						|
      .str_user_error        = "expressions have to be of SQL types",
 | 
						|
      .oracle_errno          = 457,
 | 
						|
      .oracle_str_error      = "PLS-00457: expressions have to be of SQL types",
 | 
						|
      .oracle_str_user_error = "PLS-00457: expressions have to be of SQL types"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRAGMA_DECL_TWICE = {
 | 
						|
      .error_name            = "OB_ERR_PRAGMA_DECL_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PRAGMA string cannot be declared twice",
 | 
						|
      .str_user_error        = "PRAGMA %.*s cannot be declared twice",
 | 
						|
      .oracle_errno          = 711,
 | 
						|
      .oracle_str_error      = "PLS-00711: PRAGMA string cannot be declared twice",
 | 
						|
      .oracle_str_user_error = "PLS-00711: PRAGMA %.*s cannot be declared twice"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRAGMA_FOLLOW_DECL = {
 | 
						|
      .error_name            = "OB_ERR_PRAGMA_FOLLOW_DECL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "this PRAGMA must follow the declaration of 'string'",
 | 
						|
      .str_user_error        = "this PRAGMA must follow the declaration of '%.*s'",
 | 
						|
      .oracle_errno          = 115,
 | 
						|
      .oracle_str_error      = "PLS-00115: this PRAGMA must follow the declaration of 'string'",
 | 
						|
      .oracle_str_user_error = "PLS-00115: this PRAGMA must follow the declaration of '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PIPE_STMT_IN_NON_PIPELINED_FUNC = {
 | 
						|
      .error_name            = "OB_ERR_PIPE_STMT_IN_NON_PIPELINED_FUNC",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PIPE statement cannot be used in non-pipelined functions",
 | 
						|
      .str_user_error        = "PIPE statement cannot be used in non-pipelined functions",
 | 
						|
      .oracle_errno          = 629,
 | 
						|
      .oracle_str_error      = "PLS-00629: PIPE statement cannot be used in non-pipelined functions",
 | 
						|
      .oracle_str_user_error = "PLS-00629: PIPE statement cannot be used in non-pipelined functions"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IMPL_RESTRICTION = {
 | 
						|
      .error_name            = "OB_ERR_IMPL_RESTRICTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "implementation restriction (may be temporary)",
 | 
						|
      .str_user_error        = "implementation restriction (may be temporary) %s",
 | 
						|
      .oracle_errno          = 999,
 | 
						|
      .oracle_str_error      = "PLS-00999: implementation restriction (may be temporary)",
 | 
						|
      .oracle_str_user_error = "PLS-00999: implementation restriction (may be temporary) %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INSUFFICIENT_PRIVILEGE = {
 | 
						|
      .error_name            = "OB_ERR_INSUFFICIENT_PRIVILEGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "insufficient privilege to access object string",
 | 
						|
      .str_user_error        = "insufficient privilege to access object string",
 | 
						|
      .oracle_errno          = 904,
 | 
						|
      .oracle_str_error      = "PLS-00904: insufficient privilege to access object string",
 | 
						|
      .oracle_str_user_error = "PLS-00904: insufficient privilege to access object string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_OPTION = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_OPTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal option for subprogram string",
 | 
						|
      .str_user_error        = "illegal option for subprogram %.*s",
 | 
						|
      .oracle_errno          = 712,
 | 
						|
      .oracle_str_error      = "PLS-00712: illegal option for subprogram string",
 | 
						|
      .oracle_str_user_error = "PLS-00712: illegal option for subprogram %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_FUNCTION_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_NO_FUNCTION_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no function with name 'string' exists in this scope",
 | 
						|
      .str_user_error        = "no function with name '%.*s' exists in this scope",
 | 
						|
      .oracle_errno          = 222,
 | 
						|
      .oracle_str_error      = "PLS-00222: no function with name 'string' exists in this scope",
 | 
						|
      .oracle_str_user_error = "PLS-00222: no function with name '%.*s' exists in this scope"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_OUT_OF_SCOPE = {
 | 
						|
      .error_name            = "OB_ERR_OUT_OF_SCOPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subprogram or cursor 'string' reference is out of scope",
 | 
						|
      .str_user_error        = "subprogram or cursor '%.*s' reference is out of scope",
 | 
						|
      .oracle_errno          = 225,
 | 
						|
      .oracle_str_error      = "PLS-00225: subprogram or cursor 'string' reference is out of scope",
 | 
						|
      .oracle_str_user_error = "PLS-00225: subprogram or cursor '%.*s' reference is out of scope"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_ERROR_NUM = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_ERROR_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "illegal ORACLE error number string for PRAGMA EXCEPTION_INIT",
 | 
						|
      .str_user_error        = "illegal ORACLE error number %.*s for PRAGMA EXCEPTION_INIT",
 | 
						|
      .oracle_errno          = 701,
 | 
						|
      .oracle_str_error      = "PLS-00701: illegal ORACLE error number string for PRAGMA EXCEPTION_INIT",
 | 
						|
      .oracle_str_user_error = "PLS-00701: illegal ORACLE error number %.*s for PRAGMA EXCEPTION_INIT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DEFAULT_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ERR_DEFAULT_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "default value of parameter 'string' in body must match that of spec",
 | 
						|
      .str_user_error        = "default value of parameter '%.*s' in body must match that of spec",
 | 
						|
      .oracle_errno          = 593,
 | 
						|
      .oracle_str_error      = "PLS-00593: default value of parameter 'string' in body must match that of spec",
 | 
						|
      .oracle_str_user_error = "PLS-00593: default value of parameter '%.*s' in body must match that of spec"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TABLE_SINGLE_INDEX = {
 | 
						|
      .error_name            = "OB_ERR_TABLE_SINGLE_INDEX",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL TABLEs must use a single index",
 | 
						|
      .str_user_error        = "PL/SQL TABLEs must use a single index",
 | 
						|
      .oracle_errno          = 316,
 | 
						|
      .oracle_str_error      = "PLS-00316: PL/SQL TABLEs must use a single index",
 | 
						|
      .oracle_str_user_error = "PLS-00316: PL/SQL TABLEs must use a single index"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRAGMA_DECL = {
 | 
						|
      .error_name            = "OB_ERR_PRAGMA_DECL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "pragma string must be declared in package specification and body",
 | 
						|
      .str_user_error        = "pragma %.*s must be declared in package specification and body",
 | 
						|
      .oracle_errno          = 709,
 | 
						|
      .oracle_str_error      = "PLS-00709: pragma string must be declared in package specification and body",
 | 
						|
      .oracle_str_user_error = "PLS-00709: pragma %.*s must be declared in package specification and body"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INCORRECT_ARGUMENTS = {
 | 
						|
      .error_name            = "OB_ERR_INCORRECT_ARGUMENTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "incorrect number of arguments for aggregate function",
 | 
						|
      .str_user_error        = "incorrect number of arguments for aggregate function",
 | 
						|
      .oracle_errno          = 652,
 | 
						|
      .oracle_str_error      = "PLS-00652: incorrect number of arguments for aggregate function",
 | 
						|
      .oracle_str_user_error = "PLS-00652: incorrect number of arguments for aggregate function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RETURN_VALUE_REQUIRED = {
 | 
						|
      .error_name            = "OB_ERR_RETURN_VALUE_REQUIRED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RETURN <value> statement required for this return from function",
 | 
						|
      .str_user_error        = "RETURN <value> statement required for this return from function",
 | 
						|
      .oracle_errno          = 503,
 | 
						|
      .oracle_str_error      = "PLS-00503: RETURN value statement required for this return from function",
 | 
						|
      .oracle_str_user_error = "PLS-00503: RETURN value statement required for this return from function"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RETURN_EXPR_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_RETURN_EXPR_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RETURN statement in a pipelined function cannot contain an expression",
 | 
						|
      .str_user_error        = "RETURN statement in a pipelined function cannot contain an expression",
 | 
						|
      .oracle_errno          = 633,
 | 
						|
      .oracle_str_error      = "PLS-00633: RETURN statement in a pipelined function cannot contain an expression",
 | 
						|
      .oracle_str_user_error = "PLS-00633: RETURN statement in a pipelined function cannot contain an expression"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_LIMIT_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_LIMIT_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "A LIMIT clause must be used within a BULK FETCH",
 | 
						|
      .str_user_error        = "A LIMIT clause must be used within a BULK FETCH",
 | 
						|
      .oracle_errno          = 439,
 | 
						|
      .oracle_str_error      = "PLS-00439: A LIMIT clause must be used within a BULK FETCH",
 | 
						|
      .oracle_str_user_error = "PLS-00439: A LIMIT clause must be used within a BULK FETCH"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INTO_EXPR_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_INTO_EXPR_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expression 'string' in the INTO list is of wrong type",
 | 
						|
      .str_user_error        = "expression '%.*s' in the INTO list is of wrong type",
 | 
						|
      .oracle_errno          = 597,
 | 
						|
      .oracle_str_error      = "PLS-00597: expression 'string' in the INTO list is of wrong type",
 | 
						|
      .oracle_str_user_error = "PLS-00597: expression '%.*s' in the INTO list is of wrong type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BULK_SQL_RESTRICTION = {
 | 
						|
      .error_name            = "OB_ERR_BULK_SQL_RESTRICTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Implementation restriction: bulk SQL with associative arrays with VARCHAR2 key is not supported.",
 | 
						|
      .str_user_error        = "Implementation restriction: bulk SQL with associative arrays with VARCHAR2 key is not supported.",
 | 
						|
      .oracle_errno          = 657,
 | 
						|
      .oracle_str_error      = "PLS-00657: Implementation restriction: bulk SQL with associative arrays with VARCHAR2 key is not supported.",
 | 
						|
      .oracle_str_user_error = "PLS-00657: Implementation restriction: bulk SQL with associative arrays with VARCHAR2 key is not supported."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MIX_SINGLE_MULTI = {
 | 
						|
      .error_name            = "OB_ERR_MIX_SINGLE_MULTI",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot mix between single row and multi-row (BULK) in INTO list",
 | 
						|
      .str_user_error        = "cannot mix between single row and multi-row (BULK) in INTO list",
 | 
						|
      .oracle_errno          = 497,
 | 
						|
      .oracle_str_error      = "PLS-00497: cannot mix between single row and multi-row (BULK) in INTO list",
 | 
						|
      .oracle_str_user_error = "PLS-00497: cannot mix between single row and multi-row (BULK) in INTO list"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_NO_SUCH_ROW = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_NO_SUCH_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_TRG_NO_SUCH_ROW_IN_TRG,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "There is no NEW/OLD row in on this type trigger",
 | 
						|
      .str_user_error        = "There is no %s row in on %s trigger",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9640, There is no NEW/OLD row in on this type trigger",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9640, There is no %s row in on %s trigger"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SET_USAGE = {
 | 
						|
      .error_name            = "OB_ERR_SET_USAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_WRONG_USAGE,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Incorrect usage of UNION and INTO",
 | 
						|
      .str_user_error        = "Incorrect usage of UNION and INTO",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9641, Incorrect usage of UNION and INTO",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9641, Incorrect usage of UNION and INTO"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MODIFIER_CONFLICTS = {
 | 
						|
      .error_name            = "OB_ERR_MODIFIER_CONFLICTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "modifier 'string' conflicts with prior 'string' specification",
 | 
						|
      .str_user_error        = "modifier '%s' conflicts with prior '%s' specification",
 | 
						|
      .oracle_errno          = 169,
 | 
						|
      .oracle_str_error      = "PLS-00169: modifier 'string' conflicts with prior 'string' specification",
 | 
						|
      .oracle_str_user_error = "PLS-00169: modifier '%s' conflicts with prior '%s' specification"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_MODIFIER = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_MODIFIER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate modifier specification 'string'",
 | 
						|
      .str_user_error        = "duplicate modifier specification '%s'",
 | 
						|
      .oracle_errno          = 168,
 | 
						|
      .oracle_str_error      = "PLS-00168: duplicate modifier specification 'string'",
 | 
						|
      .oracle_str_user_error = "PLS-00168: duplicate modifier specification '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STR_LITERAL_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_STR_LITERAL_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "string literal too long",
 | 
						|
      .str_user_error        = "string literal too long",
 | 
						|
      .oracle_errno          = 172,
 | 
						|
      .oracle_str_error      = "PLS-00172: string literal too long",
 | 
						|
      .oracle_str_user_error = "PLS-00172: string literal too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SELF_PARAM_NOT_INOUT = {
 | 
						|
      .error_name            = "OB_ERR_SELF_PARAM_NOT_INOUT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "SELF parameter of constructor method must be IN OUT",
 | 
						|
      .str_user_error        = "SELF parameter of constructor method must be IN OUT",
 | 
						|
      .oracle_errno          = 660,
 | 
						|
      .oracle_str_error      = "PLS-00660: SELF parameter of constructor method must be IN OUT",
 | 
						|
      .oracle_str_user_error = "PLS-00660: SELF parameter of constructor method must be IN OUT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CONSTRUCT_MUST_RETURN_SELF = {
 | 
						|
      .error_name            = "OB_ERR_CONSTRUCT_MUST_RETURN_SELF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "constructor method must return SELF AS RESULT",
 | 
						|
      .str_user_error        = "constructor method must return SELF AS RESULT",
 | 
						|
      .oracle_errno          = 659,
 | 
						|
      .oracle_str_error      = "PLS-00659: constructor method must return SELF AS RESULT",
 | 
						|
      .oracle_str_user_error = "PLS-00659: constructor method must return SELF AS RESULT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FIRST_PARAM_MUST_NOT_NULL = {
 | 
						|
      .error_name            = "OB_ERR_FIRST_PARAM_MUST_NOT_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "the first operand in the NULLIF expression must not be NULL",
 | 
						|
      .str_user_error        = "the first operand in the NULLIF expression must not be NULL",
 | 
						|
      .oracle_errno          = 619,
 | 
						|
      .oracle_str_error      = "PLS-00619: the first operand in the NULLIF expression must not be NULL",
 | 
						|
      .oracle_str_user_error = "PLS-00619: the first operand in the NULLIF expression must not be NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COALESCE_AT_LEAST_ONE_NOT_NULL = {
 | 
						|
      .error_name            = "OB_ERR_COALESCE_AT_LEAST_ONE_NOT_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "at least one operand in the COALESCE expression must not be NULL",
 | 
						|
      .str_user_error        = "at least one operand in the COALESCE expression must not be NULL",
 | 
						|
      .oracle_errno          = 621,
 | 
						|
      .oracle_str_error      = "PLS-00621: at least one operand in the COALESCE expression must not be NULL",
 | 
						|
      .oracle_str_user_error = "PLS-00621: at least one operand in the COALESCE expression must not be NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STATIC_METHOD_HAS_SELF = {
 | 
						|
      .error_name            = "OB_ERR_STATIC_METHOD_HAS_SELF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a static method cannot declare a parameter named SELF",
 | 
						|
      .str_user_error        = "a static method cannot declare a parameter named SELF",
 | 
						|
      .oracle_errno          = 586,
 | 
						|
      .oracle_str_error      = "PLS-00586: a static method cannot declare a parameter named SELF",
 | 
						|
      .oracle_str_user_error = "PLS-00586: a static method cannot declare a parameter named SELF"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NO_ATTR_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_NO_ATTR_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no attributes found in object type 'string'",
 | 
						|
      .str_user_error        = "no attributes found in object type '%.*s'",
 | 
						|
      .oracle_errno          = 589,
 | 
						|
      .oracle_str_error      = "PLS-00589: no attributes found in object type 'string'",
 | 
						|
      .oracle_str_user_error = "PLS-00589: no attributes found in object type '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_ILLEGAL_TYPE_FOR_OBJECT = {
 | 
						|
      .error_name            = "OB_ERR_ILLEGAL_TYPE_FOR_OBJECT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal type used for object type attribute: 'string'.",
 | 
						|
      .str_user_error        = "Illegal type used for object type attribute: '%.*s'.",
 | 
						|
      .oracle_errno          = 530,
 | 
						|
      .oracle_str_error      = "PLS-00530: Illegal type used for object type attribute: 'string'.",
 | 
						|
      .oracle_str_user_error = "PLS-00530: Illegal type used for object type attribute: '%.*s'."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNSUPPORTED_TYPE = {
 | 
						|
      .error_name            = "OB_ERR_UNSUPPORTED_TYPE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Unsupported type in a VARRAY or TABLE type: 'string'.",
 | 
						|
      .str_user_error        = "Unsupported type in a VARRAY or TABLE type: '%.*s'.",
 | 
						|
      .oracle_errno          = 531,
 | 
						|
      .oracle_str_error      = "PLS-00531: Unsupported type in a VARRAY or TABLE type: 'string'.",
 | 
						|
      .oracle_str_user_error = "PLS-00531: Unsupported type in a VARRAY or TABLE type: '%.*s'."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_POSITIONAL_FOLLOW_NAME = {
 | 
						|
      .error_name            = "OB_ERR_POSITIONAL_FOLLOW_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "a positional parameter association may not follow a named association",
 | 
						|
      .str_user_error        = "a positional parameter association may not follow a named association",
 | 
						|
      .oracle_errno          = 312,
 | 
						|
      .oracle_str_error      = "PLS-00312: a positional parameter association may not follow a named association",
 | 
						|
      .oracle_str_user_error = "PLS-00312: a positional parameter association may not follow a named association"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NEED_A_LABEL = {
 | 
						|
      .error_name            = "OB_ERR_NEED_A_LABEL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "EXIT/CONTINUE statement may have a label here; 'string' is not a label",
 | 
						|
      .str_user_error        = "EXIT/CONTINUE statement may have a label here; '%.*s' is not a label",
 | 
						|
      .oracle_errno          = 441,
 | 
						|
      .oracle_str_error      = "PLS-00441: EXIT/CONTINUE statement may have a label here; 'string' is not a label",
 | 
						|
      .oracle_str_user_error = "PLS-00441: EXIT/CONTINUE statement may have a label here; '%.*s' is not a label"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REFER_SAME_PACKAGE = {
 | 
						|
      .error_name            = "OB_ERR_REFER_SAME_PACKAGE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "variable or constant initialization may not refer to functions declared in the same package",
 | 
						|
      .str_user_error        = "variable or constant initialization may not refer to functions declared in the same package",
 | 
						|
      .oracle_errno          = 492,
 | 
						|
      .oracle_str_error      = "PLS-00492: variable or constant initialization may not refer to functions declared in the same package",
 | 
						|
      .oracle_str_user_error = "PLS-00492: variable or constant initialization may not refer to functions declared in the same package"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PL_COMMON = {
 | 
						|
      .error_name            = "OB_ERR_PL_COMMON",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "PL/SQL common error",
 | 
						|
      .str_user_error        = "%s",
 | 
						|
      .oracle_errno          = 1,
 | 
						|
      .oracle_str_error      = "PLS-00001: PL/SQL common error",
 | 
						|
      .oracle_str_user_error = "PLS-00001: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_IDENT_EMPTY = {
 | 
						|
      .error_name            = "OB_ERR_IDENT_EMPTY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Identifier cannot be an empty string",
 | 
						|
      .str_user_error        = "Identifier cannot be an empty string",
 | 
						|
      .oracle_errno          = 182,
 | 
						|
      .oracle_str_error      = "PLS-00182: Identifier cannot be an empty string",
 | 
						|
      .oracle_str_user_error = "PLS-00182: Identifier cannot be an empty string"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRAGMA_STR_UNSUPPORT = {
 | 
						|
      .error_name            = "OB_ERR_PRAGMA_STR_UNSUPPORT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Pragma string does not support string",
 | 
						|
      .str_user_error        = "Pragma %s does not support %.*s",
 | 
						|
      .oracle_errno          = 132,
 | 
						|
      .oracle_str_error      = "PLS-00132: Pragma string does not support string",
 | 
						|
      .oracle_str_user_error = "PLS-00132: Pragma %s does not support %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_END_LABEL_NOT_MATCH = {
 | 
						|
      .error_name            = "OB_ERR_END_LABEL_NOT_MATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "END identifier 'string' must match 'string' at line string, column string",
 | 
						|
      .str_user_error        = "END identifier '%.*s' must match '%.*s'",
 | 
						|
      .oracle_errno          = 113,
 | 
						|
      .oracle_str_error      = "PLS-00113: END identifier 'string' must match 'string' at line string, column string",
 | 
						|
      .oracle_str_user_error = "PLS-00113: END identifier '%.*s' must match '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_FETCH_INTO_NUM = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_FETCH_INTO_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "wrong number of values in the INTO list of a FETCH statement",
 | 
						|
      .str_user_error        = "wrong number of values in the INTO list of a FETCH statement",
 | 
						|
      .oracle_errno          = 394,
 | 
						|
      .oracle_str_error      = "PLS-00394: wrong number of values in the INTO list of a FETCH statement",
 | 
						|
      .oracle_str_user_error = "PLS-00394: wrong number of values in the INTO list of a FETCH statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRAGMA_FIRST_ARG = {
 | 
						|
      .error_name            = "OB_ERR_PRAGMA_FIRST_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Pragma string expects 1st argument to be a procedure/function/package/cursor",
 | 
						|
      .str_user_error        = "Pragma %s expects 1st argument to be a procedure/function/package/cursor",
 | 
						|
      .oracle_errno          = 130,
 | 
						|
      .oracle_str_error      = "PLS-00130: Pragma string expects 1st argument to be a procedure/function/package/cursor",
 | 
						|
      .oracle_str_user_error = "PLS-00130: Pragma %s expects 1st argument to be a procedure/function/package/cursor"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_CANT_CHANGE_OLD_ROW = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_CANT_CHANGE_OLD_ROW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot change the value of an OLD reference variable",
 | 
						|
      .str_user_error        = "cannot change the value of an OLD reference variable",
 | 
						|
      .oracle_errno          = 4085,
 | 
						|
      .oracle_str_error      = "ORA-04085: cannot change the value of an OLD reference variable",
 | 
						|
      .oracle_str_user_error = "ORA-04085: cannot change the value of an OLD reference variable"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_CANT_CRT_ON_RO_VIEW = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_CANT_CRT_ON_RO_VIEW",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot create trigger on read only view",
 | 
						|
      .str_user_error        = "cannot create trigger on read only view",
 | 
						|
      .oracle_errno          = 25005,
 | 
						|
      .oracle_str_error      = "ORA-25005: cannot CREATE INSTEAD OF trigger on a read-only view",
 | 
						|
      .oracle_str_user_error = "ORA-25005: cannot CREATE INSTEAD OF trigger on a read-only view"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRIGGER_INVALID_REF_NAME = {
 | 
						|
      .error_name            = "OB_ERR_TRIGGER_INVALID_REF_NAME",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid REFERENCING name",
 | 
						|
      .str_user_error        = "invalid REFERENCING name",
 | 
						|
      .oracle_errno          = 4074,
 | 
						|
      .oracle_str_error      = "ORA-04074: invalid REFERENCING name",
 | 
						|
      .oracle_str_user_error = "ORA-04074: invalid REFERENCING name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EXP_NOT_INTO_TARGET = {
 | 
						|
      .error_name            = "OB_ERR_EXP_NOT_INTO_TARGET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "expression 'string' cannot be used as an INTO-target of a SELECT/FETCH statement",
 | 
						|
      .str_user_error        = "expression '%.*s' cannot be used as an INTO-target of a SELECT/FETCH statement",
 | 
						|
      .oracle_errno          = 403,
 | 
						|
      .oracle_str_error      = "PLS-00403: expression 'string' cannot be used as an INTO-target of a SELECT/FETCH statement",
 | 
						|
      .oracle_str_user_error = "PLS-00403: expression '%.*s' cannot be used as an INTO-target of a SELECT/FETCH statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CASE_NULL = {
 | 
						|
      .error_name            = "OB_ERR_CASE_NULL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "at least one result in the CASE expression must not be NULL",
 | 
						|
      .str_user_error        = "at least one result in the CASE expression must not be NULL",
 | 
						|
      .oracle_errno          = 617,
 | 
						|
      .oracle_str_error      = "PLS-00617: at least one result in the CASE expression must not be NULL",
 | 
						|
      .oracle_str_user_error = "PLS-00617: at least one result in the CASE expression must not be NULL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_GOTO = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_GOTO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid GOTO to non-label 'string'",
 | 
						|
      .str_user_error        = "Invalid GOTO to non-label '%.*s'",
 | 
						|
      .oracle_errno          = 301,
 | 
						|
      .oracle_str_error      = "PLS-00301: Invalid GOTO to non-label 'string'",
 | 
						|
      .oracle_str_user_error = "PLS-00301: Invalid GOTO to non-label '%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PRIVATE_UDF_USE_IN_SQL = {
 | 
						|
      .error_name            = "OB_ERR_PRIVATE_UDF_USE_IN_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "function 'string' may not be used in SQL",
 | 
						|
      .str_user_error        = "function '%.*s' may not be used in SQL",
 | 
						|
      .oracle_errno          = 231,
 | 
						|
      .oracle_str_error      = "PLS-00231: function 'string' may not be used in SQL",
 | 
						|
      .oracle_str_user_error = "PLS-00231: function '%.*s' may not be used in SQL"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FIELD_NOT_DENOTABLE = {
 | 
						|
      .error_name            = "OB_ERR_FIELD_NOT_DENOTABLE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "field string is not yet denotable",
 | 
						|
      .str_user_error        = "field %.*s is not yet denotable",
 | 
						|
      .oracle_errno          = 742,
 | 
						|
      .oracle_str_error      = "PLS-00742: field string is not yet denotable",
 | 
						|
      .oracle_str_user_error = "PLS-00742: field %.*s is not yet denotable"
 | 
						|
};
 | 
						|
static const _error _error_OB_NUMERIC_PRECISION_NOT_INTEGER = {
 | 
						|
      .error_name            = "OB_NUMERIC_PRECISION_NOT_INTEGER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "non-integral numeric literal value is inappropriate in this context",
 | 
						|
      .str_user_error        = "non-integral numeric literal %.*s is inappropriate in this context",
 | 
						|
      .oracle_errno          = 325,
 | 
						|
      .oracle_str_error      = "PLS-00325: non-integral numeric literal value is inappropriate in this context",
 | 
						|
      .oracle_str_user_error = "PLS-00325: non-integral numeric literal %.*s is inappropriate in this context"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REQUIRE_INTEGER = {
 | 
						|
      .error_name            = "OB_ERR_REQUIRE_INTEGER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "integer value required",
 | 
						|
      .str_user_error        = "integer value required",
 | 
						|
      .oracle_errno          = 02017,
 | 
						|
      .oracle_str_error      = "ORA-02017: integer value required",
 | 
						|
      .oracle_str_user_error = "ORA-02017: integer value required"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INDEX_TABLE_OF_CURSOR = {
 | 
						|
      .error_name            = "OB_ERR_INDEX_TABLE_OF_CURSOR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Index Tables of Cursor Variables are disallowed",
 | 
						|
      .str_user_error        = "Index Tables of Cursor Variables are disallowed",
 | 
						|
      .oracle_errno          = 990,
 | 
						|
      .oracle_str_error      = "PLS-00990: Index Tables of Cursor Variables are disallowed",
 | 
						|
      .oracle_str_user_error = "PLS-00990: Index Tables of Cursor Variables are disallowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NULL_CHECK_ERROR = {
 | 
						|
      .error_name            = "OB_NULL_CHECK_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot pass NULL to a NOT NULL constrained formal parameter",
 | 
						|
      .str_user_error        = "cannot pass NULL to a NOT NULL constrained formal parameter",
 | 
						|
      .oracle_errno          = 567,
 | 
						|
      .oracle_str_error      = "PLS-00567: cannot pass NULL to a NOT NULL constrained formal parameter",
 | 
						|
      .oracle_str_user_error = "PLS-00567: cannot pass NULL to a NOT NULL constrained formal parameter"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EX_NAME_ARG = {
 | 
						|
      .error_name            = "OB_ERR_EX_NAME_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "name of exception expected for first arg in exception_init pragma",
 | 
						|
      .str_user_error        = "name of exception expected for first arg in exception_init pragma",
 | 
						|
      .oracle_errno          = 124,
 | 
						|
      .oracle_str_error      = "PLS-00124: name of exception expected for first arg in exception_init pragma",
 | 
						|
      .oracle_str_user_error = "PLS-00124: name of exception expected for first arg in exception_init pragma"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EX_ARG_NUM = {
 | 
						|
      .error_name            = "OB_ERR_EX_ARG_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Illegal number of arguments for pragma EXCEPTION_INIT",
 | 
						|
      .str_user_error        = "Illegal number of arguments for pragma EXCEPTION_INIT",
 | 
						|
      .oracle_errno          = 128,
 | 
						|
      .oracle_str_error      = "PLS-00128: Illegal number of arguments for pragma EXCEPTION_INIT",
 | 
						|
      .oracle_str_user_error = "PLS-00128: Illegal number of arguments for pragma EXCEPTION_INIT"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_EX_SECOND_ARG = {
 | 
						|
      .error_name            = "OB_ERR_EX_SECOND_ARG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "second argument to PRAGMA EXCEPTION_INIT must be a numeric literal",
 | 
						|
      .str_user_error        = "second argument to PRAGMA EXCEPTION_INIT must be a numeric literal",
 | 
						|
      .oracle_errno          = 702,
 | 
						|
      .oracle_str_error      = "PLS-00702: second argument to PRAGMA EXCEPTION_INIT must be a numeric literal",
 | 
						|
      .oracle_str_user_error = "PLS-00702: second argument to PRAGMA EXCEPTION_INIT must be a numeric literal"
 | 
						|
};
 | 
						|
static const _error _error_OB_OBEN_CURSOR_NUMBER_IS_ZERO = {
 | 
						|
      .error_name            = "OB_OBEN_CURSOR_NUMBER_IS_ZERO",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "DBMS_SQL.OPEN_CURSOR failed. security_level of 0 is not allowed",
 | 
						|
      .str_user_error        = "DBMS_SQL.OPEN_CURSOR failed. security_level of 0 is not allowed",
 | 
						|
      .oracle_errno          = 29474,
 | 
						|
      .oracle_str_error      = "ORA-29474: DBMS_SQL.OPEN_CURSOR failed. security_level of 0 is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-29474: DBMS_SQL.OPEN_CURSOR failed. security_level of 0 is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_NO_STMT_PARSE = {
 | 
						|
      .error_name            = "OB_NO_STMT_PARSE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "no statement parsed",
 | 
						|
      .str_user_error        = "no statement parsed",
 | 
						|
      .oracle_errno          = 01003,
 | 
						|
      .oracle_str_error      = "ORA-01003: no statement parsed",
 | 
						|
      .oracle_str_user_error = "ORA-01003: no statement parsed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ARRAY_CNT_IS_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ARRAY_CNT_IS_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid count argument passed to procedure dbms_sql.define_array",
 | 
						|
      .str_user_error        = "Invalid count argument passed to procedure dbms_sql.define_array",
 | 
						|
      .oracle_errno          = 29253,
 | 
						|
      .oracle_str_error      = "ORA-29253: Invalid count argument passed to procedure dbms_sql.define_array",
 | 
						|
      .oracle_str_user_error = "ORA-29253: Invalid count argument passed to procedure dbms_sql.define_array"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_WRONG_SCHEMA_REF = {
 | 
						|
      .error_name            = "OB_ERR_WRONG_SCHEMA_REF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Table,View Or Sequence reference not allowed in this context",
 | 
						|
      .str_user_error        = "Table,View Or Sequence reference not '%s%s%s%s%s' allowed in this context",
 | 
						|
      .oracle_errno          = 357,
 | 
						|
      .oracle_str_error      = "PLS-00357: Table,View Or Sequence reference not allowed in this context",
 | 
						|
      .oracle_str_user_error = "PLS-00357: Table,View Or Sequence reference '%s%s%s%s%s' not allowed in this context"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_COMPONENT_UNDECLARED = {
 | 
						|
      .error_name            = "OB_ERR_COMPONENT_UNDECLARED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "component must be declared",
 | 
						|
      .str_user_error        = "component '%.*s' must be declared",
 | 
						|
      .oracle_errno          = 302,
 | 
						|
      .oracle_str_error      = "PLS-00302: component must be declared",
 | 
						|
      .oracle_str_user_error = "PLS-00302: component '%.*s' must be declared"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FUNC_ONLY_IN_SQL = {
 | 
						|
      .error_name            = "OB_ERR_FUNC_ONLY_IN_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "function or pseudo-column may be used inside a SQL statement only",
 | 
						|
      .str_user_error        = "function or pseudo-column '%s' may be used inside a SQL statement only",
 | 
						|
      .oracle_errno          = 204,
 | 
						|
      .oracle_str_error      = "PLS-00204: function or pseudo-column may be used inside a SQL statement only",
 | 
						|
      .oracle_str_user_error = "PLS-00204: function or pseudo-column '%s' may be used inside a SQL statement only"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UNDEFINED = {
 | 
						|
      .error_name            = "OB_ERR_UNDEFINED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "object is not a procedure or is undefined",
 | 
						|
      .str_user_error        = "'%s' is not a procedure or is undefined",
 | 
						|
      .oracle_errno          = 221,
 | 
						|
      .oracle_str_error      = "PLS-00221: object is not a procedure or is undefined",
 | 
						|
      .oracle_str_user_error = "PLS-00221: '%s' is not a procedure or is undefined"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SUBTYPE_NOTNULL_MISMATCH = {
 | 
						|
      .error_name            = "OB_ERR_SUBTYPE_NOTNULL_MISMATCH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "subtype of a not null type must also be not null",
 | 
						|
      .str_user_error        = "subtype of a not null type must also be not null",
 | 
						|
      .oracle_errno          = 366,
 | 
						|
      .oracle_str_error      = "PLS-00366: subtype of a not null type must also be not null",
 | 
						|
      .oracle_str_user_error = "PLS-00366: subtype of a not null type must also be not null"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_BIND_VAR_NOT_EXIST = {
 | 
						|
      .error_name            = "OB_ERR_BIND_VAR_NOT_EXIST",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "bind variable does not exist",
 | 
						|
      .str_user_error        = "bind variable does not exist",
 | 
						|
      .oracle_errno          = 1006,
 | 
						|
      .oracle_str_error      = "ORA-01006: bind variable does not exist",
 | 
						|
      .oracle_str_user_error = "ORA-01006: bind variable does not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CURSOR_IN_OPEN_DYNAMIC_SQL = {
 | 
						|
      .error_name            = "OB_ERR_CURSOR_IN_OPEN_DYNAMIC_SQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cursor cannot be used in dynamic SQL OPEN statement",
 | 
						|
      .str_user_error        = "cursor '%.*s' cannot be used in dynamic SQL OPEN statement",
 | 
						|
      .oracle_errno          = 455,
 | 
						|
      .oracle_str_error      = "PLS-00455: cursor cannot be used in dynamic SQL OPEN statement",
 | 
						|
      .oracle_str_user_error = "PLS-00455: cursor '%.*s' cannot be used in dynamic SQL OPEN statement"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_INPUT_ARGUMENT = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_INPUT_ARGUMENT",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "input value for argument",
 | 
						|
      .str_user_error        = "input value for argument #%d is not valid",
 | 
						|
      .oracle_errno          = 28106,
 | 
						|
      .oracle_str_error      = "ORA-28106: input value for argument",
 | 
						|
      .oracle_str_user_error = "ORA-28106: input value for argument #%d is not valid"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CLIENT_IDENTIFIER_TOO_LONG = {
 | 
						|
      .error_name            = "OB_ERR_CLIENT_IDENTIFIER_TOO_LONG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Client identifier is too long",
 | 
						|
      .str_user_error        = "Client identifier is too long",
 | 
						|
      .oracle_errno          = 28264,
 | 
						|
      .oracle_str_error      = "ORA-28264: Client identifier is too long",
 | 
						|
      .oracle_str_user_error = "ORA-28264: Client identifier is too long"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_NAMESPACE_VALUE = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_NAMESPACE_VALUE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Invalid NameSpace Value",
 | 
						|
      .str_user_error        = "Invalid NameSpace Value",
 | 
						|
      .oracle_errno          = 28267,
 | 
						|
      .oracle_str_error      = "ORA-28267: Invalid NameSpace Value",
 | 
						|
      .oracle_str_user_error = "ORA-28267: Invalid NameSpace Value"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_NAMESPACE_BEG = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_NAMESPACE_BEG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Namespace beginning with 'SYS_' is not allowed",
 | 
						|
      .str_user_error        = "Namespace beginning with 'SYS_' is not allowed",
 | 
						|
      .oracle_errno          = 28265,
 | 
						|
      .oracle_str_error      = "ORA-28265: Namespace beginning with 'SYS_' is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-28265: Namespace beginning with 'SYS_' is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SESSION_CONTEXT_EXCEEDED = {
 | 
						|
      .error_name            = "OB_ERR_SESSION_CONTEXT_EXCEEDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The maximum size specified by the _session_context_size parameter was exceeded.",
 | 
						|
      .str_user_error        = "The maximum size specified by the _session_context_size parameter was exceeded.",
 | 
						|
      .oracle_errno          = 28268,
 | 
						|
      .oracle_str_error      = "ORA-28268: The maximum size specified by the _session_context_size parameter was exceeded.",
 | 
						|
      .oracle_str_user_error = "ORA-28268: The maximum size specified by the _session_context_size parameter was exceeded."
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_CURSOR_NAME_IN_CURRENT_OF = {
 | 
						|
      .error_name            = "OB_ERR_NOT_CURSOR_NAME_IN_CURRENT_OF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "identifier in CURRENT OF clause is not a cursor name",
 | 
						|
      .str_user_error        = "identifier in CURRENT OF clause is not a cursor name",
 | 
						|
      .oracle_errno          = 413,
 | 
						|
      .oracle_str_error      = "PLS-00413: identifier in CURRENT OF clause is not a cursor name",
 | 
						|
      .oracle_str_user_error = "PLS-00413: identifier in CURRENT OF clause is not a cursor name"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NOT_FOR_UPDATE_CURSOR_IN_CURRENT_OF = {
 | 
						|
      .error_name            = "OB_ERR_NOT_FOR_UPDATE_CURSOR_IN_CURRENT_OF",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cursor must be declared with FOR UPDATE to use with CURRENT OF",
 | 
						|
      .str_user_error        = "cursor '%.*s' must be declared with FOR UPDATE to use with CURRENT OF",
 | 
						|
      .oracle_errno          = 404,
 | 
						|
      .oracle_str_error      = "PLS-00404: cursor must be declared with FOR UPDATE to use with CURRENT OF",
 | 
						|
      .oracle_str_user_error = "PLS-00404: cursor '%.*s' must be declared with FOR UPDATE to use with CURRENT OF"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUP_SIGNAL_SET = {
 | 
						|
      .error_name            = "OB_ERR_DUP_SIGNAL_SET",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DUP_SIGNAL_SET,
 | 
						|
      .sqlstate              = "42000",
 | 
						|
      .str_error             = "Duplicate condition information item",
 | 
						|
      .str_user_error        = "Duplicate condition information item '%s'",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9694, Duplicate condition information item",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9694, Duplicate condition information item '%s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SIGNAL_NOT_FOUND = {
 | 
						|
      .error_name            = "OB_ERR_SIGNAL_NOT_FOUND",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SIGNAL_NOT_FOUND,
 | 
						|
      .sqlstate              = "02000",
 | 
						|
      .str_error             = "Unhandled user-defined not found condition",
 | 
						|
      .str_user_error        = "Unhandled user-defined not found condition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9695, Unhandled user-defined not found condition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9695, Unhandled user-defined not found condition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_CONDITION_NUMBER = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_CONDITION_NUMBER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_DA_INVALID_CONDITION_NUMBER,
 | 
						|
      .sqlstate              = "35000",
 | 
						|
      .str_error             = "Invalid condition number",
 | 
						|
      .str_user_error        = "Invalid condition number",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9696, Invalid condition number",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9696, Invalid condition number"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RECURSIVE_SQL_LEVELS_EXCEEDED = {
 | 
						|
      .error_name            = "OB_ERR_RECURSIVE_SQL_LEVELS_EXCEEDED",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "maximum number of recursive SQL levels exceeded",
 | 
						|
      .str_user_error        = "maximum number of recursive SQL levels exceeded",
 | 
						|
      .oracle_errno          = 36,
 | 
						|
      .oracle_str_error      = "ORA-00036: maximum number of recursive SQL levels (%ld) exceeded",
 | 
						|
      .oracle_str_user_error = "ORA-00036: maximum number of recursive SQL levels (%ld) exceeded"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_INVALID_SECTION = {
 | 
						|
      .error_name            = "OB_ERR_INVALID_SECTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "invalid section for this type of Compound Trigger",
 | 
						|
      .str_user_error        = "invalid section for this type of Compound Trigger",
 | 
						|
      .oracle_errno          = 675,
 | 
						|
      .oracle_str_error      = "PLS-00675: invalid section for this type of Compound Trigger",
 | 
						|
      .oracle_str_user_error = "PLS-00675: invalid section for this type of Compound Trigger"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_DUPLICATE_TRIGGER_SECTION = {
 | 
						|
      .error_name            = "OB_ERR_DUPLICATE_TRIGGER_SECTION",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "duplicate Compound Triggers section",
 | 
						|
      .str_user_error        = "duplicate Compound Triggers section",
 | 
						|
      .oracle_errno          = 676,
 | 
						|
      .oracle_str_error      = "PLS-00676: duplicate Compound Triggers section",
 | 
						|
      .oracle_str_user_error = "PLS-00676: duplicate Compound Triggers section"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_PARSE_PLSQL = {
 | 
						|
      .error_name            = "OB_ERR_PARSE_PLSQL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unexpected symbol",
 | 
						|
      .str_user_error        = "Encountered the symbol %s when expecting one of the following: %s",
 | 
						|
      .oracle_errno          = 103,
 | 
						|
      .oracle_str_error      = "PLS-00103: Encountered the symbol A when expecting one of the following: B",
 | 
						|
      .oracle_str_user_error = "PLS-00103: Encountered the symbol %s when expecting one of the following: %s"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SIGNAL_WARN = {
 | 
						|
      .error_name            = "OB_ERR_SIGNAL_WARN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_SIGNAL_WARN,
 | 
						|
      .sqlstate              = "01000",
 | 
						|
      .str_error             = "Unhandled user-defined warning condition",
 | 
						|
      .str_user_error        = "Unhandled user-defined warning condition",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9701, Unhandled user-defined warning condition",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9701, Unhandled user-defined warning condition"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_RESIGNAL_WITHOUT_ACTIVE_HANDLER = {
 | 
						|
      .error_name            = "OB_ERR_RESIGNAL_WITHOUT_ACTIVE_HANDLER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_RESIGNAL_WITHOUT_ACTIVE_HANDLER,
 | 
						|
      .sqlstate              = "0K000",
 | 
						|
      .str_error             = "RESIGNAL when handler not active",
 | 
						|
      .str_user_error        = "RESIGNAL when handler not active",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: internal error code, arguments: -9702, RESIGNAL when handler not active",
 | 
						|
      .oracle_str_user_error = "ORA-00600: internal error code, arguments: -9702, RESIGNAL when handler not active"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_UPDATE_VIRTUAL_COL_IN_TRG = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_UPDATE_VIRTUAL_COL_IN_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Virtual column cannot be updated in trigger body",
 | 
						|
      .str_user_error        = "Virtual column cannot be updated in trigger body",
 | 
						|
      .oracle_errno          = 54029,
 | 
						|
      .oracle_str_error      = "ORA-54029: Virtual column cannot be updated in trigger body",
 | 
						|
      .oracle_str_user_error = "ORA-54029: Virtual column cannot be updated in trigger body"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_TRG_ORDER = {
 | 
						|
      .error_name            = "OB_ERR_TRG_ORDER",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = ER_REFERENCED_TRIGGER_NOT_EXIST,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "must use LOG_USER_ERROR",
 | 
						|
      .str_user_error        = "Referenced trigger '%s' for the given action time and event type does not exist.",
 | 
						|
      .oracle_errno          = 600,
 | 
						|
      .oracle_str_error      = "ORA-00600: must use LOG_USER_ERROR",
 | 
						|
      .oracle_str_user_error = "ORA-00600: Trigger %s referenced in FOLLOWS or PRECEDES clause may not exist"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REF_ANOTHER_TABLE_IN_TRG = {
 | 
						|
      .error_name            = "OB_ERR_REF_ANOTHER_TABLE_IN_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot reference a trigger defined on another table",
 | 
						|
      .str_user_error        = "cannot reference a trigger defined on another table",
 | 
						|
      .oracle_errno          = 25021,
 | 
						|
      .oracle_str_error      = "ORA-25021: cannot reference a trigger defined on another table",
 | 
						|
      .oracle_str_user_error = "ORA-25021: cannot reference a trigger defined on another table"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REF_TYPE_IN_TRG = {
 | 
						|
      .error_name            = "OB_ERR_REF_TYPE_IN_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot reference a trigger of a different type",
 | 
						|
      .str_user_error        = "cannot reference a trigger of a different type",
 | 
						|
      .oracle_errno          = 25022,
 | 
						|
      .oracle_str_error      = "ORA-25022: cannot reference a trigger of a different type",
 | 
						|
      .oracle_str_user_error = "ORA-25022: cannot reference a trigger of a different type"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_REF_CYCLIC_IN_TRG = {
 | 
						|
      .error_name            = "OB_ERR_REF_CYCLIC_IN_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Cyclic trigger dependency is not allowed",
 | 
						|
      .str_user_error        = "Cyclic trigger dependency is not allowed",
 | 
						|
      .oracle_errno          = 25023,
 | 
						|
      .oracle_str_error      = "ORA-25023: Cyclic trigger dependency is not allowed",
 | 
						|
      .oracle_str_user_error = "ORA-25023: Cyclic trigger dependency is not allowed"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_SPECIFY_PRECEDES_IN_TRG = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_SPECIFY_PRECEDES_IN_TRG",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot specify PRECEDES clause",
 | 
						|
      .str_user_error        = "cannot specify PRECEDES clause",
 | 
						|
      .oracle_errno          = 25025,
 | 
						|
      .oracle_str_error      = "ORA-25025: cannot specify PRECEDES clause",
 | 
						|
      .oracle_str_user_error = "ORA-25025: cannot specify PRECEDES clause"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_PERFORM_DML_INSIDE_QUERY = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_PERFORM_DML_INSIDE_QUERY",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot perform a DML operation inside a query",
 | 
						|
      .str_user_error        = "cannot perform a DML operation inside a query",
 | 
						|
      .oracle_errno          = 14551,
 | 
						|
      .oracle_str_error      = "ORA-14551: cannot perform a DML operation inside a query",
 | 
						|
      .oracle_str_user_error = "ORA-14551: cannot perform a DML operation inside a query"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CANNOT_PERFORM_DDL_COMMIT_OR_ROLLBACK_INSIDE_QUERY_OR_DML_TIPS = {
 | 
						|
      .error_name            = "OB_ERR_CANNOT_PERFORM_DDL_COMMIT_OR_ROLLBACK_INSIDE_QUERY_OR_DML_TIPS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "cannot perform a DDL commit or rollback inside a query or DML tips",
 | 
						|
      .str_user_error        = "cannot perform a DDL commit or rollback inside a query or DML tips",
 | 
						|
      .oracle_errno          = 14552,
 | 
						|
      .oracle_str_error      = "ORA-14552: cannot perform a DDL commit or rollback inside a query or DML tips",
 | 
						|
      .oracle_str_user_error = "ORA-14552: cannot perform a DDL commit or rollback inside a query or DML tips"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_STATEMENT_STRING_IN_EXECUTE_IMMEDIATE_IS_NULL_OR_ZERO_LENGTH = {
 | 
						|
      .error_name            = "OB_ERR_STATEMENT_STRING_IN_EXECUTE_IMMEDIATE_IS_NULL_OR_ZERO_LENGTH",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "statement string in EXECUTE IMMEDIATE is NULL or 0 length",
 | 
						|
      .str_user_error        = "statement string in EXECUTE IMMEDIATE is NULL or 0 length",
 | 
						|
      .oracle_errno          = 06535,
 | 
						|
      .oracle_str_error      = "ORA-06535: statement string in EXECUTE IMMEDIATE is NULL or 0 length",
 | 
						|
      .oracle_str_user_error = "ORA-06535: statement string in EXECUTE IMMEDIATE is NULL or 0 length"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_MISSING_INTO_KEYWORD = {
 | 
						|
      .error_name            = "OB_ERR_MISSING_INTO_KEYWORD",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "missing INTO keyword",
 | 
						|
      .str_user_error        = "missing INTO keyword",
 | 
						|
      .oracle_errno          = 925,
 | 
						|
      .oracle_str_error      = "ORA-00925: missing INTO keyword",
 | 
						|
      .oracle_str_user_error = "ORA-00925: missing INTO keyword"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_CLAUSE_RETURN_ILLEGAL = {
 | 
						|
      .error_name            = "OB_ERR_CLAUSE_RETURN_ILLEGAL",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "RETURNING clause must be used with INSERT, UPDATE, or DELETE statements",
 | 
						|
      .str_user_error        = "RETURNING clause must be used with INSERT, UPDATE, or DELETE statements",
 | 
						|
      .oracle_errno          = 6547,
 | 
						|
      .oracle_str_error      = "ORA-06547: RETURNING clause must be used with INSERT, UPDATE, or DELETE statements",
 | 
						|
      .oracle_str_user_error = "ORA-06547: RETURNING clause must be used with INSERT, UPDATE, or DELETE statements"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_NAME_HAS_TOO_MANY_PARTS = {
 | 
						|
      .error_name            = "OB_ERR_NAME_HAS_TOO_MANY_PARTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "name has too many parts",
 | 
						|
      .str_user_error        = "name has too many parts",
 | 
						|
      .oracle_errno          = 6563,
 | 
						|
      .oracle_str_error      = "ORA-06563: name has too many parts",
 | 
						|
      .oracle_str_user_error = "ORA-06563: name has too many parts"
 | 
						|
};
 | 
						|
static const _error _error_OB_SP_RAISE_APPLICATION_ERROR = {
 | 
						|
      .error_name            = "OB_SP_RAISE_APPLICATION_ERROR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "The stored procedure 'raise_application_error' was called which causes this error to be generated",
 | 
						|
      .str_user_error        = "%.*s",
 | 
						|
      .oracle_errno          = 20000,
 | 
						|
      .oracle_str_error      = "ORA-20000: The stored procedure 'raise_application_error' was called which causes this error to be generated",
 | 
						|
      .oracle_str_user_error = "ORA%06ld: %.*s"
 | 
						|
};
 | 
						|
static const _error _error_OB_SP_RAISE_APPLICATION_ERROR_NUM = {
 | 
						|
      .error_name            = "OB_SP_RAISE_APPLICATION_ERROR_NUM",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "error number argument to raise_application_error of stringstring is out of range",
 | 
						|
      .str_user_error        = "error number argument to raise_application_error of '%d' is out of range",
 | 
						|
      .oracle_errno          = 21000,
 | 
						|
      .oracle_str_error      = "ORA-21000: error number argument to raise_application_error of stringstring is out of range",
 | 
						|
      .oracle_str_user_error = "ORA-21000: error number argument to raise_application_error of '%d' is out of range"
 | 
						|
};
 | 
						|
static const _error _error_OB_CLOB_ONLY_SUPPORT_WITH_MULTIBYTE_FUN = {
 | 
						|
      .error_name            = "OB_CLOB_ONLY_SUPPORT_WITH_MULTIBYTE_FUN",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "CLOB or NCLOB in multibyte character set not supported",
 | 
						|
      .str_user_error        = "CLOB or NCLOB in multibyte character set not supported",
 | 
						|
      .oracle_errno          = 22998,
 | 
						|
      .oracle_str_error      = "ORA-22998: CLOB or NCLOB in multibyte character set not supported",
 | 
						|
      .oracle_str_user_error = "ORA-22998: CLOB or NCLOB in multibyte character set not supported"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_TWICE = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_TWICE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "unable to get a stable set of rows in the source tables",
 | 
						|
      .str_user_error        = "unable to get a stable set of rows in the source tables",
 | 
						|
      .oracle_errno          = 30926,
 | 
						|
      .oracle_str_error      = "ORA-30926: unable to get a stable set of rows in the source tables",
 | 
						|
      .oracle_str_user_error = "ORA-30926: unable to get a stable set of rows in the source tables"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_FLASHBACK_QUERY_WITH_UPDATE = {
 | 
						|
      .error_name            = "OB_ERR_FLASHBACK_QUERY_WITH_UPDATE",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "snapshot expression not allowed here",
 | 
						|
      .str_user_error        = "snapshot expression not allowed here",
 | 
						|
      .oracle_errno          = 8187,
 | 
						|
      .oracle_str_error      = "ORA-08187: snapshot expression not allowed here",
 | 
						|
      .oracle_str_user_error = "ORA-08187: snapshot expression not allowed here"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_UPDATE_ON_EXPR = {
 | 
						|
      .error_name            = "OB_ERR_UPDATE_ON_EXPR",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "Columns referenced in the ON Clause cannot be updated",
 | 
						|
      .str_user_error        = "Columns referenced in the ON Clause cannot be updated:'%.*s'.'%.*s'",
 | 
						|
      .oracle_errno          = 38104,
 | 
						|
      .oracle_str_error      = "ORA-38104: Columns referenced in the ON Clause cannot be updated",
 | 
						|
      .oracle_str_user_error = "ORA-38104: Columns referenced in the ON Clause cannot be updated:'%.*s'.'%.*s'"
 | 
						|
};
 | 
						|
static const _error _error_OB_ERR_SPECIFIED_ROW_NO_LONGER_EXISTS = {
 | 
						|
      .error_name            = "OB_ERR_SPECIFIED_ROW_NO_LONGER_EXISTS",
 | 
						|
      .error_cause           = "Internal Error",
 | 
						|
      .error_solution        = "Contact OceanBase Support",
 | 
						|
      .mysql_errno           = -1,
 | 
						|
      .sqlstate              = "HY000",
 | 
						|
      .str_error             = "specified row no longer exists",
 | 
						|
      .str_user_error        = "specified row no longer exists",
 | 
						|
      .oracle_errno          = 8006,
 | 
						|
      .oracle_str_error      = "ORA-08006: specified row no longer exists",
 | 
						|
      .oracle_str_user_error = "ORA-08006: specified row no longer exists"
 | 
						|
};
 | 
						|
 | 
						|
struct ObStrErrorInit
 | 
						|
{
 | 
						|
  ObStrErrorInit()
 | 
						|
  {
 | 
						|
    memset(&_error_default, 0, sizeof  _error_default);
 | 
						|
    for (int i = 0; i < OB_MAX_ERROR_CODE; ++i) {
 | 
						|
      _errors[i] = &_error_default;
 | 
						|
    }
 | 
						|
    _errors[-OB_ERROR] = &_error_OB_ERROR;
 | 
						|
    _errors[-OB_OBJ_TYPE_ERROR] = &_error_OB_OBJ_TYPE_ERROR;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT] = &_error_OB_INVALID_ARGUMENT;
 | 
						|
    _errors[-OB_ARRAY_OUT_OF_RANGE] = &_error_OB_ARRAY_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_SERVER_LISTEN_ERROR] = &_error_OB_SERVER_LISTEN_ERROR;
 | 
						|
    _errors[-OB_INIT_TWICE] = &_error_OB_INIT_TWICE;
 | 
						|
    _errors[-OB_NOT_INIT] = &_error_OB_NOT_INIT;
 | 
						|
    _errors[-OB_NOT_SUPPORTED] = &_error_OB_NOT_SUPPORTED;
 | 
						|
    _errors[-OB_ITER_END] = &_error_OB_ITER_END;
 | 
						|
    _errors[-OB_IO_ERROR] = &_error_OB_IO_ERROR;
 | 
						|
    _errors[-OB_ERROR_FUNC_VERSION] = &_error_OB_ERROR_FUNC_VERSION;
 | 
						|
    _errors[-OB_PACKET_NOT_SENT] = &_error_OB_PACKET_NOT_SENT;
 | 
						|
    _errors[-OB_TIMEOUT] = &_error_OB_TIMEOUT;
 | 
						|
    _errors[-OB_ALLOCATE_MEMORY_FAILED] = &_error_OB_ALLOCATE_MEMORY_FAILED;
 | 
						|
    _errors[-OB_INNER_STAT_ERROR] = &_error_OB_INNER_STAT_ERROR;
 | 
						|
    _errors[-OB_ERR_SYS] = &_error_OB_ERR_SYS;
 | 
						|
    _errors[-OB_ERR_UNEXPECTED] = &_error_OB_ERR_UNEXPECTED;
 | 
						|
    _errors[-OB_ENTRY_EXIST] = &_error_OB_ENTRY_EXIST;
 | 
						|
    _errors[-OB_ENTRY_NOT_EXIST] = &_error_OB_ENTRY_NOT_EXIST;
 | 
						|
    _errors[-OB_SIZE_OVERFLOW] = &_error_OB_SIZE_OVERFLOW;
 | 
						|
    _errors[-OB_REF_NUM_NOT_ZERO] = &_error_OB_REF_NUM_NOT_ZERO;
 | 
						|
    _errors[-OB_CONFLICT_VALUE] = &_error_OB_CONFLICT_VALUE;
 | 
						|
    _errors[-OB_ITEM_NOT_SETTED] = &_error_OB_ITEM_NOT_SETTED;
 | 
						|
    _errors[-OB_EAGAIN] = &_error_OB_EAGAIN;
 | 
						|
    _errors[-OB_BUF_NOT_ENOUGH] = &_error_OB_BUF_NOT_ENOUGH;
 | 
						|
    _errors[-OB_PARTIAL_FAILED] = &_error_OB_PARTIAL_FAILED;
 | 
						|
    _errors[-OB_READ_NOTHING] = &_error_OB_READ_NOTHING;
 | 
						|
    _errors[-OB_FILE_NOT_EXIST] = &_error_OB_FILE_NOT_EXIST;
 | 
						|
    _errors[-OB_DISCONTINUOUS_LOG] = &_error_OB_DISCONTINUOUS_LOG;
 | 
						|
    _errors[-OB_SCHEMA_ERROR] = &_error_OB_SCHEMA_ERROR;
 | 
						|
    _errors[-OB_TENANT_OUT_OF_MEM] = &_error_OB_TENANT_OUT_OF_MEM;
 | 
						|
    _errors[-OB_UNKNOWN_OBJ] = &_error_OB_UNKNOWN_OBJ;
 | 
						|
    _errors[-OB_NO_MONITOR_DATA] = &_error_OB_NO_MONITOR_DATA;
 | 
						|
    _errors[-OB_SERIALIZE_ERROR] = &_error_OB_SERIALIZE_ERROR;
 | 
						|
    _errors[-OB_DESERIALIZE_ERROR] = &_error_OB_DESERIALIZE_ERROR;
 | 
						|
    _errors[-OB_AIO_TIMEOUT] = &_error_OB_AIO_TIMEOUT;
 | 
						|
    _errors[-OB_NEED_RETRY] = &_error_OB_NEED_RETRY;
 | 
						|
    _errors[-OB_TOO_MANY_SSTABLE] = &_error_OB_TOO_MANY_SSTABLE;
 | 
						|
    _errors[-OB_NOT_MASTER] = &_error_OB_NOT_MASTER;
 | 
						|
    _errors[-OB_KILLED_BY_THROTTLING] = &_error_OB_KILLED_BY_THROTTLING;
 | 
						|
    _errors[-OB_DECRYPT_FAILED] = &_error_OB_DECRYPT_FAILED;
 | 
						|
    _errors[-OB_USER_NOT_EXIST] = &_error_OB_USER_NOT_EXIST;
 | 
						|
    _errors[-OB_PASSWORD_WRONG] = &_error_OB_PASSWORD_WRONG;
 | 
						|
    _errors[-OB_SKEY_VERSION_WRONG] = &_error_OB_SKEY_VERSION_WRONG;
 | 
						|
    _errors[-OB_PUSHDOWN_STATUS_CHANGED] = &_error_OB_PUSHDOWN_STATUS_CHANGED;
 | 
						|
    _errors[-OB_STORAGE_SCHEMA_INVALID] = &_error_OB_STORAGE_SCHEMA_INVALID;
 | 
						|
    _errors[-OB_MEDIUM_COMPACTION_INFO_INVALID] = &_error_OB_MEDIUM_COMPACTION_INFO_INVALID;
 | 
						|
    _errors[-OB_NOT_REGISTERED] = &_error_OB_NOT_REGISTERED;
 | 
						|
    _errors[-OB_WAITQUEUE_TIMEOUT] = &_error_OB_WAITQUEUE_TIMEOUT;
 | 
						|
    _errors[-OB_NOT_THE_OBJECT] = &_error_OB_NOT_THE_OBJECT;
 | 
						|
    _errors[-OB_ALREADY_REGISTERED] = &_error_OB_ALREADY_REGISTERED;
 | 
						|
    _errors[-OB_LAST_LOG_RUINNED] = &_error_OB_LAST_LOG_RUINNED;
 | 
						|
    _errors[-OB_NO_CS_SELECTED] = &_error_OB_NO_CS_SELECTED;
 | 
						|
    _errors[-OB_NO_TABLETS_CREATED] = &_error_OB_NO_TABLETS_CREATED;
 | 
						|
    _errors[-OB_INVALID_ERROR] = &_error_OB_INVALID_ERROR;
 | 
						|
    _errors[-OB_DECIMAL_OVERFLOW_WARN] = &_error_OB_DECIMAL_OVERFLOW_WARN;
 | 
						|
    _errors[-OB_DECIMAL_UNLEGAL_ERROR] = &_error_OB_DECIMAL_UNLEGAL_ERROR;
 | 
						|
    _errors[-OB_OBJ_DIVIDE_ERROR] = &_error_OB_OBJ_DIVIDE_ERROR;
 | 
						|
    _errors[-OB_NOT_A_DECIMAL] = &_error_OB_NOT_A_DECIMAL;
 | 
						|
    _errors[-OB_DECIMAL_PRECISION_NOT_EQUAL] = &_error_OB_DECIMAL_PRECISION_NOT_EQUAL;
 | 
						|
    _errors[-OB_EMPTY_RANGE] = &_error_OB_EMPTY_RANGE;
 | 
						|
    _errors[-OB_SESSION_KILLED] = &_error_OB_SESSION_KILLED;
 | 
						|
    _errors[-OB_LOG_NOT_SYNC] = &_error_OB_LOG_NOT_SYNC;
 | 
						|
    _errors[-OB_DIR_NOT_EXIST] = &_error_OB_DIR_NOT_EXIST;
 | 
						|
    _errors[-OB_SESSION_NOT_FOUND] = &_error_OB_SESSION_NOT_FOUND;
 | 
						|
    _errors[-OB_INVALID_LOG] = &_error_OB_INVALID_LOG;
 | 
						|
    _errors[-OB_INVALID_DATA] = &_error_OB_INVALID_DATA;
 | 
						|
    _errors[-OB_ALREADY_DONE] = &_error_OB_ALREADY_DONE;
 | 
						|
    _errors[-OB_CANCELED] = &_error_OB_CANCELED;
 | 
						|
    _errors[-OB_LOG_SRC_CHANGED] = &_error_OB_LOG_SRC_CHANGED;
 | 
						|
    _errors[-OB_LOG_NOT_ALIGN] = &_error_OB_LOG_NOT_ALIGN;
 | 
						|
    _errors[-OB_LOG_MISSING] = &_error_OB_LOG_MISSING;
 | 
						|
    _errors[-OB_NEED_WAIT] = &_error_OB_NEED_WAIT;
 | 
						|
    _errors[-OB_NOT_IMPLEMENT] = &_error_OB_NOT_IMPLEMENT;
 | 
						|
    _errors[-OB_DIVISION_BY_ZERO] = &_error_OB_DIVISION_BY_ZERO;
 | 
						|
    _errors[-OB_EXCEED_MEM_LIMIT] = &_error_OB_EXCEED_MEM_LIMIT;
 | 
						|
    _errors[-OB_RESULT_UNKNOWN] = &_error_OB_RESULT_UNKNOWN;
 | 
						|
    _errors[-OB_NO_RESULT] = &_error_OB_NO_RESULT;
 | 
						|
    _errors[-OB_QUEUE_OVERFLOW] = &_error_OB_QUEUE_OVERFLOW;
 | 
						|
    _errors[-OB_LOG_ID_RANGE_NOT_CONTINUOUS] = &_error_OB_LOG_ID_RANGE_NOT_CONTINUOUS;
 | 
						|
    _errors[-OB_TERM_LAGGED] = &_error_OB_TERM_LAGGED;
 | 
						|
    _errors[-OB_TERM_NOT_MATCH] = &_error_OB_TERM_NOT_MATCH;
 | 
						|
    _errors[-OB_START_LOG_CURSOR_INVALID] = &_error_OB_START_LOG_CURSOR_INVALID;
 | 
						|
    _errors[-OB_LOCK_NOT_MATCH] = &_error_OB_LOCK_NOT_MATCH;
 | 
						|
    _errors[-OB_DEAD_LOCK] = &_error_OB_DEAD_LOCK;
 | 
						|
    _errors[-OB_PARTIAL_LOG] = &_error_OB_PARTIAL_LOG;
 | 
						|
    _errors[-OB_CHECKSUM_ERROR] = &_error_OB_CHECKSUM_ERROR;
 | 
						|
    _errors[-OB_INIT_FAIL] = &_error_OB_INIT_FAIL;
 | 
						|
    _errors[-OB_ROWKEY_ORDER_ERROR] = &_error_OB_ROWKEY_ORDER_ERROR;
 | 
						|
    _errors[-OB_NOT_ENOUGH_STORE] = &_error_OB_NOT_ENOUGH_STORE;
 | 
						|
    _errors[-OB_BLOCK_SWITCHED] = &_error_OB_BLOCK_SWITCHED;
 | 
						|
    _errors[-OB_PHYSIC_CHECKSUM_ERROR] = &_error_OB_PHYSIC_CHECKSUM_ERROR;
 | 
						|
    _errors[-OB_STATE_NOT_MATCH] = &_error_OB_STATE_NOT_MATCH;
 | 
						|
    _errors[-OB_READ_ZERO_LOG] = &_error_OB_READ_ZERO_LOG;
 | 
						|
    _errors[-OB_BLOCK_NEED_FREEZE] = &_error_OB_BLOCK_NEED_FREEZE;
 | 
						|
    _errors[-OB_BLOCK_FROZEN] = &_error_OB_BLOCK_FROZEN;
 | 
						|
    _errors[-OB_IN_FATAL_STATE] = &_error_OB_IN_FATAL_STATE;
 | 
						|
    _errors[-OB_IN_STOP_STATE] = &_error_OB_IN_STOP_STATE;
 | 
						|
    _errors[-OB_UPS_MASTER_EXISTS] = &_error_OB_UPS_MASTER_EXISTS;
 | 
						|
    _errors[-OB_LOG_NOT_CLEAR] = &_error_OB_LOG_NOT_CLEAR;
 | 
						|
    _errors[-OB_FILE_ALREADY_EXIST] = &_error_OB_FILE_ALREADY_EXIST;
 | 
						|
    _errors[-OB_UNKNOWN_PACKET] = &_error_OB_UNKNOWN_PACKET;
 | 
						|
    _errors[-OB_RPC_PACKET_TOO_LONG] = &_error_OB_RPC_PACKET_TOO_LONG;
 | 
						|
    _errors[-OB_LOG_TOO_LARGE] = &_error_OB_LOG_TOO_LARGE;
 | 
						|
    _errors[-OB_RPC_SEND_ERROR] = &_error_OB_RPC_SEND_ERROR;
 | 
						|
    _errors[-OB_RPC_POST_ERROR] = &_error_OB_RPC_POST_ERROR;
 | 
						|
    _errors[-OB_LIBEASY_ERROR] = &_error_OB_LIBEASY_ERROR;
 | 
						|
    _errors[-OB_CONNECT_ERROR] = &_error_OB_CONNECT_ERROR;
 | 
						|
    _errors[-OB_NOT_FREE] = &_error_OB_NOT_FREE;
 | 
						|
    _errors[-OB_INIT_SQL_CONTEXT_ERROR] = &_error_OB_INIT_SQL_CONTEXT_ERROR;
 | 
						|
    _errors[-OB_SKIP_INVALID_ROW] = &_error_OB_SKIP_INVALID_ROW;
 | 
						|
    _errors[-OB_RPC_PACKET_INVALID] = &_error_OB_RPC_PACKET_INVALID;
 | 
						|
    _errors[-OB_NO_TABLET] = &_error_OB_NO_TABLET;
 | 
						|
    _errors[-OB_SNAPSHOT_DISCARDED] = &_error_OB_SNAPSHOT_DISCARDED;
 | 
						|
    _errors[-OB_DATA_NOT_UPTODATE] = &_error_OB_DATA_NOT_UPTODATE;
 | 
						|
    _errors[-OB_ROW_MODIFIED] = &_error_OB_ROW_MODIFIED;
 | 
						|
    _errors[-OB_VERSION_NOT_MATCH] = &_error_OB_VERSION_NOT_MATCH;
 | 
						|
    _errors[-OB_BAD_ADDRESS] = &_error_OB_BAD_ADDRESS;
 | 
						|
    _errors[-OB_ENQUEUE_FAILED] = &_error_OB_ENQUEUE_FAILED;
 | 
						|
    _errors[-OB_INVALID_CONFIG] = &_error_OB_INVALID_CONFIG;
 | 
						|
    _errors[-OB_STMT_EXPIRED] = &_error_OB_STMT_EXPIRED;
 | 
						|
    _errors[-OB_ERR_MIN_VALUE] = &_error_OB_ERR_MIN_VALUE;
 | 
						|
    _errors[-OB_ERR_MAX_VALUE] = &_error_OB_ERR_MAX_VALUE;
 | 
						|
    _errors[-OB_ERR_NULL_VALUE] = &_error_OB_ERR_NULL_VALUE;
 | 
						|
    _errors[-OB_RESOURCE_OUT] = &_error_OB_RESOURCE_OUT;
 | 
						|
    _errors[-OB_ERR_SQL_CLIENT] = &_error_OB_ERR_SQL_CLIENT;
 | 
						|
    _errors[-OB_META_TABLE_WITHOUT_USE_TABLE] = &_error_OB_META_TABLE_WITHOUT_USE_TABLE;
 | 
						|
    _errors[-OB_DISCARD_PACKET] = &_error_OB_DISCARD_PACKET;
 | 
						|
    _errors[-OB_OPERATE_OVERFLOW] = &_error_OB_OPERATE_OVERFLOW;
 | 
						|
    _errors[-OB_INVALID_DATE_FORMAT] = &_error_OB_INVALID_DATE_FORMAT;
 | 
						|
    _errors[-OB_POOL_REGISTERED_FAILED] = &_error_OB_POOL_REGISTERED_FAILED;
 | 
						|
    _errors[-OB_POOL_UNREGISTERED_FAILED] = &_error_OB_POOL_UNREGISTERED_FAILED;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_NUM] = &_error_OB_INVALID_ARGUMENT_NUM;
 | 
						|
    _errors[-OB_LEASE_NOT_ENOUGH] = &_error_OB_LEASE_NOT_ENOUGH;
 | 
						|
    _errors[-OB_LEASE_NOT_MATCH] = &_error_OB_LEASE_NOT_MATCH;
 | 
						|
    _errors[-OB_UPS_SWITCH_NOT_HAPPEN] = &_error_OB_UPS_SWITCH_NOT_HAPPEN;
 | 
						|
    _errors[-OB_EMPTY_RESULT] = &_error_OB_EMPTY_RESULT;
 | 
						|
    _errors[-OB_CACHE_NOT_HIT] = &_error_OB_CACHE_NOT_HIT;
 | 
						|
    _errors[-OB_NESTED_LOOP_NOT_SUPPORT] = &_error_OB_NESTED_LOOP_NOT_SUPPORT;
 | 
						|
    _errors[-OB_LOG_INVALID_MOD_ID] = &_error_OB_LOG_INVALID_MOD_ID;
 | 
						|
    _errors[-OB_LOG_MODULE_UNKNOWN] = &_error_OB_LOG_MODULE_UNKNOWN;
 | 
						|
    _errors[-OB_LOG_LEVEL_INVALID] = &_error_OB_LOG_LEVEL_INVALID;
 | 
						|
    _errors[-OB_LOG_PARSER_SYNTAX_ERR] = &_error_OB_LOG_PARSER_SYNTAX_ERR;
 | 
						|
    _errors[-OB_INDEX_OUT_OF_RANGE] = &_error_OB_INDEX_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_INT_UNDERFLOW] = &_error_OB_INT_UNDERFLOW;
 | 
						|
    _errors[-OB_UNKNOWN_CONNECTION] = &_error_OB_UNKNOWN_CONNECTION;
 | 
						|
    _errors[-OB_ERROR_OUT_OF_RANGE] = &_error_OB_ERROR_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_CACHE_SHRINK_FAILED] = &_error_OB_CACHE_SHRINK_FAILED;
 | 
						|
    _errors[-OB_OLD_SCHEMA_VERSION] = &_error_OB_OLD_SCHEMA_VERSION;
 | 
						|
    _errors[-OB_RELEASE_SCHEMA_ERROR] = &_error_OB_RELEASE_SCHEMA_ERROR;
 | 
						|
    _errors[-OB_OP_NOT_ALLOW] = &_error_OB_OP_NOT_ALLOW;
 | 
						|
    _errors[-OB_NO_EMPTY_ENTRY] = &_error_OB_NO_EMPTY_ENTRY;
 | 
						|
    _errors[-OB_ERR_ALREADY_EXISTS] = &_error_OB_ERR_ALREADY_EXISTS;
 | 
						|
    _errors[-OB_SEARCH_NOT_FOUND] = &_error_OB_SEARCH_NOT_FOUND;
 | 
						|
    _errors[-OB_BEYOND_THE_RANGE] = &_error_OB_BEYOND_THE_RANGE;
 | 
						|
    _errors[-OB_SERVER_OUTOF_DISK_SPACE] = &_error_OB_SERVER_OUTOF_DISK_SPACE;
 | 
						|
    _errors[-OB_COLUMN_GROUP_NOT_FOUND] = &_error_OB_COLUMN_GROUP_NOT_FOUND;
 | 
						|
    _errors[-OB_CS_COMPRESS_LIB_ERROR] = &_error_OB_CS_COMPRESS_LIB_ERROR;
 | 
						|
    _errors[-OB_ITEM_NOT_MATCH] = &_error_OB_ITEM_NOT_MATCH;
 | 
						|
    _errors[-OB_SCHEDULER_TASK_CNT_MISMATCH] = &_error_OB_SCHEDULER_TASK_CNT_MISMATCH;
 | 
						|
    _errors[-OB_INVALID_MACRO_BLOCK_TYPE] = &_error_OB_INVALID_MACRO_BLOCK_TYPE;
 | 
						|
    _errors[-OB_INVALID_DATE_FORMAT_END] = &_error_OB_INVALID_DATE_FORMAT_END;
 | 
						|
    _errors[-OB_PG_IS_REMOVED] = &_error_OB_PG_IS_REMOVED;
 | 
						|
    _errors[-OB_HASH_EXIST] = &_error_OB_HASH_EXIST;
 | 
						|
    _errors[-OB_HASH_NOT_EXIST] = &_error_OB_HASH_NOT_EXIST;
 | 
						|
    _errors[-OB_HASH_GET_TIMEOUT] = &_error_OB_HASH_GET_TIMEOUT;
 | 
						|
    _errors[-OB_HASH_PLACEMENT_RETRY] = &_error_OB_HASH_PLACEMENT_RETRY;
 | 
						|
    _errors[-OB_HASH_FULL] = &_error_OB_HASH_FULL;
 | 
						|
    _errors[-OB_PACKET_PROCESSED] = &_error_OB_PACKET_PROCESSED;
 | 
						|
    _errors[-OB_WAIT_NEXT_TIMEOUT] = &_error_OB_WAIT_NEXT_TIMEOUT;
 | 
						|
    _errors[-OB_LEADER_NOT_EXIST] = &_error_OB_LEADER_NOT_EXIST;
 | 
						|
    _errors[-OB_PREPARE_MAJOR_FREEZE_FAILED] = &_error_OB_PREPARE_MAJOR_FREEZE_FAILED;
 | 
						|
    _errors[-OB_COMMIT_MAJOR_FREEZE_FAILED] = &_error_OB_COMMIT_MAJOR_FREEZE_FAILED;
 | 
						|
    _errors[-OB_ABORT_MAJOR_FREEZE_FAILED] = &_error_OB_ABORT_MAJOR_FREEZE_FAILED;
 | 
						|
    _errors[-OB_MAJOR_FREEZE_NOT_FINISHED] = &_error_OB_MAJOR_FREEZE_NOT_FINISHED;
 | 
						|
    _errors[-OB_PARTITION_NOT_LEADER] = &_error_OB_PARTITION_NOT_LEADER;
 | 
						|
    _errors[-OB_WAIT_MAJOR_FREEZE_RESPONSE_TIMEOUT] = &_error_OB_WAIT_MAJOR_FREEZE_RESPONSE_TIMEOUT;
 | 
						|
    _errors[-OB_CURL_ERROR] = &_error_OB_CURL_ERROR;
 | 
						|
    _errors[-OB_MAJOR_FREEZE_NOT_ALLOW] = &_error_OB_MAJOR_FREEZE_NOT_ALLOW;
 | 
						|
    _errors[-OB_PREPARE_FREEZE_FAILED] = &_error_OB_PREPARE_FREEZE_FAILED;
 | 
						|
    _errors[-OB_INVALID_DATE_VALUE] = &_error_OB_INVALID_DATE_VALUE;
 | 
						|
    _errors[-OB_INACTIVE_SQL_CLIENT] = &_error_OB_INACTIVE_SQL_CLIENT;
 | 
						|
    _errors[-OB_INACTIVE_RPC_PROXY] = &_error_OB_INACTIVE_RPC_PROXY;
 | 
						|
    _errors[-OB_INTERVAL_WITH_MONTH] = &_error_OB_INTERVAL_WITH_MONTH;
 | 
						|
    _errors[-OB_TOO_MANY_DATETIME_PARTS] = &_error_OB_TOO_MANY_DATETIME_PARTS;
 | 
						|
    _errors[-OB_DATA_OUT_OF_RANGE] = &_error_OB_DATA_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_PARTITION_NOT_EXIST] = &_error_OB_PARTITION_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_TRUNCATED_WRONG_VALUE_FOR_FIELD] = &_error_OB_ERR_TRUNCATED_WRONG_VALUE_FOR_FIELD;
 | 
						|
    _errors[-OB_ERR_NO_DEFAULT_FOR_FIELD] = &_error_OB_ERR_NO_DEFAULT_FOR_FIELD;
 | 
						|
    _errors[-OB_ERR_FIELD_SPECIFIED_TWICE] = &_error_OB_ERR_FIELD_SPECIFIED_TWICE;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_TABLE_COMMENT] = &_error_OB_ERR_TOO_LONG_TABLE_COMMENT;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_FIELD_COMMENT] = &_error_OB_ERR_TOO_LONG_FIELD_COMMENT;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_INDEX_COMMENT] = &_error_OB_ERR_TOO_LONG_INDEX_COMMENT;
 | 
						|
    _errors[-OB_NOT_FOLLOWER] = &_error_OB_NOT_FOLLOWER;
 | 
						|
    _errors[-OB_ERR_OUT_OF_LOWER_BOUND] = &_error_OB_ERR_OUT_OF_LOWER_BOUND;
 | 
						|
    _errors[-OB_ERR_OUT_OF_UPPER_BOUND] = &_error_OB_ERR_OUT_OF_UPPER_BOUND;
 | 
						|
    _errors[-OB_BAD_NULL_ERROR] = &_error_OB_BAD_NULL_ERROR;
 | 
						|
    _errors[-OB_OBCONFIG_RETURN_ERROR] = &_error_OB_OBCONFIG_RETURN_ERROR;
 | 
						|
    _errors[-OB_OBCONFIG_APPNAME_MISMATCH] = &_error_OB_OBCONFIG_APPNAME_MISMATCH;
 | 
						|
    _errors[-OB_ERR_VIEW_SELECT_DERIVED] = &_error_OB_ERR_VIEW_SELECT_DERIVED;
 | 
						|
    _errors[-OB_CANT_MJ_PATH] = &_error_OB_CANT_MJ_PATH;
 | 
						|
    _errors[-OB_ERR_NO_JOIN_ORDER_GENERATED] = &_error_OB_ERR_NO_JOIN_ORDER_GENERATED;
 | 
						|
    _errors[-OB_ERR_NO_PATH_GENERATED] = &_error_OB_ERR_NO_PATH_GENERATED;
 | 
						|
    _errors[-OB_ERR_WAIT_REMOTE_SCHEMA_REFRESH] = &_error_OB_ERR_WAIT_REMOTE_SCHEMA_REFRESH;
 | 
						|
    _errors[-OB_FILE_NOT_OPENED] = &_error_OB_FILE_NOT_OPENED;
 | 
						|
    _errors[-OB_TIMER_TASK_HAS_SCHEDULED] = &_error_OB_TIMER_TASK_HAS_SCHEDULED;
 | 
						|
    _errors[-OB_TIMER_TASK_HAS_NOT_SCHEDULED] = &_error_OB_TIMER_TASK_HAS_NOT_SCHEDULED;
 | 
						|
    _errors[-OB_PARSE_DEBUG_SYNC_ERROR] = &_error_OB_PARSE_DEBUG_SYNC_ERROR;
 | 
						|
    _errors[-OB_UNKNOWN_DEBUG_SYNC_POINT] = &_error_OB_UNKNOWN_DEBUG_SYNC_POINT;
 | 
						|
    _errors[-OB_ERR_INTERRUPTED] = &_error_OB_ERR_INTERRUPTED;
 | 
						|
    _errors[-OB_ERR_DATA_TRUNCATED] = &_error_OB_ERR_DATA_TRUNCATED;
 | 
						|
    _errors[-OB_NOT_RUNNING] = &_error_OB_NOT_RUNNING;
 | 
						|
    _errors[-OB_INVALID_PARTITION] = &_error_OB_INVALID_PARTITION;
 | 
						|
    _errors[-OB_ERR_TIMEOUT_TRUNCATED] = &_error_OB_ERR_TIMEOUT_TRUNCATED;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_TENANT_COMMENT] = &_error_OB_ERR_TOO_LONG_TENANT_COMMENT;
 | 
						|
    _errors[-OB_ERR_NET_PACKET_TOO_LARGE] = &_error_OB_ERR_NET_PACKET_TOO_LARGE;
 | 
						|
    _errors[-OB_TRACE_DESC_NOT_EXIST] = &_error_OB_TRACE_DESC_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_NO_DEFAULT] = &_error_OB_ERR_NO_DEFAULT;
 | 
						|
    _errors[-OB_ERR_COMPRESS_DECOMPRESS_DATA] = &_error_OB_ERR_COMPRESS_DECOMPRESS_DATA;
 | 
						|
    _errors[-OB_ERR_INCORRECT_STRING_VALUE] = &_error_OB_ERR_INCORRECT_STRING_VALUE;
 | 
						|
    _errors[-OB_IS_CHANGING_LEADER] = &_error_OB_IS_CHANGING_LEADER;
 | 
						|
    _errors[-OB_DATETIME_FUNCTION_OVERFLOW] = &_error_OB_DATETIME_FUNCTION_OVERFLOW;
 | 
						|
    _errors[-OB_ERR_DOUBLE_TRUNCATED] = &_error_OB_ERR_DOUBLE_TRUNCATED;
 | 
						|
    _errors[-OB_MINOR_FREEZE_NOT_ALLOW] = &_error_OB_MINOR_FREEZE_NOT_ALLOW;
 | 
						|
    _errors[-OB_LOG_OUTOF_DISK_SPACE] = &_error_OB_LOG_OUTOF_DISK_SPACE;
 | 
						|
    _errors[-OB_RPC_CONNECT_ERROR] = &_error_OB_RPC_CONNECT_ERROR;
 | 
						|
    _errors[-OB_MINOR_MERGE_NOT_ALLOW] = &_error_OB_MINOR_MERGE_NOT_ALLOW;
 | 
						|
    _errors[-OB_CACHE_INVALID] = &_error_OB_CACHE_INVALID;
 | 
						|
    _errors[-OB_REACH_SERVER_DATA_COPY_IN_CONCURRENCY_LIMIT] = &_error_OB_REACH_SERVER_DATA_COPY_IN_CONCURRENCY_LIMIT;
 | 
						|
    _errors[-OB_WORKING_PARTITION_EXIST] = &_error_OB_WORKING_PARTITION_EXIST;
 | 
						|
    _errors[-OB_WORKING_PARTITION_NOT_EXIST] = &_error_OB_WORKING_PARTITION_NOT_EXIST;
 | 
						|
    _errors[-OB_LIBEASY_REACH_MEM_LIMIT] = &_error_OB_LIBEASY_REACH_MEM_LIMIT;
 | 
						|
    _errors[-OB_CACHE_FREE_BLOCK_NOT_ENOUGH] = &_error_OB_CACHE_FREE_BLOCK_NOT_ENOUGH;
 | 
						|
    _errors[-OB_SYNC_WASH_MB_TIMEOUT] = &_error_OB_SYNC_WASH_MB_TIMEOUT;
 | 
						|
    _errors[-OB_NOT_ALLOW_MIGRATE_IN] = &_error_OB_NOT_ALLOW_MIGRATE_IN;
 | 
						|
    _errors[-OB_SCHEDULER_TASK_CNT_MISTACH] = &_error_OB_SCHEDULER_TASK_CNT_MISTACH;
 | 
						|
    _errors[-OB_MISS_ARGUMENT] = &_error_OB_MISS_ARGUMENT;
 | 
						|
    _errors[-OB_LAST_LOG_NOT_COMPLETE] = &_error_OB_LAST_LOG_NOT_COMPLETE;
 | 
						|
    _errors[-OB_TABLE_IS_DELETED] = &_error_OB_TABLE_IS_DELETED;
 | 
						|
    _errors[-OB_VERSION_RANGE_NOT_CONTINUES] = &_error_OB_VERSION_RANGE_NOT_CONTINUES;
 | 
						|
    _errors[-OB_INVALID_IO_BUFFER] = &_error_OB_INVALID_IO_BUFFER;
 | 
						|
    _errors[-OB_PARTITION_IS_REMOVED] = &_error_OB_PARTITION_IS_REMOVED;
 | 
						|
    _errors[-OB_GTS_NOT_READY] = &_error_OB_GTS_NOT_READY;
 | 
						|
    _errors[-OB_MAJOR_SSTABLE_NOT_EXIST] = &_error_OB_MAJOR_SSTABLE_NOT_EXIST;
 | 
						|
    _errors[-OB_VERSION_RANGE_DISCARDED] = &_error_OB_VERSION_RANGE_DISCARDED;
 | 
						|
    _errors[-OB_MAJOR_SSTABLE_HAS_MERGED] = &_error_OB_MAJOR_SSTABLE_HAS_MERGED;
 | 
						|
    _errors[-OB_MINOR_SSTABLE_RANGE_CROSS] = &_error_OB_MINOR_SSTABLE_RANGE_CROSS;
 | 
						|
    _errors[-OB_MEMTABLE_CANNOT_MINOR_MERGE] = &_error_OB_MEMTABLE_CANNOT_MINOR_MERGE;
 | 
						|
    _errors[-OB_TASK_EXIST] = &_error_OB_TASK_EXIST;
 | 
						|
    _errors[-OB_ALLOCATE_DISK_SPACE_FAILED] = &_error_OB_ALLOCATE_DISK_SPACE_FAILED;
 | 
						|
    _errors[-OB_CANT_FIND_UDF] = &_error_OB_CANT_FIND_UDF;
 | 
						|
    _errors[-OB_CANT_INITIALIZE_UDF] = &_error_OB_CANT_INITIALIZE_UDF;
 | 
						|
    _errors[-OB_UDF_NO_PATHS] = &_error_OB_UDF_NO_PATHS;
 | 
						|
    _errors[-OB_UDF_EXISTS] = &_error_OB_UDF_EXISTS;
 | 
						|
    _errors[-OB_CANT_OPEN_LIBRARY] = &_error_OB_CANT_OPEN_LIBRARY;
 | 
						|
    _errors[-OB_CANT_FIND_DL_ENTRY] = &_error_OB_CANT_FIND_DL_ENTRY;
 | 
						|
    _errors[-OB_OBJECT_NAME_EXIST] = &_error_OB_OBJECT_NAME_EXIST;
 | 
						|
    _errors[-OB_OBJECT_NAME_NOT_EXIST] = &_error_OB_OBJECT_NAME_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_DUP_ARGUMENT] = &_error_OB_ERR_DUP_ARGUMENT;
 | 
						|
    _errors[-OB_ERR_INVALID_SEQUENCE_NAME] = &_error_OB_ERR_INVALID_SEQUENCE_NAME;
 | 
						|
    _errors[-OB_ERR_DUP_MAXVALUE_SPEC] = &_error_OB_ERR_DUP_MAXVALUE_SPEC;
 | 
						|
    _errors[-OB_ERR_DUP_MINVALUE_SPEC] = &_error_OB_ERR_DUP_MINVALUE_SPEC;
 | 
						|
    _errors[-OB_ERR_DUP_CYCLE_SPEC] = &_error_OB_ERR_DUP_CYCLE_SPEC;
 | 
						|
    _errors[-OB_ERR_DUP_CACHE_SPEC] = &_error_OB_ERR_DUP_CACHE_SPEC;
 | 
						|
    _errors[-OB_ERR_DUP_ORDER_SPEC] = &_error_OB_ERR_DUP_ORDER_SPEC;
 | 
						|
    _errors[-OB_ERR_CONFL_MAXVALUE_SPEC] = &_error_OB_ERR_CONFL_MAXVALUE_SPEC;
 | 
						|
    _errors[-OB_ERR_CONFL_MINVALUE_SPEC] = &_error_OB_ERR_CONFL_MINVALUE_SPEC;
 | 
						|
    _errors[-OB_ERR_CONFL_CYCLE_SPEC] = &_error_OB_ERR_CONFL_CYCLE_SPEC;
 | 
						|
    _errors[-OB_ERR_CONFL_CACHE_SPEC] = &_error_OB_ERR_CONFL_CACHE_SPEC;
 | 
						|
    _errors[-OB_ERR_CONFL_ORDER_SPEC] = &_error_OB_ERR_CONFL_ORDER_SPEC;
 | 
						|
    _errors[-OB_ERR_ALTER_START_SEQ_NUMBER_NOT_ALLOWED] = &_error_OB_ERR_ALTER_START_SEQ_NUMBER_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_DUP_INCREMENT_BY_SPEC] = &_error_OB_ERR_DUP_INCREMENT_BY_SPEC;
 | 
						|
    _errors[-OB_ERR_DUP_START_WITH_SPEC] = &_error_OB_ERR_DUP_START_WITH_SPEC;
 | 
						|
    _errors[-OB_ERR_REQUIRE_ALTER_SEQ_OPTION] = &_error_OB_ERR_REQUIRE_ALTER_SEQ_OPTION;
 | 
						|
    _errors[-OB_ERR_SEQ_NOT_ALLOWED_HERE] = &_error_OB_ERR_SEQ_NOT_ALLOWED_HERE;
 | 
						|
    _errors[-OB_ERR_SEQ_NOT_EXIST] = &_error_OB_ERR_SEQ_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_SEQ_OPTION_MUST_BE_INTEGER] = &_error_OB_ERR_SEQ_OPTION_MUST_BE_INTEGER;
 | 
						|
    _errors[-OB_ERR_SEQ_INCREMENT_CAN_NOT_BE_ZERO] = &_error_OB_ERR_SEQ_INCREMENT_CAN_NOT_BE_ZERO;
 | 
						|
    _errors[-OB_ERR_SEQ_OPTION_EXCEED_RANGE] = &_error_OB_ERR_SEQ_OPTION_EXCEED_RANGE;
 | 
						|
    _errors[-OB_ERR_MINVALUE_LARGER_THAN_MAXVALUE] = &_error_OB_ERR_MINVALUE_LARGER_THAN_MAXVALUE;
 | 
						|
    _errors[-OB_ERR_SEQ_INCREMENT_TOO_LARGE] = &_error_OB_ERR_SEQ_INCREMENT_TOO_LARGE;
 | 
						|
    _errors[-OB_ERR_START_WITH_LESS_THAN_MINVALUE] = &_error_OB_ERR_START_WITH_LESS_THAN_MINVALUE;
 | 
						|
    _errors[-OB_ERR_MINVALUE_EXCEED_CURRVAL] = &_error_OB_ERR_MINVALUE_EXCEED_CURRVAL;
 | 
						|
    _errors[-OB_ERR_START_WITH_EXCEED_MAXVALUE] = &_error_OB_ERR_START_WITH_EXCEED_MAXVALUE;
 | 
						|
    _errors[-OB_ERR_MAXVALUE_EXCEED_CURRVAL] = &_error_OB_ERR_MAXVALUE_EXCEED_CURRVAL;
 | 
						|
    _errors[-OB_ERR_SEQ_CACHE_TOO_SMALL] = &_error_OB_ERR_SEQ_CACHE_TOO_SMALL;
 | 
						|
    _errors[-OB_ERR_SEQ_OPTION_OUT_OF_RANGE] = &_error_OB_ERR_SEQ_OPTION_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_SEQ_CACHE_TOO_LARGE] = &_error_OB_ERR_SEQ_CACHE_TOO_LARGE;
 | 
						|
    _errors[-OB_ERR_SEQ_REQUIRE_MINVALUE] = &_error_OB_ERR_SEQ_REQUIRE_MINVALUE;
 | 
						|
    _errors[-OB_ERR_SEQ_REQUIRE_MAXVALUE] = &_error_OB_ERR_SEQ_REQUIRE_MAXVALUE;
 | 
						|
    _errors[-OB_ERR_SEQ_NO_LONGER_EXIST] = &_error_OB_ERR_SEQ_NO_LONGER_EXIST;
 | 
						|
    _errors[-OB_ERR_SEQ_VALUE_EXCEED_LIMIT] = &_error_OB_ERR_SEQ_VALUE_EXCEED_LIMIT;
 | 
						|
    _errors[-OB_ERR_DIVISOR_IS_ZERO] = &_error_OB_ERR_DIVISOR_IS_ZERO;
 | 
						|
    _errors[-OB_ERR_AES_DECRYPT] = &_error_OB_ERR_AES_DECRYPT;
 | 
						|
    _errors[-OB_ERR_AES_ENCRYPT] = &_error_OB_ERR_AES_ENCRYPT;
 | 
						|
    _errors[-OB_ERR_AES_IV_LENGTH] = &_error_OB_ERR_AES_IV_LENGTH;
 | 
						|
    _errors[-OB_STORE_DIR_ERROR] = &_error_OB_STORE_DIR_ERROR;
 | 
						|
    _errors[-OB_OPEN_TWICE] = &_error_OB_OPEN_TWICE;
 | 
						|
    _errors[-OB_RAID_SUPER_BLOCK_NOT_MACTH] = &_error_OB_RAID_SUPER_BLOCK_NOT_MACTH;
 | 
						|
    _errors[-OB_NOT_OPEN] = &_error_OB_NOT_OPEN;
 | 
						|
    _errors[-OB_NOT_IN_SERVICE] = &_error_OB_NOT_IN_SERVICE;
 | 
						|
    _errors[-OB_RAID_DISK_NOT_NORMAL] = &_error_OB_RAID_DISK_NOT_NORMAL;
 | 
						|
    _errors[-OB_TENANT_SCHEMA_NOT_FULL] = &_error_OB_TENANT_SCHEMA_NOT_FULL;
 | 
						|
    _errors[-OB_INVALID_QUERY_TIMESTAMP] = &_error_OB_INVALID_QUERY_TIMESTAMP;
 | 
						|
    _errors[-OB_DIR_NOT_EMPTY] = &_error_OB_DIR_NOT_EMPTY;
 | 
						|
    _errors[-OB_SCHEMA_NOT_UPTODATE] = &_error_OB_SCHEMA_NOT_UPTODATE;
 | 
						|
    _errors[-OB_ROLE_NOT_EXIST] = &_error_OB_ROLE_NOT_EXIST;
 | 
						|
    _errors[-OB_ROLE_EXIST] = &_error_OB_ROLE_EXIST;
 | 
						|
    _errors[-OB_PRIV_DUP] = &_error_OB_PRIV_DUP;
 | 
						|
    _errors[-OB_KEYSTORE_EXIST] = &_error_OB_KEYSTORE_EXIST;
 | 
						|
    _errors[-OB_KEYSTORE_NOT_EXIST] = &_error_OB_KEYSTORE_NOT_EXIST;
 | 
						|
    _errors[-OB_KEYSTORE_WRONG_PASSWORD] = &_error_OB_KEYSTORE_WRONG_PASSWORD;
 | 
						|
    _errors[-OB_TABLESPACE_EXIST] = &_error_OB_TABLESPACE_EXIST;
 | 
						|
    _errors[-OB_TABLESPACE_NOT_EXIST] = &_error_OB_TABLESPACE_NOT_EXIST;
 | 
						|
    _errors[-OB_TABLESPACE_DELETE_NOT_EMPTY] = &_error_OB_TABLESPACE_DELETE_NOT_EMPTY;
 | 
						|
    _errors[-OB_FLOAT_PRECISION_OUT_RANGE] = &_error_OB_FLOAT_PRECISION_OUT_RANGE;
 | 
						|
    _errors[-OB_NUMERIC_PRECISION_OUT_RANGE] = &_error_OB_NUMERIC_PRECISION_OUT_RANGE;
 | 
						|
    _errors[-OB_NUMERIC_SCALE_OUT_RANGE] = &_error_OB_NUMERIC_SCALE_OUT_RANGE;
 | 
						|
    _errors[-OB_KEYSTORE_NOT_OPEN] = &_error_OB_KEYSTORE_NOT_OPEN;
 | 
						|
    _errors[-OB_KEYSTORE_OPEN_NO_MASTER_KEY] = &_error_OB_KEYSTORE_OPEN_NO_MASTER_KEY;
 | 
						|
    _errors[-OB_SLOG_REACH_MAX_CONCURRENCY] = &_error_OB_SLOG_REACH_MAX_CONCURRENCY;
 | 
						|
    _errors[-OB_ERR_BY_ACCESS_OR_SESSION_CLAUSE_NOT_ALLOWED_FOR_NOAUDIT] = &_error_OB_ERR_BY_ACCESS_OR_SESSION_CLAUSE_NOT_ALLOWED_FOR_NOAUDIT;
 | 
						|
    _errors[-OB_ERR_AUDITING_THE_OBJECT_IS_NOT_SUPPORTED] = &_error_OB_ERR_AUDITING_THE_OBJECT_IS_NOT_SUPPORTED;
 | 
						|
    _errors[-OB_ERR_DDL_STATEMENT_CANNOT_BE_AUDITED_WITH_BY_SESSION_SPECIFIED] = &_error_OB_ERR_DDL_STATEMENT_CANNOT_BE_AUDITED_WITH_BY_SESSION_SPECIFIED;
 | 
						|
    _errors[-OB_ERR_NOT_VALID_PASSWORD] = &_error_OB_ERR_NOT_VALID_PASSWORD;
 | 
						|
    _errors[-OB_ERR_MUST_CHANGE_PASSWORD] = &_error_OB_ERR_MUST_CHANGE_PASSWORD;
 | 
						|
    _errors[-OB_OVERSIZE_NEED_RETRY] = &_error_OB_OVERSIZE_NEED_RETRY;
 | 
						|
    _errors[-OB_OBCONFIG_CLUSTER_NOT_EXIST] = &_error_OB_OBCONFIG_CLUSTER_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_GET_MASTER_KEY] = &_error_OB_ERR_GET_MASTER_KEY;
 | 
						|
    _errors[-OB_ERR_TDE_METHOD] = &_error_OB_ERR_TDE_METHOD;
 | 
						|
    _errors[-OB_KMS_SERVER_CONNECT_ERROR] = &_error_OB_KMS_SERVER_CONNECT_ERROR;
 | 
						|
    _errors[-OB_KMS_SERVER_IS_BUSY] = &_error_OB_KMS_SERVER_IS_BUSY;
 | 
						|
    _errors[-OB_KMS_SERVER_UPDATE_KEY_CONFLICT] = &_error_OB_KMS_SERVER_UPDATE_KEY_CONFLICT;
 | 
						|
    _errors[-OB_ERR_VALUE_LARGER_THAN_ALLOWED] = &_error_OB_ERR_VALUE_LARGER_THAN_ALLOWED;
 | 
						|
    _errors[-OB_DISK_ERROR] = &_error_OB_DISK_ERROR;
 | 
						|
    _errors[-OB_UNIMPLEMENTED_FEATURE] = &_error_OB_UNIMPLEMENTED_FEATURE;
 | 
						|
    _errors[-OB_ERR_DEFENSIVE_CHECK] = &_error_OB_ERR_DEFENSIVE_CHECK;
 | 
						|
    _errors[-OB_CLUSTER_NAME_HASH_CONFLICT] = &_error_OB_CLUSTER_NAME_HASH_CONFLICT;
 | 
						|
    _errors[-OB_HEAP_TABLE_EXAUSTED] = &_error_OB_HEAP_TABLE_EXAUSTED;
 | 
						|
    _errors[-OB_ERR_INDEX_KEY_NOT_FOUND] = &_error_OB_ERR_INDEX_KEY_NOT_FOUND;
 | 
						|
    _errors[-OB_UNSUPPORTED_DEPRECATED_FEATURE] = &_error_OB_UNSUPPORTED_DEPRECATED_FEATURE;
 | 
						|
    _errors[-OB_ERR_DUP_RESTART_SPEC] = &_error_OB_ERR_DUP_RESTART_SPEC;
 | 
						|
    _errors[-OB_GTI_NOT_READY] = &_error_OB_GTI_NOT_READY;
 | 
						|
    _errors[-OB_STACK_OVERFLOW] = &_error_OB_STACK_OVERFLOW;
 | 
						|
    _errors[-OB_NOT_ALLOW_REMOVING_LEADER] = &_error_OB_NOT_ALLOW_REMOVING_LEADER;
 | 
						|
    _errors[-OB_NEED_SWITCH_CONSUMER_GROUP] = &_error_OB_NEED_SWITCH_CONSUMER_GROUP;
 | 
						|
    _errors[-OB_UNEXPECT_INTERNAL_ERROR] = &_error_OB_UNEXPECT_INTERNAL_ERROR;
 | 
						|
    _errors[-OB_ERR_TOO_MUCH_TIME] = &_error_OB_ERR_TOO_MUCH_TIME;
 | 
						|
    _errors[-OB_ERR_REMOTE_SCHEMA_NOT_FULL] = &_error_OB_ERR_REMOTE_SCHEMA_NOT_FULL;
 | 
						|
    _errors[-OB_DDL_SSTABLE_RANGE_CROSS] = &_error_OB_DDL_SSTABLE_RANGE_CROSS;
 | 
						|
    _errors[-OB_IMPORT_NOT_IN_SERVER] = &_error_OB_IMPORT_NOT_IN_SERVER;
 | 
						|
    _errors[-OB_CONVERT_ERROR] = &_error_OB_CONVERT_ERROR;
 | 
						|
    _errors[-OB_BYPASS_TIMEOUT] = &_error_OB_BYPASS_TIMEOUT;
 | 
						|
    _errors[-OB_RS_STATE_NOT_ALLOW] = &_error_OB_RS_STATE_NOT_ALLOW;
 | 
						|
    _errors[-OB_NO_REPLICA_VALID] = &_error_OB_NO_REPLICA_VALID;
 | 
						|
    _errors[-OB_NO_NEED_UPDATE] = &_error_OB_NO_NEED_UPDATE;
 | 
						|
    _errors[-OB_CACHE_TIMEOUT] = &_error_OB_CACHE_TIMEOUT;
 | 
						|
    _errors[-OB_ITER_STOP] = &_error_OB_ITER_STOP;
 | 
						|
    _errors[-OB_ZONE_ALREADY_MASTER] = &_error_OB_ZONE_ALREADY_MASTER;
 | 
						|
    _errors[-OB_IP_PORT_IS_NOT_SLAVE_ZONE] = &_error_OB_IP_PORT_IS_NOT_SLAVE_ZONE;
 | 
						|
    _errors[-OB_ZONE_IS_NOT_SLAVE] = &_error_OB_ZONE_IS_NOT_SLAVE;
 | 
						|
    _errors[-OB_ZONE_IS_NOT_MASTER] = &_error_OB_ZONE_IS_NOT_MASTER;
 | 
						|
    _errors[-OB_CONFIG_NOT_SYNC] = &_error_OB_CONFIG_NOT_SYNC;
 | 
						|
    _errors[-OB_IP_PORT_IS_NOT_ZONE] = &_error_OB_IP_PORT_IS_NOT_ZONE;
 | 
						|
    _errors[-OB_MASTER_ZONE_NOT_EXIST] = &_error_OB_MASTER_ZONE_NOT_EXIST;
 | 
						|
    _errors[-OB_ZONE_INFO_NOT_EXIST] = &_error_OB_ZONE_INFO_NOT_EXIST;
 | 
						|
    _errors[-OB_GET_ZONE_MASTER_UPS_FAILED] = &_error_OB_GET_ZONE_MASTER_UPS_FAILED;
 | 
						|
    _errors[-OB_MULTIPLE_MASTER_ZONES_EXIST] = &_error_OB_MULTIPLE_MASTER_ZONES_EXIST;
 | 
						|
    _errors[-OB_INDEXING_ZONE_INVALID] = &_error_OB_INDEXING_ZONE_INVALID;
 | 
						|
    _errors[-OB_ROOT_TABLE_RANGE_NOT_EXIST] = &_error_OB_ROOT_TABLE_RANGE_NOT_EXIST;
 | 
						|
    _errors[-OB_ROOT_MIGRATE_CONCURRENCY_FULL] = &_error_OB_ROOT_MIGRATE_CONCURRENCY_FULL;
 | 
						|
    _errors[-OB_ROOT_MIGRATE_INFO_NOT_FOUND] = &_error_OB_ROOT_MIGRATE_INFO_NOT_FOUND;
 | 
						|
    _errors[-OB_NOT_DATA_LOAD_TABLE] = &_error_OB_NOT_DATA_LOAD_TABLE;
 | 
						|
    _errors[-OB_DATA_LOAD_TABLE_DUPLICATED] = &_error_OB_DATA_LOAD_TABLE_DUPLICATED;
 | 
						|
    _errors[-OB_ROOT_TABLE_ID_EXIST] = &_error_OB_ROOT_TABLE_ID_EXIST;
 | 
						|
    _errors[-OB_INDEX_TIMEOUT] = &_error_OB_INDEX_TIMEOUT;
 | 
						|
    _errors[-OB_ROOT_NOT_INTEGRATED] = &_error_OB_ROOT_NOT_INTEGRATED;
 | 
						|
    _errors[-OB_INDEX_INELIGIBLE] = &_error_OB_INDEX_INELIGIBLE;
 | 
						|
    _errors[-OB_REBALANCE_EXEC_TIMEOUT] = &_error_OB_REBALANCE_EXEC_TIMEOUT;
 | 
						|
    _errors[-OB_MERGE_NOT_STARTED] = &_error_OB_MERGE_NOT_STARTED;
 | 
						|
    _errors[-OB_MERGE_ALREADY_STARTED] = &_error_OB_MERGE_ALREADY_STARTED;
 | 
						|
    _errors[-OB_ROOTSERVICE_EXIST] = &_error_OB_ROOTSERVICE_EXIST;
 | 
						|
    _errors[-OB_RS_SHUTDOWN] = &_error_OB_RS_SHUTDOWN;
 | 
						|
    _errors[-OB_SERVER_MIGRATE_IN_DENIED] = &_error_OB_SERVER_MIGRATE_IN_DENIED;
 | 
						|
    _errors[-OB_REBALANCE_TASK_CANT_EXEC] = &_error_OB_REBALANCE_TASK_CANT_EXEC;
 | 
						|
    _errors[-OB_PARTITION_CNT_REACH_ROOTSERVER_LIMIT] = &_error_OB_PARTITION_CNT_REACH_ROOTSERVER_LIMIT;
 | 
						|
    _errors[-OB_REBALANCE_TASK_NOT_IN_PROGRESS] = &_error_OB_REBALANCE_TASK_NOT_IN_PROGRESS;
 | 
						|
    _errors[-OB_DATA_SOURCE_NOT_EXIST] = &_error_OB_DATA_SOURCE_NOT_EXIST;
 | 
						|
    _errors[-OB_DATA_SOURCE_TABLE_NOT_EXIST] = &_error_OB_DATA_SOURCE_TABLE_NOT_EXIST;
 | 
						|
    _errors[-OB_DATA_SOURCE_RANGE_NOT_EXIST] = &_error_OB_DATA_SOURCE_RANGE_NOT_EXIST;
 | 
						|
    _errors[-OB_DATA_SOURCE_DATA_NOT_EXIST] = &_error_OB_DATA_SOURCE_DATA_NOT_EXIST;
 | 
						|
    _errors[-OB_DATA_SOURCE_SYS_ERROR] = &_error_OB_DATA_SOURCE_SYS_ERROR;
 | 
						|
    _errors[-OB_DATA_SOURCE_TIMEOUT] = &_error_OB_DATA_SOURCE_TIMEOUT;
 | 
						|
    _errors[-OB_DATA_SOURCE_CONCURRENCY_FULL] = &_error_OB_DATA_SOURCE_CONCURRENCY_FULL;
 | 
						|
    _errors[-OB_DATA_SOURCE_WRONG_URI_FORMAT] = &_error_OB_DATA_SOURCE_WRONG_URI_FORMAT;
 | 
						|
    _errors[-OB_SSTABLE_VERSION_UNEQUAL] = &_error_OB_SSTABLE_VERSION_UNEQUAL;
 | 
						|
    _errors[-OB_UPS_RENEW_LEASE_NOT_ALLOWED] = &_error_OB_UPS_RENEW_LEASE_NOT_ALLOWED;
 | 
						|
    _errors[-OB_UPS_COUNT_OVER_LIMIT] = &_error_OB_UPS_COUNT_OVER_LIMIT;
 | 
						|
    _errors[-OB_NO_UPS_MAJORITY] = &_error_OB_NO_UPS_MAJORITY;
 | 
						|
    _errors[-OB_INDEX_COUNT_REACH_THE_LIMIT] = &_error_OB_INDEX_COUNT_REACH_THE_LIMIT;
 | 
						|
    _errors[-OB_TASK_EXPIRED] = &_error_OB_TASK_EXPIRED;
 | 
						|
    _errors[-OB_TABLEGROUP_NOT_EMPTY] = &_error_OB_TABLEGROUP_NOT_EMPTY;
 | 
						|
    _errors[-OB_INVALID_SERVER_STATUS] = &_error_OB_INVALID_SERVER_STATUS;
 | 
						|
    _errors[-OB_WAIT_ELEC_LEADER_TIMEOUT] = &_error_OB_WAIT_ELEC_LEADER_TIMEOUT;
 | 
						|
    _errors[-OB_WAIT_ALL_RS_ONLINE_TIMEOUT] = &_error_OB_WAIT_ALL_RS_ONLINE_TIMEOUT;
 | 
						|
    _errors[-OB_ALL_REPLICAS_ON_MERGE_ZONE] = &_error_OB_ALL_REPLICAS_ON_MERGE_ZONE;
 | 
						|
    _errors[-OB_MACHINE_RESOURCE_NOT_ENOUGH] = &_error_OB_MACHINE_RESOURCE_NOT_ENOUGH;
 | 
						|
    _errors[-OB_NOT_SERVER_CAN_HOLD_SOFTLY] = &_error_OB_NOT_SERVER_CAN_HOLD_SOFTLY;
 | 
						|
    _errors[-OB_RESOURCE_POOL_ALREADY_GRANTED] = &_error_OB_RESOURCE_POOL_ALREADY_GRANTED;
 | 
						|
    _errors[-OB_SERVER_ALREADY_DELETED] = &_error_OB_SERVER_ALREADY_DELETED;
 | 
						|
    _errors[-OB_SERVER_NOT_DELETING] = &_error_OB_SERVER_NOT_DELETING;
 | 
						|
    _errors[-OB_SERVER_NOT_IN_WHITE_LIST] = &_error_OB_SERVER_NOT_IN_WHITE_LIST;
 | 
						|
    _errors[-OB_SERVER_ZONE_NOT_MATCH] = &_error_OB_SERVER_ZONE_NOT_MATCH;
 | 
						|
    _errors[-OB_OVER_ZONE_NUM_LIMIT] = &_error_OB_OVER_ZONE_NUM_LIMIT;
 | 
						|
    _errors[-OB_ZONE_STATUS_NOT_MATCH] = &_error_OB_ZONE_STATUS_NOT_MATCH;
 | 
						|
    _errors[-OB_RESOURCE_UNIT_IS_REFERENCED] = &_error_OB_RESOURCE_UNIT_IS_REFERENCED;
 | 
						|
    _errors[-OB_DIFFERENT_PRIMARY_ZONE] = &_error_OB_DIFFERENT_PRIMARY_ZONE;
 | 
						|
    _errors[-OB_SERVER_NOT_ACTIVE] = &_error_OB_SERVER_NOT_ACTIVE;
 | 
						|
    _errors[-OB_RS_NOT_MASTER] = &_error_OB_RS_NOT_MASTER;
 | 
						|
    _errors[-OB_CANDIDATE_LIST_ERROR] = &_error_OB_CANDIDATE_LIST_ERROR;
 | 
						|
    _errors[-OB_PARTITION_ZONE_DUPLICATED] = &_error_OB_PARTITION_ZONE_DUPLICATED;
 | 
						|
    _errors[-OB_ZONE_DUPLICATED] = &_error_OB_ZONE_DUPLICATED;
 | 
						|
    _errors[-OB_NOT_ALL_ZONE_ACTIVE] = &_error_OB_NOT_ALL_ZONE_ACTIVE;
 | 
						|
    _errors[-OB_PRIMARY_ZONE_NOT_IN_ZONE_LIST] = &_error_OB_PRIMARY_ZONE_NOT_IN_ZONE_LIST;
 | 
						|
    _errors[-OB_REPLICA_NUM_NOT_MATCH] = &_error_OB_REPLICA_NUM_NOT_MATCH;
 | 
						|
    _errors[-OB_ZONE_LIST_POOL_LIST_NOT_MATCH] = &_error_OB_ZONE_LIST_POOL_LIST_NOT_MATCH;
 | 
						|
    _errors[-OB_INVALID_TENANT_NAME] = &_error_OB_INVALID_TENANT_NAME;
 | 
						|
    _errors[-OB_EMPTY_RESOURCE_POOL_LIST] = &_error_OB_EMPTY_RESOURCE_POOL_LIST;
 | 
						|
    _errors[-OB_RESOURCE_UNIT_NOT_EXIST] = &_error_OB_RESOURCE_UNIT_NOT_EXIST;
 | 
						|
    _errors[-OB_RESOURCE_UNIT_EXIST] = &_error_OB_RESOURCE_UNIT_EXIST;
 | 
						|
    _errors[-OB_RESOURCE_POOL_NOT_EXIST] = &_error_OB_RESOURCE_POOL_NOT_EXIST;
 | 
						|
    _errors[-OB_RESOURCE_POOL_EXIST] = &_error_OB_RESOURCE_POOL_EXIST;
 | 
						|
    _errors[-OB_WAIT_LEADER_SWITCH_TIMEOUT] = &_error_OB_WAIT_LEADER_SWITCH_TIMEOUT;
 | 
						|
    _errors[-OB_LOCATION_NOT_EXIST] = &_error_OB_LOCATION_NOT_EXIST;
 | 
						|
    _errors[-OB_LOCATION_LEADER_NOT_EXIST] = &_error_OB_LOCATION_LEADER_NOT_EXIST;
 | 
						|
    _errors[-OB_ZONE_NOT_ACTIVE] = &_error_OB_ZONE_NOT_ACTIVE;
 | 
						|
    _errors[-OB_UNIT_NUM_OVER_SERVER_COUNT] = &_error_OB_UNIT_NUM_OVER_SERVER_COUNT;
 | 
						|
    _errors[-OB_POOL_SERVER_INTERSECT] = &_error_OB_POOL_SERVER_INTERSECT;
 | 
						|
    _errors[-OB_NOT_SINGLE_RESOURCE_POOL] = &_error_OB_NOT_SINGLE_RESOURCE_POOL;
 | 
						|
    _errors[-OB_RESOURCE_UNIT_VALUE_BELOW_LIMIT] = &_error_OB_RESOURCE_UNIT_VALUE_BELOW_LIMIT;
 | 
						|
    _errors[-OB_STOP_SERVER_IN_MULTIPLE_ZONES] = &_error_OB_STOP_SERVER_IN_MULTIPLE_ZONES;
 | 
						|
    _errors[-OB_SESSION_ENTRY_EXIST] = &_error_OB_SESSION_ENTRY_EXIST;
 | 
						|
    _errors[-OB_GOT_SIGNAL_ABORTING] = &_error_OB_GOT_SIGNAL_ABORTING;
 | 
						|
    _errors[-OB_SERVER_NOT_ALIVE] = &_error_OB_SERVER_NOT_ALIVE;
 | 
						|
    _errors[-OB_GET_LOCATION_TIME_OUT] = &_error_OB_GET_LOCATION_TIME_OUT;
 | 
						|
    _errors[-OB_UNIT_IS_MIGRATING] = &_error_OB_UNIT_IS_MIGRATING;
 | 
						|
    _errors[-OB_CLUSTER_NO_MATCH] = &_error_OB_CLUSTER_NO_MATCH;
 | 
						|
    _errors[-OB_CHECK_ZONE_MERGE_ORDER] = &_error_OB_CHECK_ZONE_MERGE_ORDER;
 | 
						|
    _errors[-OB_ERR_ZONE_NOT_EMPTY] = &_error_OB_ERR_ZONE_NOT_EMPTY;
 | 
						|
    _errors[-OB_DIFFERENT_LOCALITY] = &_error_OB_DIFFERENT_LOCALITY;
 | 
						|
    _errors[-OB_EMPTY_LOCALITY] = &_error_OB_EMPTY_LOCALITY;
 | 
						|
    _errors[-OB_FULL_REPLICA_NUM_NOT_ENOUGH] = &_error_OB_FULL_REPLICA_NUM_NOT_ENOUGH;
 | 
						|
    _errors[-OB_REPLICA_NUM_NOT_ENOUGH] = &_error_OB_REPLICA_NUM_NOT_ENOUGH;
 | 
						|
    _errors[-OB_DATA_SOURCE_NOT_VALID] = &_error_OB_DATA_SOURCE_NOT_VALID;
 | 
						|
    _errors[-OB_RUN_JOB_NOT_SUCCESS] = &_error_OB_RUN_JOB_NOT_SUCCESS;
 | 
						|
    _errors[-OB_NO_NEED_REBUILD] = &_error_OB_NO_NEED_REBUILD;
 | 
						|
    _errors[-OB_NEED_REMOVE_UNNEED_TABLE] = &_error_OB_NEED_REMOVE_UNNEED_TABLE;
 | 
						|
    _errors[-OB_NO_NEED_MERGE] = &_error_OB_NO_NEED_MERGE;
 | 
						|
    _errors[-OB_CONFLICT_OPTION] = &_error_OB_CONFLICT_OPTION;
 | 
						|
    _errors[-OB_DUPLICATE_OPTION] = &_error_OB_DUPLICATE_OPTION;
 | 
						|
    _errors[-OB_INVALID_OPTION] = &_error_OB_INVALID_OPTION;
 | 
						|
    _errors[-OB_RPC_NEED_RECONNECT] = &_error_OB_RPC_NEED_RECONNECT;
 | 
						|
    _errors[-OB_CANNOT_COPY_MAJOR_SSTABLE] = &_error_OB_CANNOT_COPY_MAJOR_SSTABLE;
 | 
						|
    _errors[-OB_SRC_DO_NOT_ALLOWED_MIGRATE] = &_error_OB_SRC_DO_NOT_ALLOWED_MIGRATE;
 | 
						|
    _errors[-OB_TOO_MANY_TENANT_PARTITIONS_ERROR] = &_error_OB_TOO_MANY_TENANT_PARTITIONS_ERROR;
 | 
						|
    _errors[-OB_ACTIVE_MEMTBALE_NOT_EXSIT] = &_error_OB_ACTIVE_MEMTBALE_NOT_EXSIT;
 | 
						|
    _errors[-OB_USE_DUP_FOLLOW_AFTER_DML] = &_error_OB_USE_DUP_FOLLOW_AFTER_DML;
 | 
						|
    _errors[-OB_NO_DISK_NEED_REBUILD] = &_error_OB_NO_DISK_NEED_REBUILD;
 | 
						|
    _errors[-OB_STANDBY_READ_ONLY] = &_error_OB_STANDBY_READ_ONLY;
 | 
						|
    _errors[-OB_INVALD_WEB_SERVICE_CONTENT] = &_error_OB_INVALD_WEB_SERVICE_CONTENT;
 | 
						|
    _errors[-OB_PRIMARY_CLUSTER_EXIST] = &_error_OB_PRIMARY_CLUSTER_EXIST;
 | 
						|
    _errors[-OB_ARRAY_BINDING_SWITCH_ITERATOR] = &_error_OB_ARRAY_BINDING_SWITCH_ITERATOR;
 | 
						|
    _errors[-OB_ERR_STANDBY_CLUSTER_NOT_EMPTY] = &_error_OB_ERR_STANDBY_CLUSTER_NOT_EMPTY;
 | 
						|
    _errors[-OB_NOT_PRIMARY_CLUSTER] = &_error_OB_NOT_PRIMARY_CLUSTER;
 | 
						|
    _errors[-OB_ERR_CHECK_DROP_COLUMN_FAILED] = &_error_OB_ERR_CHECK_DROP_COLUMN_FAILED;
 | 
						|
    _errors[-OB_NOT_STANDBY_CLUSTER] = &_error_OB_NOT_STANDBY_CLUSTER;
 | 
						|
    _errors[-OB_CLUSTER_VERSION_NOT_COMPATIBLE] = &_error_OB_CLUSTER_VERSION_NOT_COMPATIBLE;
 | 
						|
    _errors[-OB_WAIT_TRANS_TABLE_MERGE_TIMEOUT] = &_error_OB_WAIT_TRANS_TABLE_MERGE_TIMEOUT;
 | 
						|
    _errors[-OB_SKIP_RENEW_LOCATION_BY_RPC] = &_error_OB_SKIP_RENEW_LOCATION_BY_RPC;
 | 
						|
    _errors[-OB_RENEW_LOCATION_BY_RPC_FAILED] = &_error_OB_RENEW_LOCATION_BY_RPC_FAILED;
 | 
						|
    _errors[-OB_CLUSTER_ID_NO_MATCH] = &_error_OB_CLUSTER_ID_NO_MATCH;
 | 
						|
    _errors[-OB_ERR_PARAM_INVALID] = &_error_OB_ERR_PARAM_INVALID;
 | 
						|
    _errors[-OB_ERR_RES_OBJ_ALREADY_EXIST] = &_error_OB_ERR_RES_OBJ_ALREADY_EXIST;
 | 
						|
    _errors[-OB_ERR_RES_PLAN_NOT_EXIST] = &_error_OB_ERR_RES_PLAN_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_PERCENTAGE_OUT_OF_RANGE] = &_error_OB_ERR_PERCENTAGE_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_PLAN_DIRECTIVE_NOT_EXIST] = &_error_OB_ERR_PLAN_DIRECTIVE_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_PLAN_DIRECTIVE_ALREADY_EXIST] = &_error_OB_ERR_PLAN_DIRECTIVE_ALREADY_EXIST;
 | 
						|
    _errors[-OB_ERR_INVALID_PLAN_DIRECTIVE_NAME] = &_error_OB_ERR_INVALID_PLAN_DIRECTIVE_NAME;
 | 
						|
    _errors[-OB_FAILOVER_NOT_ALLOW] = &_error_OB_FAILOVER_NOT_ALLOW;
 | 
						|
    _errors[-OB_ADD_CLUSTER_NOT_ALLOWED] = &_error_OB_ADD_CLUSTER_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CONSUMER_GROUP_NOT_EXIST] = &_error_OB_ERR_CONSUMER_GROUP_NOT_EXIST;
 | 
						|
    _errors[-OB_CLUSTER_NOT_ACCESSIBLE] = &_error_OB_CLUSTER_NOT_ACCESSIBLE;
 | 
						|
    _errors[-OB_TENANT_RESOURCE_UNIT_EXIST] = &_error_OB_TENANT_RESOURCE_UNIT_EXIST;
 | 
						|
    _errors[-OB_ERR_DROP_TRUNCATE_PARTITION_REBUILD_INDEX] = &_error_OB_ERR_DROP_TRUNCATE_PARTITION_REBUILD_INDEX;
 | 
						|
    _errors[-OB_ERR_ATLER_TABLE_ILLEGAL_FK] = &_error_OB_ERR_ATLER_TABLE_ILLEGAL_FK;
 | 
						|
    _errors[-OB_ERR_NO_RESOURCE_MANAGER_PRIVILEGE] = &_error_OB_ERR_NO_RESOURCE_MANAGER_PRIVILEGE;
 | 
						|
    _errors[-OB_LEADER_COORDINATOR_NEED_RETRY] = &_error_OB_LEADER_COORDINATOR_NEED_RETRY;
 | 
						|
    _errors[-OB_REBALANCE_TASK_NEED_RETRY] = &_error_OB_REBALANCE_TASK_NEED_RETRY;
 | 
						|
    _errors[-OB_ERR_RES_MGR_PLAN_NOT_EXIST] = &_error_OB_ERR_RES_MGR_PLAN_NOT_EXIST;
 | 
						|
    _errors[-OB_LS_NOT_EXIST] = &_error_OB_LS_NOT_EXIST;
 | 
						|
    _errors[-OB_TOO_MANY_TENANT_LS] = &_error_OB_TOO_MANY_TENANT_LS;
 | 
						|
    _errors[-OB_LS_LOCATION_NOT_EXIST] = &_error_OB_LS_LOCATION_NOT_EXIST;
 | 
						|
    _errors[-OB_LS_LOCATION_LEADER_NOT_EXIST] = &_error_OB_LS_LOCATION_LEADER_NOT_EXIST;
 | 
						|
    _errors[-OB_MAPPING_BETWEEN_TABLET_AND_LS_NOT_EXIST] = &_error_OB_MAPPING_BETWEEN_TABLET_AND_LS_NOT_EXIST;
 | 
						|
    _errors[-OB_TABLET_EXIST] = &_error_OB_TABLET_EXIST;
 | 
						|
    _errors[-OB_TABLET_NOT_EXIST] = &_error_OB_TABLET_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_STANDBY_STATUS] = &_error_OB_ERR_STANDBY_STATUS;
 | 
						|
    _errors[-OB_LS_NEED_REVOKE] = &_error_OB_LS_NEED_REVOKE;
 | 
						|
    _errors[-OB_ERR_INTERVAL_PARTITION_EXIST] = &_error_OB_ERR_INTERVAL_PARTITION_EXIST;
 | 
						|
    _errors[-OB_ERR_INTERVAL_PARTITION_ERROR] = &_error_OB_ERR_INTERVAL_PARTITION_ERROR;
 | 
						|
    _errors[-OB_ERR_LAST_PARTITION_IN_THE_RANGE_SECTION_CANNOT_BE_DROPPED] = &_error_OB_ERR_LAST_PARTITION_IN_THE_RANGE_SECTION_CANNOT_BE_DROPPED;
 | 
						|
    _errors[-OB_ERR_SET_INTERVAL_IS_NOT_LEGAL_ON_THIS_TABLE] = &_error_OB_ERR_SET_INTERVAL_IS_NOT_LEGAL_ON_THIS_TABLE;
 | 
						|
    _errors[-OB_CHECK_CLUSTER_STATUS] = &_error_OB_CHECK_CLUSTER_STATUS;
 | 
						|
    _errors[-OB_ZONE_RESOURCE_NOT_ENOUGH] = &_error_OB_ZONE_RESOURCE_NOT_ENOUGH;
 | 
						|
    _errors[-OB_ZONE_SERVER_NOT_ENOUGH] = &_error_OB_ZONE_SERVER_NOT_ENOUGH;
 | 
						|
    _errors[-OB_SSTABLE_NOT_EXIST] = &_error_OB_SSTABLE_NOT_EXIST;
 | 
						|
    _errors[-OB_RESOURCE_UNIT_VALUE_INVALID] = &_error_OB_RESOURCE_UNIT_VALUE_INVALID;
 | 
						|
    _errors[-OB_LS_EXIST] = &_error_OB_LS_EXIST;
 | 
						|
    _errors[-OB_DEVICE_EXIST] = &_error_OB_DEVICE_EXIST;
 | 
						|
    _errors[-OB_DEVICE_NOT_EXIST] = &_error_OB_DEVICE_NOT_EXIST;
 | 
						|
    _errors[-OB_LS_REPLICA_TASK_RESULT_UNCERTAIN] = &_error_OB_LS_REPLICA_TASK_RESULT_UNCERTAIN;
 | 
						|
    _errors[-OB_WAIT_REPLAY_TIMEOUT] = &_error_OB_WAIT_REPLAY_TIMEOUT;
 | 
						|
    _errors[-OB_WAIT_TABLET_READY_TIMEOUT] = &_error_OB_WAIT_TABLET_READY_TIMEOUT;
 | 
						|
    _errors[-OB_FREEZE_SERVICE_EPOCH_MISMATCH] = &_error_OB_FREEZE_SERVICE_EPOCH_MISMATCH;
 | 
						|
    _errors[-OB_FROZEN_INFO_ALREADY_EXIST] = &_error_OB_FROZEN_INFO_ALREADY_EXIST;
 | 
						|
    _errors[-OB_DELETE_SERVER_NOT_ALLOWED] = &_error_OB_DELETE_SERVER_NOT_ALLOWED;
 | 
						|
    _errors[-OB_PACKET_STATUS_UNKNOWN] = &_error_OB_PACKET_STATUS_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_PARSER_INIT] = &_error_OB_ERR_PARSER_INIT;
 | 
						|
    _errors[-OB_ERR_PARSE_SQL] = &_error_OB_ERR_PARSE_SQL;
 | 
						|
    _errors[-OB_ERR_RESOLVE_SQL] = &_error_OB_ERR_RESOLVE_SQL;
 | 
						|
    _errors[-OB_ERR_GEN_PLAN] = &_error_OB_ERR_GEN_PLAN;
 | 
						|
    _errors[-OB_ERR_PARSER_SYNTAX] = &_error_OB_ERR_PARSER_SYNTAX;
 | 
						|
    _errors[-OB_ERR_COLUMN_SIZE] = &_error_OB_ERR_COLUMN_SIZE;
 | 
						|
    _errors[-OB_ERR_COLUMN_DUPLICATE] = &_error_OB_ERR_COLUMN_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_OPERATOR_UNKNOWN] = &_error_OB_ERR_OPERATOR_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_STAR_DUPLICATE] = &_error_OB_ERR_STAR_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_ID] = &_error_OB_ERR_ILLEGAL_ID;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_VALUE] = &_error_OB_ERR_ILLEGAL_VALUE;
 | 
						|
    _errors[-OB_ERR_COLUMN_AMBIGUOUS] = &_error_OB_ERR_COLUMN_AMBIGUOUS;
 | 
						|
    _errors[-OB_ERR_LOGICAL_PLAN_FAILD] = &_error_OB_ERR_LOGICAL_PLAN_FAILD;
 | 
						|
    _errors[-OB_ERR_SCHEMA_UNSET] = &_error_OB_ERR_SCHEMA_UNSET;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_NAME] = &_error_OB_ERR_ILLEGAL_NAME;
 | 
						|
    _errors[-OB_TABLE_NOT_EXIST] = &_error_OB_TABLE_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_TABLE_EXIST] = &_error_OB_ERR_TABLE_EXIST;
 | 
						|
    _errors[-OB_ERR_EXPR_UNKNOWN] = &_error_OB_ERR_EXPR_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_TYPE] = &_error_OB_ERR_ILLEGAL_TYPE;
 | 
						|
    _errors[-OB_ERR_PRIMARY_KEY_DUPLICATE] = &_error_OB_ERR_PRIMARY_KEY_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_KEY_NAME_DUPLICATE] = &_error_OB_ERR_KEY_NAME_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_CREATETIME_DUPLICATE] = &_error_OB_ERR_CREATETIME_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_MODIFYTIME_DUPLICATE] = &_error_OB_ERR_MODIFYTIME_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_INDEX] = &_error_OB_ERR_ILLEGAL_INDEX;
 | 
						|
    _errors[-OB_ERR_INVALID_SCHEMA] = &_error_OB_ERR_INVALID_SCHEMA;
 | 
						|
    _errors[-OB_ERR_INSERT_NULL_ROWKEY] = &_error_OB_ERR_INSERT_NULL_ROWKEY;
 | 
						|
    _errors[-OB_ERR_COLUMN_NOT_FOUND] = &_error_OB_ERR_COLUMN_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_DELETE_NULL_ROWKEY] = &_error_OB_ERR_DELETE_NULL_ROWKEY;
 | 
						|
    _errors[-OB_ERR_USER_EMPTY] = &_error_OB_ERR_USER_EMPTY;
 | 
						|
    _errors[-OB_ERR_USER_NOT_EXIST] = &_error_OB_ERR_USER_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_NO_PRIVILEGE] = &_error_OB_ERR_NO_PRIVILEGE;
 | 
						|
    _errors[-OB_ERR_NO_AVAILABLE_PRIVILEGE_ENTRY] = &_error_OB_ERR_NO_AVAILABLE_PRIVILEGE_ENTRY;
 | 
						|
    _errors[-OB_ERR_WRONG_PASSWORD] = &_error_OB_ERR_WRONG_PASSWORD;
 | 
						|
    _errors[-OB_ERR_USER_IS_LOCKED] = &_error_OB_ERR_USER_IS_LOCKED;
 | 
						|
    _errors[-OB_ERR_UPDATE_ROWKEY_COLUMN] = &_error_OB_ERR_UPDATE_ROWKEY_COLUMN;
 | 
						|
    _errors[-OB_ERR_UPDATE_JOIN_COLUMN] = &_error_OB_ERR_UPDATE_JOIN_COLUMN;
 | 
						|
    _errors[-OB_ERR_INVALID_COLUMN_NUM] = &_error_OB_ERR_INVALID_COLUMN_NUM;
 | 
						|
    _errors[-OB_ERR_PREPARE_STMT_NOT_FOUND] = &_error_OB_ERR_PREPARE_STMT_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_SYS_VARIABLE_UNKNOWN] = &_error_OB_ERR_SYS_VARIABLE_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_OLDER_PRIVILEGE_VERSION] = &_error_OB_ERR_OLDER_PRIVILEGE_VERSION;
 | 
						|
    _errors[-OB_ERR_LACK_OF_ROWKEY_COL] = &_error_OB_ERR_LACK_OF_ROWKEY_COL;
 | 
						|
    _errors[-OB_ERR_USER_EXIST] = &_error_OB_ERR_USER_EXIST;
 | 
						|
    _errors[-OB_ERR_PASSWORD_EMPTY] = &_error_OB_ERR_PASSWORD_EMPTY;
 | 
						|
    _errors[-OB_ERR_GRANT_PRIVILEGES_TO_CREATE_TABLE] = &_error_OB_ERR_GRANT_PRIVILEGES_TO_CREATE_TABLE;
 | 
						|
    _errors[-OB_ERR_WRONG_DYNAMIC_PARAM] = &_error_OB_ERR_WRONG_DYNAMIC_PARAM;
 | 
						|
    _errors[-OB_ERR_PARAM_SIZE] = &_error_OB_ERR_PARAM_SIZE;
 | 
						|
    _errors[-OB_ERR_FUNCTION_UNKNOWN] = &_error_OB_ERR_FUNCTION_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_CREAT_MODIFY_TIME_COLUMN] = &_error_OB_ERR_CREAT_MODIFY_TIME_COLUMN;
 | 
						|
    _errors[-OB_ERR_MODIFY_PRIMARY_KEY] = &_error_OB_ERR_MODIFY_PRIMARY_KEY;
 | 
						|
    _errors[-OB_ERR_PARAM_DUPLICATE] = &_error_OB_ERR_PARAM_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_SESSIONS] = &_error_OB_ERR_TOO_MANY_SESSIONS;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_PS] = &_error_OB_ERR_TOO_MANY_PS;
 | 
						|
    _errors[-OB_ERR_HINT_UNKNOWN] = &_error_OB_ERR_HINT_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_WHEN_UNSATISFIED] = &_error_OB_ERR_WHEN_UNSATISFIED;
 | 
						|
    _errors[-OB_ERR_QUERY_INTERRUPTED] = &_error_OB_ERR_QUERY_INTERRUPTED;
 | 
						|
    _errors[-OB_ERR_SESSION_INTERRUPTED] = &_error_OB_ERR_SESSION_INTERRUPTED;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_SESSION_ID] = &_error_OB_ERR_UNKNOWN_SESSION_ID;
 | 
						|
    _errors[-OB_ERR_PROTOCOL_NOT_RECOGNIZE] = &_error_OB_ERR_PROTOCOL_NOT_RECOGNIZE;
 | 
						|
    _errors[-OB_ERR_WRITE_AUTH_ERROR] = &_error_OB_ERR_WRITE_AUTH_ERROR;
 | 
						|
    _errors[-OB_ERR_PARSE_JOIN_INFO] = &_error_OB_ERR_PARSE_JOIN_INFO;
 | 
						|
    _errors[-OB_ERR_ALTER_INDEX_COLUMN] = &_error_OB_ERR_ALTER_INDEX_COLUMN;
 | 
						|
    _errors[-OB_ERR_MODIFY_INDEX_TABLE] = &_error_OB_ERR_MODIFY_INDEX_TABLE;
 | 
						|
    _errors[-OB_ERR_INDEX_UNAVAILABLE] = &_error_OB_ERR_INDEX_UNAVAILABLE;
 | 
						|
    _errors[-OB_ERR_NOP_VALUE] = &_error_OB_ERR_NOP_VALUE;
 | 
						|
    _errors[-OB_ERR_PS_TOO_MANY_PARAM] = &_error_OB_ERR_PS_TOO_MANY_PARAM;
 | 
						|
    _errors[-OB_ERR_READ_ONLY] = &_error_OB_ERR_READ_ONLY;
 | 
						|
    _errors[-OB_ERR_INVALID_TYPE_FOR_OP] = &_error_OB_ERR_INVALID_TYPE_FOR_OP;
 | 
						|
    _errors[-OB_ERR_CAST_VARCHAR_TO_BOOL] = &_error_OB_ERR_CAST_VARCHAR_TO_BOOL;
 | 
						|
    _errors[-OB_ERR_CAST_VARCHAR_TO_NUMBER] = &_error_OB_ERR_CAST_VARCHAR_TO_NUMBER;
 | 
						|
    _errors[-OB_ERR_CAST_VARCHAR_TO_TIME] = &_error_OB_ERR_CAST_VARCHAR_TO_TIME;
 | 
						|
    _errors[-OB_ERR_CAST_NUMBER_OVERFLOW] = &_error_OB_ERR_CAST_NUMBER_OVERFLOW;
 | 
						|
    _errors[-OB_INTEGER_PRECISION_OVERFLOW] = &_error_OB_INTEGER_PRECISION_OVERFLOW;
 | 
						|
    _errors[-OB_DECIMAL_PRECISION_OVERFLOW] = &_error_OB_DECIMAL_PRECISION_OVERFLOW;
 | 
						|
    _errors[-OB_SCHEMA_NUMBER_PRECISION_OVERFLOW] = &_error_OB_SCHEMA_NUMBER_PRECISION_OVERFLOW;
 | 
						|
    _errors[-OB_SCHEMA_NUMBER_SCALE_OVERFLOW] = &_error_OB_SCHEMA_NUMBER_SCALE_OVERFLOW;
 | 
						|
    _errors[-OB_ERR_INDEX_UNKNOWN] = &_error_OB_ERR_INDEX_UNKNOWN;
 | 
						|
    _errors[-OB_NUMERIC_OVERFLOW] = &_error_OB_NUMERIC_OVERFLOW;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_JOIN_TABLES] = &_error_OB_ERR_TOO_MANY_JOIN_TABLES;
 | 
						|
    _errors[-OB_ERR_DDL_ON_REMOTE_DATABASE] = &_error_OB_ERR_DDL_ON_REMOTE_DATABASE;
 | 
						|
    _errors[-OB_ERR_MISSING_KEYWORD] = &_error_OB_ERR_MISSING_KEYWORD;
 | 
						|
    _errors[-OB_ERR_DATABASE_LINK_EXPECTED] = &_error_OB_ERR_DATABASE_LINK_EXPECTED;
 | 
						|
    _errors[-OB_ERR_VARCHAR_TOO_LONG] = &_error_OB_ERR_VARCHAR_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_SYS_CONFIG_UNKNOWN] = &_error_OB_ERR_SYS_CONFIG_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_LOCAL_VARIABLE] = &_error_OB_ERR_LOCAL_VARIABLE;
 | 
						|
    _errors[-OB_ERR_GLOBAL_VARIABLE] = &_error_OB_ERR_GLOBAL_VARIABLE;
 | 
						|
    _errors[-OB_ERR_VARIABLE_IS_READONLY] = &_error_OB_ERR_VARIABLE_IS_READONLY;
 | 
						|
    _errors[-OB_ERR_INCORRECT_GLOBAL_LOCAL_VAR] = &_error_OB_ERR_INCORRECT_GLOBAL_LOCAL_VAR;
 | 
						|
    _errors[-OB_ERR_EXPIRE_INFO_TOO_LONG] = &_error_OB_ERR_EXPIRE_INFO_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_EXPIRE_COND_TOO_LONG] = &_error_OB_ERR_EXPIRE_COND_TOO_LONG;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_EXTRACT] = &_error_OB_INVALID_ARGUMENT_FOR_EXTRACT;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_IS] = &_error_OB_INVALID_ARGUMENT_FOR_IS;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_LENGTH] = &_error_OB_INVALID_ARGUMENT_FOR_LENGTH;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_SUBSTR] = &_error_OB_INVALID_ARGUMENT_FOR_SUBSTR;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_TIME_TO_USEC] = &_error_OB_INVALID_ARGUMENT_FOR_TIME_TO_USEC;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_USEC_TO_TIME] = &_error_OB_INVALID_ARGUMENT_FOR_USEC_TO_TIME;
 | 
						|
    _errors[-OB_ERR_USER_VARIABLE_UNKNOWN] = &_error_OB_ERR_USER_VARIABLE_UNKNOWN;
 | 
						|
    _errors[-OB_ILLEGAL_USAGE_OF_MERGING_FROZEN_TIME] = &_error_OB_ILLEGAL_USAGE_OF_MERGING_FROZEN_TIME;
 | 
						|
    _errors[-OB_INVALID_NUMERIC] = &_error_OB_INVALID_NUMERIC;
 | 
						|
    _errors[-OB_ERR_REGEXP_ERROR] = &_error_OB_ERR_REGEXP_ERROR;
 | 
						|
    _errors[-OB_SQL_LOG_OP_SETCHILD_OVERFLOW] = &_error_OB_SQL_LOG_OP_SETCHILD_OVERFLOW;
 | 
						|
    _errors[-OB_SQL_EXPLAIN_FAILED] = &_error_OB_SQL_EXPLAIN_FAILED;
 | 
						|
    _errors[-OB_SQL_OPT_COPY_OP_FAILED] = &_error_OB_SQL_OPT_COPY_OP_FAILED;
 | 
						|
    _errors[-OB_SQL_OPT_GEN_PLAN_FALIED] = &_error_OB_SQL_OPT_GEN_PLAN_FALIED;
 | 
						|
    _errors[-OB_SQL_OPT_CREATE_RAWEXPR_FAILED] = &_error_OB_SQL_OPT_CREATE_RAWEXPR_FAILED;
 | 
						|
    _errors[-OB_SQL_OPT_JOIN_ORDER_FAILED] = &_error_OB_SQL_OPT_JOIN_ORDER_FAILED;
 | 
						|
    _errors[-OB_SQL_OPT_ERROR] = &_error_OB_SQL_OPT_ERROR;
 | 
						|
    _errors[-OB_ERR_OCI_INIT_TIMEZONE] = &_error_OB_ERR_OCI_INIT_TIMEZONE;
 | 
						|
    _errors[-OB_ERR_ZLIB_DATA] = &_error_OB_ERR_ZLIB_DATA;
 | 
						|
    _errors[-OB_SQL_RESOLVER_NO_MEMORY] = &_error_OB_SQL_RESOLVER_NO_MEMORY;
 | 
						|
    _errors[-OB_SQL_DML_ONLY] = &_error_OB_SQL_DML_ONLY;
 | 
						|
    _errors[-OB_ERR_NO_GRANT] = &_error_OB_ERR_NO_GRANT;
 | 
						|
    _errors[-OB_ERR_NO_DB_SELECTED] = &_error_OB_ERR_NO_DB_SELECTED;
 | 
						|
    _errors[-OB_SQL_PC_OVERFLOW] = &_error_OB_SQL_PC_OVERFLOW;
 | 
						|
    _errors[-OB_SQL_PC_PLAN_DUPLICATE] = &_error_OB_SQL_PC_PLAN_DUPLICATE;
 | 
						|
    _errors[-OB_SQL_PC_PLAN_EXPIRE] = &_error_OB_SQL_PC_PLAN_EXPIRE;
 | 
						|
    _errors[-OB_SQL_PC_NOT_EXIST] = &_error_OB_SQL_PC_NOT_EXIST;
 | 
						|
    _errors[-OB_SQL_PARAMS_LIMIT] = &_error_OB_SQL_PARAMS_LIMIT;
 | 
						|
    _errors[-OB_SQL_PC_PLAN_SIZE_LIMIT] = &_error_OB_SQL_PC_PLAN_SIZE_LIMIT;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_CHARSET] = &_error_OB_ERR_UNKNOWN_CHARSET;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_COLLATION] = &_error_OB_ERR_UNKNOWN_COLLATION;
 | 
						|
    _errors[-OB_ERR_COLLATION_MISMATCH] = &_error_OB_ERR_COLLATION_MISMATCH;
 | 
						|
    _errors[-OB_ERR_WRONG_VALUE_FOR_VAR] = &_error_OB_ERR_WRONG_VALUE_FOR_VAR;
 | 
						|
    _errors[-OB_UNKNOWN_PARTITION] = &_error_OB_UNKNOWN_PARTITION;
 | 
						|
    _errors[-OB_PARTITION_NOT_MATCH] = &_error_OB_PARTITION_NOT_MATCH;
 | 
						|
    _errors[-OB_ER_PASSWD_LENGTH] = &_error_OB_ER_PASSWD_LENGTH;
 | 
						|
    _errors[-OB_ERR_INSERT_INNER_JOIN_COLUMN] = &_error_OB_ERR_INSERT_INNER_JOIN_COLUMN;
 | 
						|
    _errors[-OB_TENANT_NOT_IN_SERVER] = &_error_OB_TENANT_NOT_IN_SERVER;
 | 
						|
    _errors[-OB_TABLEGROUP_NOT_EXIST] = &_error_OB_TABLEGROUP_NOT_EXIST;
 | 
						|
    _errors[-OB_SUBQUERY_TOO_MANY_ROW] = &_error_OB_SUBQUERY_TOO_MANY_ROW;
 | 
						|
    _errors[-OB_ERR_BAD_DATABASE] = &_error_OB_ERR_BAD_DATABASE;
 | 
						|
    _errors[-OB_CANNOT_USER] = &_error_OB_CANNOT_USER;
 | 
						|
    _errors[-OB_TENANT_EXIST] = &_error_OB_TENANT_EXIST;
 | 
						|
    _errors[-OB_TENANT_NOT_EXIST] = &_error_OB_TENANT_NOT_EXIST;
 | 
						|
    _errors[-OB_DATABASE_EXIST] = &_error_OB_DATABASE_EXIST;
 | 
						|
    _errors[-OB_TABLEGROUP_EXIST] = &_error_OB_TABLEGROUP_EXIST;
 | 
						|
    _errors[-OB_ERR_INVALID_TENANT_NAME] = &_error_OB_ERR_INVALID_TENANT_NAME;
 | 
						|
    _errors[-OB_EMPTY_TENANT] = &_error_OB_EMPTY_TENANT;
 | 
						|
    _errors[-OB_WRONG_DB_NAME] = &_error_OB_WRONG_DB_NAME;
 | 
						|
    _errors[-OB_WRONG_TABLE_NAME] = &_error_OB_WRONG_TABLE_NAME;
 | 
						|
    _errors[-OB_WRONG_COLUMN_NAME] = &_error_OB_WRONG_COLUMN_NAME;
 | 
						|
    _errors[-OB_ERR_COLUMN_SPEC] = &_error_OB_ERR_COLUMN_SPEC;
 | 
						|
    _errors[-OB_ERR_DB_DROP_EXISTS] = &_error_OB_ERR_DB_DROP_EXISTS;
 | 
						|
    _errors[-OB_ERR_DATA_TOO_LONG] = &_error_OB_ERR_DATA_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_WRONG_VALUE_COUNT_ON_ROW] = &_error_OB_ERR_WRONG_VALUE_COUNT_ON_ROW;
 | 
						|
    _errors[-OB_ERR_CREATE_USER_WITH_GRANT] = &_error_OB_ERR_CREATE_USER_WITH_GRANT;
 | 
						|
    _errors[-OB_ERR_NO_DB_PRIVILEGE] = &_error_OB_ERR_NO_DB_PRIVILEGE;
 | 
						|
    _errors[-OB_ERR_NO_TABLE_PRIVILEGE] = &_error_OB_ERR_NO_TABLE_PRIVILEGE;
 | 
						|
    _errors[-OB_INVALID_ON_UPDATE] = &_error_OB_INVALID_ON_UPDATE;
 | 
						|
    _errors[-OB_INVALID_DEFAULT] = &_error_OB_INVALID_DEFAULT;
 | 
						|
    _errors[-OB_ERR_UPDATE_TABLE_USED] = &_error_OB_ERR_UPDATE_TABLE_USED;
 | 
						|
    _errors[-OB_ERR_COULUMN_VALUE_NOT_MATCH] = &_error_OB_ERR_COULUMN_VALUE_NOT_MATCH;
 | 
						|
    _errors[-OB_ERR_INVALID_GROUP_FUNC_USE] = &_error_OB_ERR_INVALID_GROUP_FUNC_USE;
 | 
						|
    _errors[-OB_CANT_AGGREGATE_2COLLATIONS] = &_error_OB_CANT_AGGREGATE_2COLLATIONS;
 | 
						|
    _errors[-OB_ERR_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD] = &_error_OB_ERR_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_IDENT] = &_error_OB_ERR_TOO_LONG_IDENT;
 | 
						|
    _errors[-OB_ERR_WRONG_TYPE_FOR_VAR] = &_error_OB_ERR_WRONG_TYPE_FOR_VAR;
 | 
						|
    _errors[-OB_WRONG_USER_NAME_LENGTH] = &_error_OB_WRONG_USER_NAME_LENGTH;
 | 
						|
    _errors[-OB_ERR_PRIV_USAGE] = &_error_OB_ERR_PRIV_USAGE;
 | 
						|
    _errors[-OB_ILLEGAL_GRANT_FOR_TABLE] = &_error_OB_ILLEGAL_GRANT_FOR_TABLE;
 | 
						|
    _errors[-OB_ERR_REACH_AUTOINC_MAX] = &_error_OB_ERR_REACH_AUTOINC_MAX;
 | 
						|
    _errors[-OB_ERR_NO_TABLES_USED] = &_error_OB_ERR_NO_TABLES_USED;
 | 
						|
    _errors[-OB_CANT_REMOVE_ALL_FIELDS] = &_error_OB_CANT_REMOVE_ALL_FIELDS;
 | 
						|
    _errors[-OB_TOO_MANY_PARTITIONS_ERROR] = &_error_OB_TOO_MANY_PARTITIONS_ERROR;
 | 
						|
    _errors[-OB_NO_PARTS_ERROR] = &_error_OB_NO_PARTS_ERROR;
 | 
						|
    _errors[-OB_WRONG_SUB_KEY] = &_error_OB_WRONG_SUB_KEY;
 | 
						|
    _errors[-OB_KEY_PART_0] = &_error_OB_KEY_PART_0;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_TIME_ZONE] = &_error_OB_ERR_UNKNOWN_TIME_ZONE;
 | 
						|
    _errors[-OB_ERR_WRONG_AUTO_KEY] = &_error_OB_ERR_WRONG_AUTO_KEY;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_KEYS] = &_error_OB_ERR_TOO_MANY_KEYS;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_ROWKEY_COLUMNS] = &_error_OB_ERR_TOO_MANY_ROWKEY_COLUMNS;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_KEY_LENGTH] = &_error_OB_ERR_TOO_LONG_KEY_LENGTH;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_COLUMNS] = &_error_OB_ERR_TOO_MANY_COLUMNS;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_COLUMN_LENGTH] = &_error_OB_ERR_TOO_LONG_COLUMN_LENGTH;
 | 
						|
    _errors[-OB_ERR_TOO_BIG_ROWSIZE] = &_error_OB_ERR_TOO_BIG_ROWSIZE;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_TABLE] = &_error_OB_ERR_UNKNOWN_TABLE;
 | 
						|
    _errors[-OB_ERR_BAD_TABLE] = &_error_OB_ERR_BAD_TABLE;
 | 
						|
    _errors[-OB_ERR_TOO_BIG_SCALE] = &_error_OB_ERR_TOO_BIG_SCALE;
 | 
						|
    _errors[-OB_ERR_TOO_BIG_PRECISION] = &_error_OB_ERR_TOO_BIG_PRECISION;
 | 
						|
    _errors[-OB_ERR_M_BIGGER_THAN_D] = &_error_OB_ERR_M_BIGGER_THAN_D;
 | 
						|
    _errors[-OB_ERR_TOO_BIG_DISPLAYWIDTH] = &_error_OB_ERR_TOO_BIG_DISPLAYWIDTH;
 | 
						|
    _errors[-OB_WRONG_GROUP_FIELD] = &_error_OB_WRONG_GROUP_FIELD;
 | 
						|
    _errors[-OB_NON_UNIQ_ERROR] = &_error_OB_NON_UNIQ_ERROR;
 | 
						|
    _errors[-OB_ERR_NONUNIQ_TABLE] = &_error_OB_ERR_NONUNIQ_TABLE;
 | 
						|
    _errors[-OB_ERR_CANT_DROP_FIELD_OR_KEY] = &_error_OB_ERR_CANT_DROP_FIELD_OR_KEY;
 | 
						|
    _errors[-OB_ERR_MULTIPLE_PRI_KEY] = &_error_OB_ERR_MULTIPLE_PRI_KEY;
 | 
						|
    _errors[-OB_ERR_KEY_COLUMN_DOES_NOT_EXITS] = &_error_OB_ERR_KEY_COLUMN_DOES_NOT_EXITS;
 | 
						|
    _errors[-OB_ERR_AUTO_PARTITION_KEY] = &_error_OB_ERR_AUTO_PARTITION_KEY;
 | 
						|
    _errors[-OB_ERR_CANT_USE_OPTION_HERE] = &_error_OB_ERR_CANT_USE_OPTION_HERE;
 | 
						|
    _errors[-OB_ERR_WRONG_OBJECT] = &_error_OB_ERR_WRONG_OBJECT;
 | 
						|
    _errors[-OB_ERR_ON_RENAME] = &_error_OB_ERR_ON_RENAME;
 | 
						|
    _errors[-OB_ERR_WRONG_KEY_COLUMN] = &_error_OB_ERR_WRONG_KEY_COLUMN;
 | 
						|
    _errors[-OB_ERR_BAD_FIELD_ERROR] = &_error_OB_ERR_BAD_FIELD_ERROR;
 | 
						|
    _errors[-OB_ERR_WRONG_FIELD_WITH_GROUP] = &_error_OB_ERR_WRONG_FIELD_WITH_GROUP;
 | 
						|
    _errors[-OB_ERR_CANT_CHANGE_TX_CHARACTERISTICS] = &_error_OB_ERR_CANT_CHANGE_TX_CHARACTERISTICS;
 | 
						|
    _errors[-OB_ERR_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION] = &_error_OB_ERR_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION;
 | 
						|
    _errors[-OB_ERR_MIX_OF_GROUP_FUNC_AND_FIELDS] = &_error_OB_ERR_MIX_OF_GROUP_FUNC_AND_FIELDS;
 | 
						|
    _errors[-OB_ERR_TRUNCATED_WRONG_VALUE] = &_error_OB_ERR_TRUNCATED_WRONG_VALUE;
 | 
						|
    _errors[-OB_ERR_WRONG_IDENT_NAME] = &_error_OB_ERR_WRONG_IDENT_NAME;
 | 
						|
    _errors[-OB_WRONG_NAME_FOR_INDEX] = &_error_OB_WRONG_NAME_FOR_INDEX;
 | 
						|
    _errors[-OB_ILLEGAL_REFERENCE] = &_error_OB_ILLEGAL_REFERENCE;
 | 
						|
    _errors[-OB_REACH_MEMORY_LIMIT] = &_error_OB_REACH_MEMORY_LIMIT;
 | 
						|
    _errors[-OB_ERR_PASSWORD_FORMAT] = &_error_OB_ERR_PASSWORD_FORMAT;
 | 
						|
    _errors[-OB_ERR_NON_UPDATABLE_TABLE] = &_error_OB_ERR_NON_UPDATABLE_TABLE;
 | 
						|
    _errors[-OB_ERR_WARN_DATA_OUT_OF_RANGE] = &_error_OB_ERR_WARN_DATA_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_WRONG_EXPR_IN_PARTITION_FUNC_ERROR] = &_error_OB_ERR_WRONG_EXPR_IN_PARTITION_FUNC_ERROR;
 | 
						|
    _errors[-OB_ERR_VIEW_INVALID] = &_error_OB_ERR_VIEW_INVALID;
 | 
						|
    _errors[-OB_ERR_OPTION_PREVENTS_STATEMENT] = &_error_OB_ERR_OPTION_PREVENTS_STATEMENT;
 | 
						|
    _errors[-OB_ERR_DB_READ_ONLY] = &_error_OB_ERR_DB_READ_ONLY;
 | 
						|
    _errors[-OB_ERR_TABLE_READ_ONLY] = &_error_OB_ERR_TABLE_READ_ONLY;
 | 
						|
    _errors[-OB_ERR_LOCK_OR_ACTIVE_TRANSACTION] = &_error_OB_ERR_LOCK_OR_ACTIVE_TRANSACTION;
 | 
						|
    _errors[-OB_ERR_SAME_NAME_PARTITION_FIELD] = &_error_OB_ERR_SAME_NAME_PARTITION_FIELD;
 | 
						|
    _errors[-OB_ERR_TABLENAME_NOT_ALLOWED_HERE] = &_error_OB_ERR_TABLENAME_NOT_ALLOWED_HERE;
 | 
						|
    _errors[-OB_ERR_VIEW_RECURSIVE] = &_error_OB_ERR_VIEW_RECURSIVE;
 | 
						|
    _errors[-OB_ERR_QUALIFIER] = &_error_OB_ERR_QUALIFIER;
 | 
						|
    _errors[-OB_ERR_WRONG_VALUE] = &_error_OB_ERR_WRONG_VALUE;
 | 
						|
    _errors[-OB_ERR_VIEW_WRONG_LIST] = &_error_OB_ERR_VIEW_WRONG_LIST;
 | 
						|
    _errors[-OB_SYS_VARS_MAYBE_DIFF_VERSION] = &_error_OB_SYS_VARS_MAYBE_DIFF_VERSION;
 | 
						|
    _errors[-OB_ERR_AUTO_INCREMENT_CONFLICT] = &_error_OB_ERR_AUTO_INCREMENT_CONFLICT;
 | 
						|
    _errors[-OB_ERR_TASK_SKIPPED] = &_error_OB_ERR_TASK_SKIPPED;
 | 
						|
    _errors[-OB_ERR_NAME_BECOMES_EMPTY] = &_error_OB_ERR_NAME_BECOMES_EMPTY;
 | 
						|
    _errors[-OB_ERR_REMOVED_SPACES] = &_error_OB_ERR_REMOVED_SPACES;
 | 
						|
    _errors[-OB_WARN_ADD_AUTOINCREMENT_COLUMN] = &_error_OB_WARN_ADD_AUTOINCREMENT_COLUMN;
 | 
						|
    _errors[-OB_WARN_CHAMGE_NULL_ATTRIBUTE] = &_error_OB_WARN_CHAMGE_NULL_ATTRIBUTE;
 | 
						|
    _errors[-OB_ERR_INVALID_CHARACTER_STRING] = &_error_OB_ERR_INVALID_CHARACTER_STRING;
 | 
						|
    _errors[-OB_ERR_KILL_DENIED] = &_error_OB_ERR_KILL_DENIED;
 | 
						|
    _errors[-OB_ERR_COLUMN_DEFINITION_AMBIGUOUS] = &_error_OB_ERR_COLUMN_DEFINITION_AMBIGUOUS;
 | 
						|
    _errors[-OB_ERR_EMPTY_QUERY] = &_error_OB_ERR_EMPTY_QUERY;
 | 
						|
    _errors[-OB_ERR_CUT_VALUE_GROUP_CONCAT] = &_error_OB_ERR_CUT_VALUE_GROUP_CONCAT;
 | 
						|
    _errors[-OB_ERR_FIELD_NOT_FOUND_PART] = &_error_OB_ERR_FIELD_NOT_FOUND_PART;
 | 
						|
    _errors[-OB_ERR_PRIMARY_CANT_HAVE_NULL] = &_error_OB_ERR_PRIMARY_CANT_HAVE_NULL;
 | 
						|
    _errors[-OB_ERR_PARTITION_FUNC_NOT_ALLOWED_ERROR] = &_error_OB_ERR_PARTITION_FUNC_NOT_ALLOWED_ERROR;
 | 
						|
    _errors[-OB_ERR_INVALID_BLOCK_SIZE] = &_error_OB_ERR_INVALID_BLOCK_SIZE;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_STORAGE_ENGINE] = &_error_OB_ERR_UNKNOWN_STORAGE_ENGINE;
 | 
						|
    _errors[-OB_ERR_TENANT_IS_LOCKED] = &_error_OB_ERR_TENANT_IS_LOCKED;
 | 
						|
    _errors[-OB_EER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF] = &_error_OB_EER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF;
 | 
						|
    _errors[-OB_ERR_PARTITION_FUNCTION_IS_NOT_ALLOWED] = &_error_OB_ERR_PARTITION_FUNCTION_IS_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_AGGREGATE_ORDER_FOR_UNION] = &_error_OB_ERR_AGGREGATE_ORDER_FOR_UNION;
 | 
						|
    _errors[-OB_ERR_OUTLINE_EXIST] = &_error_OB_ERR_OUTLINE_EXIST;
 | 
						|
    _errors[-OB_OUTLINE_NOT_EXIST] = &_error_OB_OUTLINE_NOT_EXIST;
 | 
						|
    _errors[-OB_WARN_OPTION_BELOW_LIMIT] = &_error_OB_WARN_OPTION_BELOW_LIMIT;
 | 
						|
    _errors[-OB_INVALID_OUTLINE] = &_error_OB_INVALID_OUTLINE;
 | 
						|
    _errors[-OB_REACH_MAX_CONCURRENT_NUM] = &_error_OB_REACH_MAX_CONCURRENT_NUM;
 | 
						|
    _errors[-OB_ERR_OPERATION_ON_RECYCLE_OBJECT] = &_error_OB_ERR_OPERATION_ON_RECYCLE_OBJECT;
 | 
						|
    _errors[-OB_ERR_OBJECT_NOT_IN_RECYCLEBIN] = &_error_OB_ERR_OBJECT_NOT_IN_RECYCLEBIN;
 | 
						|
    _errors[-OB_ERR_CON_COUNT_ERROR] = &_error_OB_ERR_CON_COUNT_ERROR;
 | 
						|
    _errors[-OB_ERR_OUTLINE_CONTENT_EXIST] = &_error_OB_ERR_OUTLINE_CONTENT_EXIST;
 | 
						|
    _errors[-OB_ERR_OUTLINE_MAX_CONCURRENT_EXIST] = &_error_OB_ERR_OUTLINE_MAX_CONCURRENT_EXIST;
 | 
						|
    _errors[-OB_ERR_VALUES_IS_NOT_INT_TYPE_ERROR] = &_error_OB_ERR_VALUES_IS_NOT_INT_TYPE_ERROR;
 | 
						|
    _errors[-OB_ERR_WRONG_TYPE_COLUMN_VALUE_ERROR] = &_error_OB_ERR_WRONG_TYPE_COLUMN_VALUE_ERROR;
 | 
						|
    _errors[-OB_ERR_PARTITION_COLUMN_LIST_ERROR] = &_error_OB_ERR_PARTITION_COLUMN_LIST_ERROR;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_VALUES_ERROR] = &_error_OB_ERR_TOO_MANY_VALUES_ERROR;
 | 
						|
    _errors[-OB_ERR_PARTITION_VALUE_ERROR] = &_error_OB_ERR_PARTITION_VALUE_ERROR;
 | 
						|
    _errors[-OB_ERR_PARTITION_INTERVAL_ERROR] = &_error_OB_ERR_PARTITION_INTERVAL_ERROR;
 | 
						|
    _errors[-OB_ERR_SAME_NAME_PARTITION] = &_error_OB_ERR_SAME_NAME_PARTITION;
 | 
						|
    _errors[-OB_ERR_RANGE_NOT_INCREASING_ERROR] = &_error_OB_ERR_RANGE_NOT_INCREASING_ERROR;
 | 
						|
    _errors[-OB_ERR_PARSE_PARTITION_RANGE] = &_error_OB_ERR_PARSE_PARTITION_RANGE;
 | 
						|
    _errors[-OB_ERR_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF] = &_error_OB_ERR_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF;
 | 
						|
    _errors[-OB_NO_PARTITION_FOR_GIVEN_VALUE] = &_error_OB_NO_PARTITION_FOR_GIVEN_VALUE;
 | 
						|
    _errors[-OB_EER_NULL_IN_VALUES_LESS_THAN] = &_error_OB_EER_NULL_IN_VALUES_LESS_THAN;
 | 
						|
    _errors[-OB_ERR_PARTITION_CONST_DOMAIN_ERROR] = &_error_OB_ERR_PARTITION_CONST_DOMAIN_ERROR;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_PARTITION_FUNC_FIELDS] = &_error_OB_ERR_TOO_MANY_PARTITION_FUNC_FIELDS;
 | 
						|
    _errors[-OB_ERR_BAD_FT_COLUMN] = &_error_OB_ERR_BAD_FT_COLUMN;
 | 
						|
    _errors[-OB_ERR_KEY_DOES_NOT_EXISTS] = &_error_OB_ERR_KEY_DOES_NOT_EXISTS;
 | 
						|
    _errors[-OB_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN] = &_error_OB_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN;
 | 
						|
    _errors[-OB_ERR_BAD_CTXCAT_COLUMN] = &_error_OB_ERR_BAD_CTXCAT_COLUMN;
 | 
						|
    _errors[-OB_ERR_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN] = &_error_OB_ERR_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN;
 | 
						|
    _errors[-OB_ERR_DEPENDENT_BY_GENERATED_COLUMN] = &_error_OB_ERR_DEPENDENT_BY_GENERATED_COLUMN;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_ROWS] = &_error_OB_ERR_TOO_MANY_ROWS;
 | 
						|
    _errors[-OB_WRONG_FIELD_TERMINATORS] = &_error_OB_WRONG_FIELD_TERMINATORS;
 | 
						|
    _errors[-OB_NO_READABLE_REPLICA] = &_error_OB_NO_READABLE_REPLICA;
 | 
						|
    _errors[-OB_ERR_UNEXPECTED_TZ_TRANSITION] = &_error_OB_ERR_UNEXPECTED_TZ_TRANSITION;
 | 
						|
    _errors[-OB_ERR_SYNONYM_EXIST] = &_error_OB_ERR_SYNONYM_EXIST;
 | 
						|
    _errors[-OB_SYNONYM_NOT_EXIST] = &_error_OB_SYNONYM_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_MISS_ORDER_BY_EXPR] = &_error_OB_ERR_MISS_ORDER_BY_EXPR;
 | 
						|
    _errors[-OB_ERR_NOT_CONST_EXPR] = &_error_OB_ERR_NOT_CONST_EXPR;
 | 
						|
    _errors[-OB_ERR_PARTITION_MGMT_ON_NONPARTITIONED] = &_error_OB_ERR_PARTITION_MGMT_ON_NONPARTITIONED;
 | 
						|
    _errors[-OB_ERR_DROP_PARTITION_NON_EXISTENT] = &_error_OB_ERR_DROP_PARTITION_NON_EXISTENT;
 | 
						|
    _errors[-OB_ERR_PARTITION_MGMT_ON_TWOPART_TABLE] = &_error_OB_ERR_PARTITION_MGMT_ON_TWOPART_TABLE;
 | 
						|
    _errors[-OB_ERR_ONLY_ON_RANGE_LIST_PARTITION] = &_error_OB_ERR_ONLY_ON_RANGE_LIST_PARTITION;
 | 
						|
    _errors[-OB_ERR_DROP_LAST_PARTITION] = &_error_OB_ERR_DROP_LAST_PARTITION;
 | 
						|
    _errors[-OB_ERR_PARALLEL_SERVERS_TARGET_NOT_ENOUGH] = &_error_OB_ERR_PARALLEL_SERVERS_TARGET_NOT_ENOUGH;
 | 
						|
    _errors[-OB_ERR_IGNORE_USER_HOST_NAME] = &_error_OB_ERR_IGNORE_USER_HOST_NAME;
 | 
						|
    _errors[-OB_IGNORE_SQL_IN_RESTORE] = &_error_OB_IGNORE_SQL_IN_RESTORE;
 | 
						|
    _errors[-OB_ERR_TEMPORARY_TABLE_WITH_PARTITION] = &_error_OB_ERR_TEMPORARY_TABLE_WITH_PARTITION;
 | 
						|
    _errors[-OB_ERR_INVALID_COLUMN_ID] = &_error_OB_ERR_INVALID_COLUMN_ID;
 | 
						|
    _errors[-OB_SYNC_DDL_DUPLICATE] = &_error_OB_SYNC_DDL_DUPLICATE;
 | 
						|
    _errors[-OB_SYNC_DDL_ERROR] = &_error_OB_SYNC_DDL_ERROR;
 | 
						|
    _errors[-OB_ERR_ROW_IS_REFERENCED] = &_error_OB_ERR_ROW_IS_REFERENCED;
 | 
						|
    _errors[-OB_ERR_NO_REFERENCED_ROW] = &_error_OB_ERR_NO_REFERENCED_ROW;
 | 
						|
    _errors[-OB_ERR_FUNC_RESULT_TOO_LARGE] = &_error_OB_ERR_FUNC_RESULT_TOO_LARGE;
 | 
						|
    _errors[-OB_ERR_CANNOT_ADD_FOREIGN] = &_error_OB_ERR_CANNOT_ADD_FOREIGN;
 | 
						|
    _errors[-OB_ERR_WRONG_FK_DEF] = &_error_OB_ERR_WRONG_FK_DEF;
 | 
						|
    _errors[-OB_ERR_INVALID_CHILD_COLUMN_LENGTH_FK] = &_error_OB_ERR_INVALID_CHILD_COLUMN_LENGTH_FK;
 | 
						|
    _errors[-OB_ERR_ALTER_COLUMN_FK] = &_error_OB_ERR_ALTER_COLUMN_FK;
 | 
						|
    _errors[-OB_ERR_CONNECT_BY_REQUIRED] = &_error_OB_ERR_CONNECT_BY_REQUIRED;
 | 
						|
    _errors[-OB_ERR_INVALID_PSEUDO_COLUMN_PLACE] = &_error_OB_ERR_INVALID_PSEUDO_COLUMN_PLACE;
 | 
						|
    _errors[-OB_ERR_NOCYCLE_REQUIRED] = &_error_OB_ERR_NOCYCLE_REQUIRED;
 | 
						|
    _errors[-OB_ERR_CONNECT_BY_LOOP] = &_error_OB_ERR_CONNECT_BY_LOOP;
 | 
						|
    _errors[-OB_ERR_INVALID_SIBLINGS] = &_error_OB_ERR_INVALID_SIBLINGS;
 | 
						|
    _errors[-OB_ERR_INVALID_SEPARATOR] = &_error_OB_ERR_INVALID_SEPARATOR;
 | 
						|
    _errors[-OB_ERR_INVALID_SYNONYM_NAME] = &_error_OB_ERR_INVALID_SYNONYM_NAME;
 | 
						|
    _errors[-OB_ERR_LOOP_OF_SYNONYM] = &_error_OB_ERR_LOOP_OF_SYNONYM;
 | 
						|
    _errors[-OB_ERR_SYNONYM_SAME_AS_OBJECT] = &_error_OB_ERR_SYNONYM_SAME_AS_OBJECT;
 | 
						|
    _errors[-OB_ERR_SYNONYM_TRANSLATION_INVALID] = &_error_OB_ERR_SYNONYM_TRANSLATION_INVALID;
 | 
						|
    _errors[-OB_ERR_EXIST_OBJECT] = &_error_OB_ERR_EXIST_OBJECT;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_VALUE_FOR_TYPE] = &_error_OB_ERR_ILLEGAL_VALUE_FOR_TYPE;
 | 
						|
    _errors[-OB_ER_TOO_LONG_SET_ENUM_VALUE] = &_error_OB_ER_TOO_LONG_SET_ENUM_VALUE;
 | 
						|
    _errors[-OB_ER_DUPLICATED_VALUE_IN_TYPE] = &_error_OB_ER_DUPLICATED_VALUE_IN_TYPE;
 | 
						|
    _errors[-OB_ER_TOO_BIG_ENUM] = &_error_OB_ER_TOO_BIG_ENUM;
 | 
						|
    _errors[-OB_ERR_TOO_BIG_SET] = &_error_OB_ERR_TOO_BIG_SET;
 | 
						|
    _errors[-OB_ERR_WRONG_ROWID] = &_error_OB_ERR_WRONG_ROWID;
 | 
						|
    _errors[-OB_ERR_INVALID_WINDOW_FUNCTION_PLACE] = &_error_OB_ERR_INVALID_WINDOW_FUNCTION_PLACE;
 | 
						|
    _errors[-OB_ERR_PARSE_PARTITION_LIST] = &_error_OB_ERR_PARSE_PARTITION_LIST;
 | 
						|
    _errors[-OB_ERR_MULTIPLE_DEF_CONST_IN_LIST_PART] = &_error_OB_ERR_MULTIPLE_DEF_CONST_IN_LIST_PART;
 | 
						|
    _errors[-OB_ERR_INVALID_TIMEZONE_REGION_ID] = &_error_OB_ERR_INVALID_TIMEZONE_REGION_ID;
 | 
						|
    _errors[-OB_ERR_INVALID_HEX_NUMBER] = &_error_OB_ERR_INVALID_HEX_NUMBER;
 | 
						|
    _errors[-OB_ERR_WRONG_FUNC_ARGUMENTS_TYPE] = &_error_OB_ERR_WRONG_FUNC_ARGUMENTS_TYPE;
 | 
						|
    _errors[-OB_ERR_MULTI_UPDATE_KEY_CONFLICT] = &_error_OB_ERR_MULTI_UPDATE_KEY_CONFLICT;
 | 
						|
    _errors[-OB_ERR_INSUFFICIENT_PX_WORKER] = &_error_OB_ERR_INSUFFICIENT_PX_WORKER;
 | 
						|
    _errors[-OB_ERR_FOR_UPDATE_EXPR_NOT_ALLOWED] = &_error_OB_ERR_FOR_UPDATE_EXPR_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_WIN_FUNC_ARG_NOT_IN_PARTITION_BY] = &_error_OB_ERR_WIN_FUNC_ARG_NOT_IN_PARTITION_BY;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_STRING_IN_CONCAT] = &_error_OB_ERR_TOO_LONG_STRING_IN_CONCAT;
 | 
						|
    _errors[-OB_ERR_WRONG_TIMESTAMP_LTZ_COLUMN_VALUE_ERROR] = &_error_OB_ERR_WRONG_TIMESTAMP_LTZ_COLUMN_VALUE_ERROR;
 | 
						|
    _errors[-OB_ERR_UPD_CAUSE_PART_CHANGE] = &_error_OB_ERR_UPD_CAUSE_PART_CHANGE;
 | 
						|
    _errors[-OB_ERR_INVALID_TYPE_FOR_ARGUMENT] = &_error_OB_ERR_INVALID_TYPE_FOR_ARGUMENT;
 | 
						|
    _errors[-OB_ERR_FIELD_NOT_FOUND_IN_DATETIME_OR_INTERVAL] = &_error_OB_ERR_FIELD_NOT_FOUND_IN_DATETIME_OR_INTERVAL;
 | 
						|
    _errors[-OB_ERR_ADD_PART_BOUN_NOT_INC] = &_error_OB_ERR_ADD_PART_BOUN_NOT_INC;
 | 
						|
    _errors[-OB_ERR_DATA_TOO_LONG_IN_PART_CHECK] = &_error_OB_ERR_DATA_TOO_LONG_IN_PART_CHECK;
 | 
						|
    _errors[-OB_ERR_WRONG_TYPE_COLUMN_VALUE_V2_ERROR] = &_error_OB_ERR_WRONG_TYPE_COLUMN_VALUE_V2_ERROR;
 | 
						|
    _errors[-OB_CANT_AGGREGATE_3COLLATIONS] = &_error_OB_CANT_AGGREGATE_3COLLATIONS;
 | 
						|
    _errors[-OB_CANT_AGGREGATE_NCOLLATIONS] = &_error_OB_CANT_AGGREGATE_NCOLLATIONS;
 | 
						|
    _errors[-OB_ERR_DUPLICATED_UNIQUE_KEY] = &_error_OB_ERR_DUPLICATED_UNIQUE_KEY;
 | 
						|
    _errors[-OB_DOUBLE_OVERFLOW] = &_error_OB_DOUBLE_OVERFLOW;
 | 
						|
    _errors[-OB_ERR_NO_SYS_PRIVILEGE] = &_error_OB_ERR_NO_SYS_PRIVILEGE;
 | 
						|
    _errors[-OB_ERR_NO_LOGIN_PRIVILEGE] = &_error_OB_ERR_NO_LOGIN_PRIVILEGE;
 | 
						|
    _errors[-OB_ERR_CANNOT_REVOKE_PRIVILEGES_YOU_DID_NOT_GRANT] = &_error_OB_ERR_CANNOT_REVOKE_PRIVILEGES_YOU_DID_NOT_GRANT;
 | 
						|
    _errors[-OB_ERR_SYSTEM_PRIVILEGES_NOT_GRANTED_TO] = &_error_OB_ERR_SYSTEM_PRIVILEGES_NOT_GRANTED_TO;
 | 
						|
    _errors[-OB_ERR_ONLY_SELECT_AND_ALTER_PRIVILEGES_ARE_VALID_FOR_SEQUENCES] = &_error_OB_ERR_ONLY_SELECT_AND_ALTER_PRIVILEGES_ARE_VALID_FOR_SEQUENCES;
 | 
						|
    _errors[-OB_ERR_EXECUTE_PRIVILEGE_NOT_ALLOWED_FOR_TABLES] = &_error_OB_ERR_EXECUTE_PRIVILEGE_NOT_ALLOWED_FOR_TABLES;
 | 
						|
    _errors[-OB_ERR_ONLY_EXECUTE_AND_DEBUG_PRIVILEGES_ARE_VALID_FOR_PROCEDURES] = &_error_OB_ERR_ONLY_EXECUTE_AND_DEBUG_PRIVILEGES_ARE_VALID_FOR_PROCEDURES;
 | 
						|
    _errors[-OB_ERR_ONLY_EXECUTE_DEBUG_AND_UNDER_PRIVILEGES_ARE_VALID_FOR_TYPES] = &_error_OB_ERR_ONLY_EXECUTE_DEBUG_AND_UNDER_PRIVILEGES_ARE_VALID_FOR_TYPES;
 | 
						|
    _errors[-OB_ERR_ADMIN_OPTION_NOT_GRANTED_FOR_ROLE] = &_error_OB_ERR_ADMIN_OPTION_NOT_GRANTED_FOR_ROLE;
 | 
						|
    _errors[-OB_ERR_USER_OR_ROLE_DOES_NOT_EXIST] = &_error_OB_ERR_USER_OR_ROLE_DOES_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_MISSING_ON_KEYWORD] = &_error_OB_ERR_MISSING_ON_KEYWORD;
 | 
						|
    _errors[-OB_ERR_NO_GRANT_OPTION] = &_error_OB_ERR_NO_GRANT_OPTION;
 | 
						|
    _errors[-OB_ERR_ALTER_INDEX_AND_EXECUTE_NOT_ALLOWED_FOR_VIEWS] = &_error_OB_ERR_ALTER_INDEX_AND_EXECUTE_NOT_ALLOWED_FOR_VIEWS;
 | 
						|
    _errors[-OB_ERR_CIRCULAR_ROLE_GRANT_DETECTED] = &_error_OB_ERR_CIRCULAR_ROLE_GRANT_DETECTED;
 | 
						|
    _errors[-OB_ERR_INVALID_PRIVILEGE_ON_DIRECTORIES] = &_error_OB_ERR_INVALID_PRIVILEGE_ON_DIRECTORIES;
 | 
						|
    _errors[-OB_ERR_DIRECTORY_ACCESS_DENIED] = &_error_OB_ERR_DIRECTORY_ACCESS_DENIED;
 | 
						|
    _errors[-OB_ERR_MISSING_OR_INVALID_ROLE_NAME] = &_error_OB_ERR_MISSING_OR_INVALID_ROLE_NAME;
 | 
						|
    _errors[-OB_ERR_ROLE_NOT_GRANTED_OR_DOES_NOT_EXIST] = &_error_OB_ERR_ROLE_NOT_GRANTED_OR_DOES_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_DEFAULT_ROLE_NOT_GRANTED_TO_USER] = &_error_OB_ERR_DEFAULT_ROLE_NOT_GRANTED_TO_USER;
 | 
						|
    _errors[-OB_ERR_ROLE_NOT_GRANTED_TO] = &_error_OB_ERR_ROLE_NOT_GRANTED_TO;
 | 
						|
    _errors[-OB_ERR_CANNOT_GRANT_TO_A_ROLE_WITH_GRANT_OPTION] = &_error_OB_ERR_CANNOT_GRANT_TO_A_ROLE_WITH_GRANT_OPTION;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_USERNAME_IN_LIST] = &_error_OB_ERR_DUPLICATE_USERNAME_IN_LIST;
 | 
						|
    _errors[-OB_ERR_CANNOT_GRANT_STRING_TO_A_ROLE] = &_error_OB_ERR_CANNOT_GRANT_STRING_TO_A_ROLE;
 | 
						|
    _errors[-OB_ERR_CASCADE_CONSTRAINTS_MUST_BE_SPECIFIED_TO_PERFORM_THIS_REVOKE] = &_error_OB_ERR_CASCADE_CONSTRAINTS_MUST_BE_SPECIFIED_TO_PERFORM_THIS_REVOKE;
 | 
						|
    _errors[-OB_ERR_YOU_MAY_NOT_REVOKE_PRIVILEGES_FROM_YOURSELF] = &_error_OB_ERR_YOU_MAY_NOT_REVOKE_PRIVILEGES_FROM_YOURSELF;
 | 
						|
    _errors[-OB_ERR_MISS_ERR_LOG_MANDATORY_COLUMN] = &_error_OB_ERR_MISS_ERR_LOG_MANDATORY_COLUMN;
 | 
						|
    _errors[-OB_ERR_OBJECT_STRING_DOES_NOT_EXIST] = &_error_OB_ERR_OBJECT_STRING_DOES_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_RESULTANT_DATA_TYPE_OF_VIRTUAL_COLUMN_IS_NOT_SUPPORTED] = &_error_OB_ERR_RESULTANT_DATA_TYPE_OF_VIRTUAL_COLUMN_IS_NOT_SUPPORTED;
 | 
						|
    _errors[-OB_ERR_GET_STACKED_DIAGNOSTICS] = &_error_OB_ERR_GET_STACKED_DIAGNOSTICS;
 | 
						|
    _errors[-OB_DDL_SCHEMA_VERSION_NOT_MATCH] = &_error_OB_DDL_SCHEMA_VERSION_NOT_MATCH;
 | 
						|
    _errors[-OB_ERR_COLUMN_GROUP_DUPLICATE] = &_error_OB_ERR_COLUMN_GROUP_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_TEXT] = &_error_OB_ERR_INVALID_JSON_TEXT;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_TEXT_IN_PARAM] = &_error_OB_ERR_INVALID_JSON_TEXT_IN_PARAM;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_BINARY_DATA] = &_error_OB_ERR_INVALID_JSON_BINARY_DATA;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_PATH] = &_error_OB_ERR_INVALID_JSON_PATH;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_CHARSET] = &_error_OB_ERR_INVALID_JSON_CHARSET;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_CHARSET_IN_FUNCTION] = &_error_OB_ERR_INVALID_JSON_CHARSET_IN_FUNCTION;
 | 
						|
    _errors[-OB_ERR_INVALID_TYPE_FOR_JSON] = &_error_OB_ERR_INVALID_TYPE_FOR_JSON;
 | 
						|
    _errors[-OB_ERR_INVALID_CAST_TO_JSON] = &_error_OB_ERR_INVALID_CAST_TO_JSON;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_PATH_CHARSET] = &_error_OB_ERR_INVALID_JSON_PATH_CHARSET;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_PATH_WILDCARD] = &_error_OB_ERR_INVALID_JSON_PATH_WILDCARD;
 | 
						|
    _errors[-OB_ERR_JSON_VALUE_TOO_BIG] = &_error_OB_ERR_JSON_VALUE_TOO_BIG;
 | 
						|
    _errors[-OB_ERR_JSON_KEY_TOO_BIG] = &_error_OB_ERR_JSON_KEY_TOO_BIG;
 | 
						|
    _errors[-OB_ERR_JSON_USED_AS_KEY] = &_error_OB_ERR_JSON_USED_AS_KEY;
 | 
						|
    _errors[-OB_ERR_JSON_VACUOUS_PATH] = &_error_OB_ERR_JSON_VACUOUS_PATH;
 | 
						|
    _errors[-OB_ERR_JSON_BAD_ONE_OR_ALL_ARG] = &_error_OB_ERR_JSON_BAD_ONE_OR_ALL_ARG;
 | 
						|
    _errors[-OB_ERR_NUMERIC_JSON_VALUE_OUT_OF_RANGE] = &_error_OB_ERR_NUMERIC_JSON_VALUE_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_VALUE_FOR_CAST] = &_error_OB_ERR_INVALID_JSON_VALUE_FOR_CAST;
 | 
						|
    _errors[-OB_ERR_JSON_OUT_OF_DEPTH] = &_error_OB_ERR_JSON_OUT_OF_DEPTH;
 | 
						|
    _errors[-OB_ERR_JSON_DOCUMENT_NULL_KEY] = &_error_OB_ERR_JSON_DOCUMENT_NULL_KEY;
 | 
						|
    _errors[-OB_ERR_BLOB_CANT_HAVE_DEFAULT] = &_error_OB_ERR_BLOB_CANT_HAVE_DEFAULT;
 | 
						|
    _errors[-OB_ERR_INVALID_JSON_PATH_ARRAY_CELL] = &_error_OB_ERR_INVALID_JSON_PATH_ARRAY_CELL;
 | 
						|
    _errors[-OB_ERR_MISSING_JSON_VALUE] = &_error_OB_ERR_MISSING_JSON_VALUE;
 | 
						|
    _errors[-OB_ERR_MULTIPLE_JSON_VALUES] = &_error_OB_ERR_MULTIPLE_JSON_VALUES;
 | 
						|
    _errors[-OB_SQL_RETRY_SPM] = &_error_OB_SQL_RETRY_SPM;
 | 
						|
    _errors[-OB_OUTLINE_NOT_REPRODUCIBLE] = &_error_OB_OUTLINE_NOT_REPRODUCIBLE;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_TIMESTAMP_TO_SCN] = &_error_OB_INVALID_ARGUMENT_FOR_TIMESTAMP_TO_SCN;
 | 
						|
    _errors[-OB_INVALID_ARGUMENT_FOR_SCN_TO_TIMESTAMP] = &_error_OB_INVALID_ARGUMENT_FOR_SCN_TO_TIMESTAMP;
 | 
						|
    _errors[-OB_EER_WINDOW_NO_CHILD_PARTITIONING] = &_error_OB_EER_WINDOW_NO_CHILD_PARTITIONING;
 | 
						|
    _errors[-OB_EER_WINDOW_NO_INHERIT_FRAME] = &_error_OB_EER_WINDOW_NO_INHERIT_FRAME;
 | 
						|
    _errors[-OB_EER_WINDOW_NO_REDEFINE_ORDER_BY] = &_error_OB_EER_WINDOW_NO_REDEFINE_ORDER_BY;
 | 
						|
    _errors[-OB_ERR_SP_ALREADY_EXISTS] = &_error_OB_ERR_SP_ALREADY_EXISTS;
 | 
						|
    _errors[-OB_ERR_SP_DOES_NOT_EXIST] = &_error_OB_ERR_SP_DOES_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_SP_UNDECLARED_VAR] = &_error_OB_ERR_SP_UNDECLARED_VAR;
 | 
						|
    _errors[-OB_ERR_SP_UNDECLARED_TYPE] = &_error_OB_ERR_SP_UNDECLARED_TYPE;
 | 
						|
    _errors[-OB_ERR_SP_COND_MISMATCH] = &_error_OB_ERR_SP_COND_MISMATCH;
 | 
						|
    _errors[-OB_ERR_SP_LILABEL_MISMATCH] = &_error_OB_ERR_SP_LILABEL_MISMATCH;
 | 
						|
    _errors[-OB_ERR_SP_CURSOR_MISMATCH] = &_error_OB_ERR_SP_CURSOR_MISMATCH;
 | 
						|
    _errors[-OB_ERR_SP_DUP_PARAM] = &_error_OB_ERR_SP_DUP_PARAM;
 | 
						|
    _errors[-OB_ERR_SP_DUP_VAR] = &_error_OB_ERR_SP_DUP_VAR;
 | 
						|
    _errors[-OB_ERR_SP_DUP_TYPE] = &_error_OB_ERR_SP_DUP_TYPE;
 | 
						|
    _errors[-OB_ERR_SP_DUP_CONDITION] = &_error_OB_ERR_SP_DUP_CONDITION;
 | 
						|
    _errors[-OB_ERR_SP_DUP_LABEL] = &_error_OB_ERR_SP_DUP_LABEL;
 | 
						|
    _errors[-OB_ERR_SP_DUP_CURSOR] = &_error_OB_ERR_SP_DUP_CURSOR;
 | 
						|
    _errors[-OB_ERR_SP_INVALID_FETCH_ARG] = &_error_OB_ERR_SP_INVALID_FETCH_ARG;
 | 
						|
    _errors[-OB_ERR_SP_WRONG_ARG_NUM] = &_error_OB_ERR_SP_WRONG_ARG_NUM;
 | 
						|
    _errors[-OB_ERR_SP_UNHANDLED_EXCEPTION] = &_error_OB_ERR_SP_UNHANDLED_EXCEPTION;
 | 
						|
    _errors[-OB_ERR_SP_BAD_CONDITION_TYPE] = &_error_OB_ERR_SP_BAD_CONDITION_TYPE;
 | 
						|
    _errors[-OB_ERR_PACKAGE_ALREADY_EXISTS] = &_error_OB_ERR_PACKAGE_ALREADY_EXISTS;
 | 
						|
    _errors[-OB_ERR_PACKAGE_DOSE_NOT_EXIST] = &_error_OB_ERR_PACKAGE_DOSE_NOT_EXIST;
 | 
						|
    _errors[-OB_EER_UNKNOWN_STMT_HANDLER] = &_error_OB_EER_UNKNOWN_STMT_HANDLER;
 | 
						|
    _errors[-OB_ERR_INVALID_WINDOW_FUNC_USE] = &_error_OB_ERR_INVALID_WINDOW_FUNC_USE;
 | 
						|
    _errors[-OB_ERR_CONSTRAINT_DUPLICATE] = &_error_OB_ERR_CONSTRAINT_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_CONTRAINT_NOT_FOUND] = &_error_OB_ERR_CONTRAINT_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_ALTER_TABLE_ALTER_DUPLICATED_INDEX] = &_error_OB_ERR_ALTER_TABLE_ALTER_DUPLICATED_INDEX;
 | 
						|
    _errors[-OB_EER_INVALID_ARGUMENT_FOR_LOGARITHM] = &_error_OB_EER_INVALID_ARGUMENT_FOR_LOGARITHM;
 | 
						|
    _errors[-OB_ERR_REORGANIZE_OUTSIDE_RANGE] = &_error_OB_ERR_REORGANIZE_OUTSIDE_RANGE;
 | 
						|
    _errors[-OB_ER_SP_RECURSION_LIMIT] = &_error_OB_ER_SP_RECURSION_LIMIT;
 | 
						|
    _errors[-OB_ER_UNSUPPORTED_PS] = &_error_OB_ER_UNSUPPORTED_PS;
 | 
						|
    _errors[-OB_ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG] = &_error_OB_ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG;
 | 
						|
    _errors[-OB_ER_SP_NO_RECURSION] = &_error_OB_ER_SP_NO_RECURSION;
 | 
						|
    _errors[-OB_ER_SP_CASE_NOT_FOUND] = &_error_OB_ER_SP_CASE_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_INVALID_SPLIT_COUNT] = &_error_OB_ERR_INVALID_SPLIT_COUNT;
 | 
						|
    _errors[-OB_ERR_INVALID_SPLIT_GRAMMAR] = &_error_OB_ERR_INVALID_SPLIT_GRAMMAR;
 | 
						|
    _errors[-OB_ERR_MISS_VALUES] = &_error_OB_ERR_MISS_VALUES;
 | 
						|
    _errors[-OB_ERR_MISS_AT_VALUES] = &_error_OB_ERR_MISS_AT_VALUES;
 | 
						|
    _errors[-OB_ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG] = &_error_OB_ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG;
 | 
						|
    _errors[-OB_PC_GET_LOCATION_ERROR] = &_error_OB_PC_GET_LOCATION_ERROR;
 | 
						|
    _errors[-OB_PC_LOCK_CONFLICT] = &_error_OB_PC_LOCK_CONFLICT;
 | 
						|
    _errors[-OB_ER_SP_NO_RETSET] = &_error_OB_ER_SP_NO_RETSET;
 | 
						|
    _errors[-OB_ER_SP_NORETURNEND] = &_error_OB_ER_SP_NORETURNEND;
 | 
						|
    _errors[-OB_ERR_SP_DUP_HANDLER] = &_error_OB_ERR_SP_DUP_HANDLER;
 | 
						|
    _errors[-OB_ER_SP_NO_RECURSIVE_CREATE] = &_error_OB_ER_SP_NO_RECURSIVE_CREATE;
 | 
						|
    _errors[-OB_ER_SP_BADRETURN] = &_error_OB_ER_SP_BADRETURN;
 | 
						|
    _errors[-OB_ER_SP_BAD_CURSOR_SELECT] = &_error_OB_ER_SP_BAD_CURSOR_SELECT;
 | 
						|
    _errors[-OB_ER_SP_BAD_SQLSTATE] = &_error_OB_ER_SP_BAD_SQLSTATE;
 | 
						|
    _errors[-OB_ER_SP_VARCOND_AFTER_CURSHNDLR] = &_error_OB_ER_SP_VARCOND_AFTER_CURSHNDLR;
 | 
						|
    _errors[-OB_ER_SP_CURSOR_AFTER_HANDLER] = &_error_OB_ER_SP_CURSOR_AFTER_HANDLER;
 | 
						|
    _errors[-OB_ER_SP_WRONG_NAME] = &_error_OB_ER_SP_WRONG_NAME;
 | 
						|
    _errors[-OB_ER_SP_CURSOR_ALREADY_OPEN] = &_error_OB_ER_SP_CURSOR_ALREADY_OPEN;
 | 
						|
    _errors[-OB_ER_SP_CURSOR_NOT_OPEN] = &_error_OB_ER_SP_CURSOR_NOT_OPEN;
 | 
						|
    _errors[-OB_ER_SP_CANT_SET_AUTOCOMMIT] = &_error_OB_ER_SP_CANT_SET_AUTOCOMMIT;
 | 
						|
    _errors[-OB_ER_SP_NOT_VAR_ARG] = &_error_OB_ER_SP_NOT_VAR_ARG;
 | 
						|
    _errors[-OB_ER_SP_LILABEL_MISMATCH] = &_error_OB_ER_SP_LILABEL_MISMATCH;
 | 
						|
    _errors[-OB_ERR_TRUNCATE_ILLEGAL_FK] = &_error_OB_ERR_TRUNCATE_ILLEGAL_FK;
 | 
						|
    _errors[-OB_ERR_DUP_KEY] = &_error_OB_ERR_DUP_KEY;
 | 
						|
    _errors[-OB_ER_INVALID_USE_OF_NULL] = &_error_OB_ER_INVALID_USE_OF_NULL;
 | 
						|
    _errors[-OB_ERR_SPLIT_LIST_LESS_VALUE] = &_error_OB_ERR_SPLIT_LIST_LESS_VALUE;
 | 
						|
    _errors[-OB_ERR_ADD_PARTITION_TO_DEFAULT_LIST] = &_error_OB_ERR_ADD_PARTITION_TO_DEFAULT_LIST;
 | 
						|
    _errors[-OB_ERR_SPLIT_INTO_ONE_PARTITION] = &_error_OB_ERR_SPLIT_INTO_ONE_PARTITION;
 | 
						|
    _errors[-OB_ERR_NO_TENANT_PRIVILEGE] = &_error_OB_ERR_NO_TENANT_PRIVILEGE;
 | 
						|
    _errors[-OB_ERR_INVALID_PERCENTAGE] = &_error_OB_ERR_INVALID_PERCENTAGE;
 | 
						|
    _errors[-OB_ERR_COLLECT_HISTOGRAM] = &_error_OB_ERR_COLLECT_HISTOGRAM;
 | 
						|
    _errors[-OB_ER_TEMP_TABLE_IN_USE] = &_error_OB_ER_TEMP_TABLE_IN_USE;
 | 
						|
    _errors[-OB_ERR_INVALID_NLS_PARAMETER_STRING] = &_error_OB_ERR_INVALID_NLS_PARAMETER_STRING;
 | 
						|
    _errors[-OB_ERR_DATETIME_INTERVAL_PRECISION_OUT_OF_RANGE] = &_error_OB_ERR_DATETIME_INTERVAL_PRECISION_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_CMD_NOT_PROPERLY_ENDED] = &_error_OB_ERR_CMD_NOT_PROPERLY_ENDED;
 | 
						|
    _errors[-OB_ERR_INVALID_NUMBER_FORMAT_MODEL] = &_error_OB_ERR_INVALID_NUMBER_FORMAT_MODEL;
 | 
						|
    _errors[-OB_WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED] = &_error_OB_WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED;
 | 
						|
    _errors[-OB_WARN_AMBIGUOUS_FIELD_TERM] = &_error_OB_WARN_AMBIGUOUS_FIELD_TERM;
 | 
						|
    _errors[-OB_WARN_TOO_FEW_RECORDS] = &_error_OB_WARN_TOO_FEW_RECORDS;
 | 
						|
    _errors[-OB_WARN_TOO_MANY_RECORDS] = &_error_OB_WARN_TOO_MANY_RECORDS;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_VALUES] = &_error_OB_ERR_TOO_MANY_VALUES;
 | 
						|
    _errors[-OB_ERR_NOT_ENOUGH_VALUES] = &_error_OB_ERR_NOT_ENOUGH_VALUES;
 | 
						|
    _errors[-OB_ERR_MORE_THAN_ONE_ROW] = &_error_OB_ERR_MORE_THAN_ONE_ROW;
 | 
						|
    _errors[-OB_ERR_NOT_SUBQUERY] = &_error_OB_ERR_NOT_SUBQUERY;
 | 
						|
    _errors[-OB_INAPPROPRIATE_INTO] = &_error_OB_INAPPROPRIATE_INTO;
 | 
						|
    _errors[-OB_ERR_TABLE_IS_REFERENCED] = &_error_OB_ERR_TABLE_IS_REFERENCED;
 | 
						|
    _errors[-OB_ERR_QUALIFIER_EXISTS_FOR_USING_COLUMN] = &_error_OB_ERR_QUALIFIER_EXISTS_FOR_USING_COLUMN;
 | 
						|
    _errors[-OB_ERR_OUTER_JOIN_NESTED] = &_error_OB_ERR_OUTER_JOIN_NESTED;
 | 
						|
    _errors[-OB_ERR_MULTI_OUTER_JOIN_TABLE] = &_error_OB_ERR_MULTI_OUTER_JOIN_TABLE;
 | 
						|
    _errors[-OB_ERR_OUTER_JOIN_ON_CORRELATION_COLUMN] = &_error_OB_ERR_OUTER_JOIN_ON_CORRELATION_COLUMN;
 | 
						|
    _errors[-OB_ERR_OUTER_JOIN_AMBIGUOUS] = &_error_OB_ERR_OUTER_JOIN_AMBIGUOUS;
 | 
						|
    _errors[-OB_ERR_OUTER_JOIN_WITH_SUBQUERY] = &_error_OB_ERR_OUTER_JOIN_WITH_SUBQUERY;
 | 
						|
    _errors[-OB_ERR_OUTER_JOIN_WITH_ANSI_JOIN] = &_error_OB_ERR_OUTER_JOIN_WITH_ANSI_JOIN;
 | 
						|
    _errors[-OB_ERR_OUTER_JOIN_NOT_ALLOWED] = &_error_OB_ERR_OUTER_JOIN_NOT_ALLOWED;
 | 
						|
    _errors[-OB_SCHEMA_EAGAIN] = &_error_OB_SCHEMA_EAGAIN;
 | 
						|
    _errors[-OB_ERR_ZERO_LEN_COL] = &_error_OB_ERR_ZERO_LEN_COL;
 | 
						|
    _errors[-OB_ERR_YEAR_CONFLICTS_WITH_JULIAN_DATE] = &_error_OB_ERR_YEAR_CONFLICTS_WITH_JULIAN_DATE;
 | 
						|
    _errors[-OB_ERR_DAY_OF_YEAR_CONFLICTS_WITH_JULIAN_DATE] = &_error_OB_ERR_DAY_OF_YEAR_CONFLICTS_WITH_JULIAN_DATE;
 | 
						|
    _errors[-OB_ERR_MONTH_CONFLICTS_WITH_JULIAN_DATE] = &_error_OB_ERR_MONTH_CONFLICTS_WITH_JULIAN_DATE;
 | 
						|
    _errors[-OB_ERR_DAY_OF_MONTH_CONFLICTS_WITH_JULIAN_DATE] = &_error_OB_ERR_DAY_OF_MONTH_CONFLICTS_WITH_JULIAN_DATE;
 | 
						|
    _errors[-OB_ERR_DAY_OF_WEEK_CONFLICTS_WITH_JULIAN_DATE] = &_error_OB_ERR_DAY_OF_WEEK_CONFLICTS_WITH_JULIAN_DATE;
 | 
						|
    _errors[-OB_ERR_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY] = &_error_OB_ERR_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY;
 | 
						|
    _errors[-OB_ERR_MINUTES_OF_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY] = &_error_OB_ERR_MINUTES_OF_HOUR_CONFLICTS_WITH_SECONDS_IN_DAY;
 | 
						|
    _errors[-OB_ERR_SECONDS_OF_MINUTE_CONFLICTS_WITH_SECONDS_IN_DAY] = &_error_OB_ERR_SECONDS_OF_MINUTE_CONFLICTS_WITH_SECONDS_IN_DAY;
 | 
						|
    _errors[-OB_ERR_DATE_NOT_VALID_FOR_MONTH_SPECIFIED] = &_error_OB_ERR_DATE_NOT_VALID_FOR_MONTH_SPECIFIED;
 | 
						|
    _errors[-OB_ERR_INPUT_VALUE_NOT_LONG_ENOUGH] = &_error_OB_ERR_INPUT_VALUE_NOT_LONG_ENOUGH;
 | 
						|
    _errors[-OB_ERR_INVALID_YEAR_VALUE] = &_error_OB_ERR_INVALID_YEAR_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_QUARTER_VALUE] = &_error_OB_ERR_INVALID_QUARTER_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_MONTH] = &_error_OB_ERR_INVALID_MONTH;
 | 
						|
    _errors[-OB_ERR_INVALID_DAY_OF_THE_WEEK] = &_error_OB_ERR_INVALID_DAY_OF_THE_WEEK;
 | 
						|
    _errors[-OB_ERR_INVALID_DAY_OF_YEAR_VALUE] = &_error_OB_ERR_INVALID_DAY_OF_YEAR_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_HOUR12_VALUE] = &_error_OB_ERR_INVALID_HOUR12_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_HOUR24_VALUE] = &_error_OB_ERR_INVALID_HOUR24_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_MINUTES_VALUE] = &_error_OB_ERR_INVALID_MINUTES_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_SECONDS_VALUE] = &_error_OB_ERR_INVALID_SECONDS_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_SECONDS_IN_DAY_VALUE] = &_error_OB_ERR_INVALID_SECONDS_IN_DAY_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_JULIAN_DATE_VALUE] = &_error_OB_ERR_INVALID_JULIAN_DATE_VALUE;
 | 
						|
    _errors[-OB_ERR_AM_OR_PM_REQUIRED] = &_error_OB_ERR_AM_OR_PM_REQUIRED;
 | 
						|
    _errors[-OB_ERR_BC_OR_AD_REQUIRED] = &_error_OB_ERR_BC_OR_AD_REQUIRED;
 | 
						|
    _errors[-OB_ERR_FORMAT_CODE_APPEARS_TWICE] = &_error_OB_ERR_FORMAT_CODE_APPEARS_TWICE;
 | 
						|
    _errors[-OB_ERR_DAY_OF_WEEK_SPECIFIED_MORE_THAN_ONCE] = &_error_OB_ERR_DAY_OF_WEEK_SPECIFIED_MORE_THAN_ONCE;
 | 
						|
    _errors[-OB_ERR_SIGNED_YEAR_PRECLUDES_USE_OF_BC_AD] = &_error_OB_ERR_SIGNED_YEAR_PRECLUDES_USE_OF_BC_AD;
 | 
						|
    _errors[-OB_ERR_JULIAN_DATE_PRECLUDES_USE_OF_DAY_OF_YEAR] = &_error_OB_ERR_JULIAN_DATE_PRECLUDES_USE_OF_DAY_OF_YEAR;
 | 
						|
    _errors[-OB_ERR_YEAR_MAY_ONLY_BE_SPECIFIED_ONCE] = &_error_OB_ERR_YEAR_MAY_ONLY_BE_SPECIFIED_ONCE;
 | 
						|
    _errors[-OB_ERR_HOUR_MAY_ONLY_BE_SPECIFIED_ONCE] = &_error_OB_ERR_HOUR_MAY_ONLY_BE_SPECIFIED_ONCE;
 | 
						|
    _errors[-OB_ERR_AM_PM_CONFLICTS_WITH_USE_OF_AM_DOT_PM_DOT] = &_error_OB_ERR_AM_PM_CONFLICTS_WITH_USE_OF_AM_DOT_PM_DOT;
 | 
						|
    _errors[-OB_ERR_BC_AD_CONFLICT_WITH_USE_OF_BC_DOT_AD_DOT] = &_error_OB_ERR_BC_AD_CONFLICT_WITH_USE_OF_BC_DOT_AD_DOT;
 | 
						|
    _errors[-OB_ERR_MONTH_MAY_ONLY_BE_SPECIFIED_ONCE] = &_error_OB_ERR_MONTH_MAY_ONLY_BE_SPECIFIED_ONCE;
 | 
						|
    _errors[-OB_ERR_DAY_OF_WEEK_MAY_ONLY_BE_SPECIFIED_ONCE] = &_error_OB_ERR_DAY_OF_WEEK_MAY_ONLY_BE_SPECIFIED_ONCE;
 | 
						|
    _errors[-OB_ERR_FORMAT_CODE_CANNOT_APPEAR] = &_error_OB_ERR_FORMAT_CODE_CANNOT_APPEAR;
 | 
						|
    _errors[-OB_ERR_NON_NUMERIC_CHARACTER_VALUE] = &_error_OB_ERR_NON_NUMERIC_CHARACTER_VALUE;
 | 
						|
    _errors[-OB_INVALID_MERIDIAN_INDICATOR_USE] = &_error_OB_INVALID_MERIDIAN_INDICATOR_USE;
 | 
						|
    _errors[-OB_ERR_INVALID_CHAR_FOLLOWING_ESCAPE_CHAR] = &_error_OB_ERR_INVALID_CHAR_FOLLOWING_ESCAPE_CHAR;
 | 
						|
    _errors[-OB_ERR_INVALID_ESCAPE_CHAR_LENGTH] = &_error_OB_ERR_INVALID_ESCAPE_CHAR_LENGTH;
 | 
						|
    _errors[-OB_ERR_DAY_OF_MONTH_RANGE] = &_error_OB_ERR_DAY_OF_MONTH_RANGE;
 | 
						|
    _errors[-OB_ERR_NOT_SELECTED_EXPR] = &_error_OB_ERR_NOT_SELECTED_EXPR;
 | 
						|
    _errors[-OB_ERR_UK_PK_DUPLICATE] = &_error_OB_ERR_UK_PK_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_COLUMN_LIST_ALREADY_INDEXED] = &_error_OB_ERR_COLUMN_LIST_ALREADY_INDEXED;
 | 
						|
    _errors[-OB_ERR_BUSHY_TREE_NOT_SUPPORTED] = &_error_OB_ERR_BUSHY_TREE_NOT_SUPPORTED;
 | 
						|
    _errors[-OB_ERR_ARGUMENT_OUT_OF_RANGE] = &_error_OB_ERR_ARGUMENT_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_ORDER_BY_ITEM_NOT_IN_SELECT_LIST] = &_error_OB_ERR_ORDER_BY_ITEM_NOT_IN_SELECT_LIST;
 | 
						|
    _errors[-OB_ERR_INTERVAL_INVALID] = &_error_OB_ERR_INTERVAL_INVALID;
 | 
						|
    _errors[-OB_ERR_NUMERIC_OR_VALUE_ERROR] = &_error_OB_ERR_NUMERIC_OR_VALUE_ERROR;
 | 
						|
    _errors[-OB_ERR_CONSTRAINT_NAME_DUPLICATE] = &_error_OB_ERR_CONSTRAINT_NAME_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_ONLY_HAVE_INVISIBLE_COL_IN_TABLE] = &_error_OB_ERR_ONLY_HAVE_INVISIBLE_COL_IN_TABLE;
 | 
						|
    _errors[-OB_ERR_INVISIBLE_COL_ON_UNSUPPORTED_TABLE_TYPE] = &_error_OB_ERR_INVISIBLE_COL_ON_UNSUPPORTED_TABLE_TYPE;
 | 
						|
    _errors[-OB_ERR_MODIFY_COL_VISIBILITY_COMBINED_WITH_OTHER_OPTION] = &_error_OB_ERR_MODIFY_COL_VISIBILITY_COMBINED_WITH_OTHER_OPTION;
 | 
						|
    _errors[-OB_ERR_MODIFY_COL_VISIBILITY_BY_SYS_USER] = &_error_OB_ERR_MODIFY_COL_VISIBILITY_BY_SYS_USER;
 | 
						|
    _errors[-OB_ERR_TOO_MANY_ARGS_FOR_FUN] = &_error_OB_ERR_TOO_MANY_ARGS_FOR_FUN;
 | 
						|
    _errors[-OB_PX_SQL_NEED_RETRY] = &_error_OB_PX_SQL_NEED_RETRY;
 | 
						|
    _errors[-OB_TENANT_HAS_BEEN_DROPPED] = &_error_OB_TENANT_HAS_BEEN_DROPPED;
 | 
						|
    _errors[-OB_ERR_EXTRACT_FIELD_INVALID] = &_error_OB_ERR_EXTRACT_FIELD_INVALID;
 | 
						|
    _errors[-OB_ERR_PACKAGE_COMPILE_ERROR] = &_error_OB_ERR_PACKAGE_COMPILE_ERROR;
 | 
						|
    _errors[-OB_ERR_SP_EMPTY_BLOCK] = &_error_OB_ERR_SP_EMPTY_BLOCK;
 | 
						|
    _errors[-OB_ARRAY_BINDING_ROLLBACK] = &_error_OB_ARRAY_BINDING_ROLLBACK;
 | 
						|
    _errors[-OB_ERR_INVALID_SUBQUERY_USE] = &_error_OB_ERR_INVALID_SUBQUERY_USE;
 | 
						|
    _errors[-OB_ERR_DATE_OR_SYS_VAR_CANNOT_IN_CHECK_CST] = &_error_OB_ERR_DATE_OR_SYS_VAR_CANNOT_IN_CHECK_CST;
 | 
						|
    _errors[-OB_ERR_NONEXISTENT_CONSTRAINT] = &_error_OB_ERR_NONEXISTENT_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_VIOLATED] = &_error_OB_ERR_CHECK_CONSTRAINT_VIOLATED;
 | 
						|
    _errors[-OB_ERR_GROUP_FUNC_NOT_ALLOWED] = &_error_OB_ERR_GROUP_FUNC_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_POLICY_STRING_NOT_FOUND] = &_error_OB_ERR_POLICY_STRING_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_INVALID_LABEL_STRING] = &_error_OB_ERR_INVALID_LABEL_STRING;
 | 
						|
    _errors[-OB_ERR_UNDEFINED_COMPARTMENT_STRING_FOR_POLICY_STRING] = &_error_OB_ERR_UNDEFINED_COMPARTMENT_STRING_FOR_POLICY_STRING;
 | 
						|
    _errors[-OB_ERR_UNDEFINED_LEVEL_STRING_FOR_POLICY_STRING] = &_error_OB_ERR_UNDEFINED_LEVEL_STRING_FOR_POLICY_STRING;
 | 
						|
    _errors[-OB_ERR_UNDEFINED_GROUP_STRING_FOR_POLICY_STRING] = &_error_OB_ERR_UNDEFINED_GROUP_STRING_FOR_POLICY_STRING;
 | 
						|
    _errors[-OB_ERR_LBAC_ERROR] = &_error_OB_ERR_LBAC_ERROR;
 | 
						|
    _errors[-OB_ERR_POLICY_ROLE_ALREADY_EXISTS_FOR_POLICY_STRING] = &_error_OB_ERR_POLICY_ROLE_ALREADY_EXISTS_FOR_POLICY_STRING;
 | 
						|
    _errors[-OB_ERR_NULL_OR_INVALID_USER_LABEL] = &_error_OB_ERR_NULL_OR_INVALID_USER_LABEL;
 | 
						|
    _errors[-OB_ERR_ADD_INDEX] = &_error_OB_ERR_ADD_INDEX;
 | 
						|
    _errors[-OB_ERR_PROFILE_STRING_DOES_NOT_EXIST] = &_error_OB_ERR_PROFILE_STRING_DOES_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_INVALID_RESOURCE_LIMIT] = &_error_OB_ERR_INVALID_RESOURCE_LIMIT;
 | 
						|
    _errors[-OB_ERR_PROFILE_STRING_ALREADY_EXISTS] = &_error_OB_ERR_PROFILE_STRING_ALREADY_EXISTS;
 | 
						|
    _errors[-OB_ERR_PROFILE_STRING_HAS_USERS_ASSIGNED] = &_error_OB_ERR_PROFILE_STRING_HAS_USERS_ASSIGNED;
 | 
						|
    _errors[-OB_ERR_THE_LEADING_PRECISION_OF_THE_INTERVAL_IS_TOO_SMALL] = &_error_OB_ERR_THE_LEADING_PRECISION_OF_THE_INTERVAL_IS_TOO_SMALL;
 | 
						|
    _errors[-OB_ERR_INVALID_TIME_ZONE_HOUR] = &_error_OB_ERR_INVALID_TIME_ZONE_HOUR;
 | 
						|
    _errors[-OB_ERR_INVALID_TIME_ZONE_MINUTE] = &_error_OB_ERR_INVALID_TIME_ZONE_MINUTE;
 | 
						|
    _errors[-OB_ERR_NOT_A_VALID_TIME_ZONE] = &_error_OB_ERR_NOT_A_VALID_TIME_ZONE;
 | 
						|
    _errors[-OB_ERR_DATE_FORMAT_IS_TOO_LONG_FOR_INTERNAL_BUFFER] = &_error_OB_ERR_DATE_FORMAT_IS_TOO_LONG_FOR_INTERNAL_BUFFER;
 | 
						|
    _errors[-OB_ERR_ADD_CHECK_CONSTRAINT_VIOLATED] = &_error_OB_ERR_ADD_CHECK_CONSTRAINT_VIOLATED;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_VIEW_UPDATE] = &_error_OB_ERR_ILLEGAL_VIEW_UPDATE;
 | 
						|
    _errors[-OB_ERR_VIRTUAL_COL_NOT_ALLOWED] = &_error_OB_ERR_VIRTUAL_COL_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_O_VIEW_MULTIUPDATE] = &_error_OB_ERR_O_VIEW_MULTIUPDATE;
 | 
						|
    _errors[-OB_ERR_NON_INSERTABLE_TABLE] = &_error_OB_ERR_NON_INSERTABLE_TABLE;
 | 
						|
    _errors[-OB_ERR_VIEW_MULTIUPDATE] = &_error_OB_ERR_VIEW_MULTIUPDATE;
 | 
						|
    _errors[-OB_ERR_NONUPDATEABLE_COLUMN] = &_error_OB_ERR_NONUPDATEABLE_COLUMN;
 | 
						|
    _errors[-OB_ERR_VIEW_DELETE_MERGE_VIEW] = &_error_OB_ERR_VIEW_DELETE_MERGE_VIEW;
 | 
						|
    _errors[-OB_ERR_O_DELETE_VIEW_NON_KEY_PRESERVED] = &_error_OB_ERR_O_DELETE_VIEW_NON_KEY_PRESERVED;
 | 
						|
    _errors[-OB_ERR_O_UPDATE_VIEW_NON_KEY_PRESERVED] = &_error_OB_ERR_O_UPDATE_VIEW_NON_KEY_PRESERVED;
 | 
						|
    _errors[-OB_ERR_MODIFY_READ_ONLY_VIEW] = &_error_OB_ERR_MODIFY_READ_ONLY_VIEW;
 | 
						|
    _errors[-OB_ERR_INVALID_INITRANS_VALUE] = &_error_OB_ERR_INVALID_INITRANS_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_MAXTRANS_VALUE] = &_error_OB_ERR_INVALID_MAXTRANS_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_PCTFREE_OR_PCTUSED_VALUE] = &_error_OB_ERR_INVALID_PCTFREE_OR_PCTUSED_VALUE;
 | 
						|
    _errors[-OB_ERR_PROXY_REROUTE] = &_error_OB_ERR_PROXY_REROUTE;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_ARGUMENT_FOR_FUNCTION] = &_error_OB_ERR_ILLEGAL_ARGUMENT_FOR_FUNCTION;
 | 
						|
    _errors[-OB_ERR_OPERATOR_CANNOT_BE_USED_WITH_LIST] = &_error_OB_ERR_OPERATOR_CANNOT_BE_USED_WITH_LIST;
 | 
						|
    _errors[-OB_ERR_INVALID_SAMPLING_RANGE] = &_error_OB_ERR_INVALID_SAMPLING_RANGE;
 | 
						|
    _errors[-OB_ERR_SPECIFY_DATABASE_NOT_ALLOWED] = &_error_OB_ERR_SPECIFY_DATABASE_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_STMT_TRIGGER_WITH_WHEN_CLAUSE] = &_error_OB_ERR_STMT_TRIGGER_WITH_WHEN_CLAUSE;
 | 
						|
    _errors[-OB_ERR_TRIGGER_NOT_EXIST] = &_error_OB_ERR_TRIGGER_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_TRIGGER_ALREADY_EXIST] = &_error_OB_ERR_TRIGGER_ALREADY_EXIST;
 | 
						|
    _errors[-OB_ERR_TRIGGER_EXIST_ON_OTHER_TABLE] = &_error_OB_ERR_TRIGGER_EXIST_ON_OTHER_TABLE;
 | 
						|
    _errors[-OB_ERR_SIGNALED_IN_PARALLEL_QUERY_SERVER] = &_error_OB_ERR_SIGNALED_IN_PARALLEL_QUERY_SERVER;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_QUERY_NAME] = &_error_OB_ERR_CTE_ILLEGAL_QUERY_NAME;
 | 
						|
    _errors[-OB_ERR_CTE_UNSUPPORTED_COLUMN_ALIASING] = &_error_OB_ERR_CTE_UNSUPPORTED_COLUMN_ALIASING;
 | 
						|
    _errors[-OB_ERR_UNSUPPORTED_USE_OF_CTE] = &_error_OB_ERR_UNSUPPORTED_USE_OF_CTE;
 | 
						|
    _errors[-OB_ERR_CTE_COLUMN_NUMBER_NOT_MATCH] = &_error_OB_ERR_CTE_COLUMN_NUMBER_NOT_MATCH;
 | 
						|
    _errors[-OB_ERR_NEED_COLUMN_ALIAS_LIST_IN_RECURSIVE_CTE] = &_error_OB_ERR_NEED_COLUMN_ALIAS_LIST_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_NEED_UNION_ALL_IN_RECURSIVE_CTE] = &_error_OB_ERR_NEED_UNION_ALL_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_NEED_ONLY_TWO_BRANCH_IN_RECURSIVE_CTE] = &_error_OB_ERR_NEED_ONLY_TWO_BRANCH_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_NEED_REFERENCE_ITSELF_DIRECTLY_IN_RECURSIVE_CTE] = &_error_OB_ERR_NEED_REFERENCE_ITSELF_DIRECTLY_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_NEED_INIT_BRANCH_IN_RECURSIVE_CTE] = &_error_OB_ERR_NEED_INIT_BRANCH_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_CYCLE_FOUND_IN_RECURSIVE_CTE] = &_error_OB_ERR_CYCLE_FOUND_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_CTE_REACH_MAX_LEVEL_RECURSION] = &_error_OB_ERR_CTE_REACH_MAX_LEVEL_RECURSION;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_SEARCH_PSEUDO_NAME] = &_error_OB_ERR_CTE_ILLEGAL_SEARCH_PSEUDO_NAME;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_CYCLE_NON_CYCLE_VALUE] = &_error_OB_ERR_CTE_ILLEGAL_CYCLE_NON_CYCLE_VALUE;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_CYCLE_PSEUDO_NAME] = &_error_OB_ERR_CTE_ILLEGAL_CYCLE_PSEUDO_NAME;
 | 
						|
    _errors[-OB_ERR_CTE_COLUMN_ALIAS_DUPLICATE] = &_error_OB_ERR_CTE_COLUMN_ALIAS_DUPLICATE;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_SEARCH_CYCLE_CLAUSE] = &_error_OB_ERR_CTE_ILLEGAL_SEARCH_CYCLE_CLAUSE;
 | 
						|
    _errors[-OB_ERR_CTE_DUPLICATE_CYCLE_NON_CYCLE_VALUE] = &_error_OB_ERR_CTE_DUPLICATE_CYCLE_NON_CYCLE_VALUE;
 | 
						|
    _errors[-OB_ERR_CTE_DUPLICATE_SEQ_NAME_CYCLE_COLUMN] = &_error_OB_ERR_CTE_DUPLICATE_SEQ_NAME_CYCLE_COLUMN;
 | 
						|
    _errors[-OB_ERR_CTE_DUPLICATE_NAME_IN_SEARCH_CLAUSE] = &_error_OB_ERR_CTE_DUPLICATE_NAME_IN_SEARCH_CLAUSE;
 | 
						|
    _errors[-OB_ERR_CTE_DUPLICATE_NAME_IN_CYCLE_CLAUSE] = &_error_OB_ERR_CTE_DUPLICATE_NAME_IN_CYCLE_CLAUSE;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_COLUMN_IN_CYCLE_CLAUSE] = &_error_OB_ERR_CTE_ILLEGAL_COLUMN_IN_CYCLE_CLAUSE;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_RECURSIVE_BRANCH] = &_error_OB_ERR_CTE_ILLEGAL_RECURSIVE_BRANCH;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_JOIN_IN_RECURSIVE_CTE] = &_error_OB_ERR_ILLEGAL_JOIN_IN_RECURSIVE_CTE;
 | 
						|
    _errors[-OB_ERR_CTE_NEED_COLUMN_ALIAS_LIST] = &_error_OB_ERR_CTE_NEED_COLUMN_ALIAS_LIST;
 | 
						|
    _errors[-OB_ERR_CTE_ILLEGAL_COLUMN_IN_SERACH_CALUSE] = &_error_OB_ERR_CTE_ILLEGAL_COLUMN_IN_SERACH_CALUSE;
 | 
						|
    _errors[-OB_ERR_CTE_RECURSIVE_QUERY_NAME_REFERENCED_MORE_THAN_ONCE] = &_error_OB_ERR_CTE_RECURSIVE_QUERY_NAME_REFERENCED_MORE_THAN_ONCE;
 | 
						|
    _errors[-OB_ERR_CBY_PSEUDO_COLUMN_NOT_ALLOWED] = &_error_OB_ERR_CBY_PSEUDO_COLUMN_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CBY_LOOP] = &_error_OB_ERR_CBY_LOOP;
 | 
						|
    _errors[-OB_ERR_CBY_JOIN_NOT_ALLOWED] = &_error_OB_ERR_CBY_JOIN_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CBY_CONNECT_BY_REQUIRED] = &_error_OB_ERR_CBY_CONNECT_BY_REQUIRED;
 | 
						|
    _errors[-OB_ERR_CBY_CONNECT_BY_PATH_NOT_ALLOWED] = &_error_OB_ERR_CBY_CONNECT_BY_PATH_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CBY_CONNECT_BY_PATH_ILLEGAL_PARAM] = &_error_OB_ERR_CBY_CONNECT_BY_PATH_ILLEGAL_PARAM;
 | 
						|
    _errors[-OB_ERR_CBY_CONNECT_BY_PATH_INVALID_SEPARATOR] = &_error_OB_ERR_CBY_CONNECT_BY_PATH_INVALID_SEPARATOR;
 | 
						|
    _errors[-OB_ERR_CBY_CONNECT_BY_ROOT_ILLEGAL_USED] = &_error_OB_ERR_CBY_CONNECT_BY_ROOT_ILLEGAL_USED;
 | 
						|
    _errors[-OB_ERR_CBY_OREDER_SIBLINGS_BY_NOT_ALLOWED] = &_error_OB_ERR_CBY_OREDER_SIBLINGS_BY_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CBY_NOCYCLE_REQUIRED] = &_error_OB_ERR_CBY_NOCYCLE_REQUIRED;
 | 
						|
    _errors[-OB_ERR_NOT_ENOUGH_ARGS_FOR_FUN] = &_error_OB_ERR_NOT_ENOUGH_ARGS_FOR_FUN;
 | 
						|
    _errors[-OB_ERR_PREPARE_STMT_CHECKSUM] = &_error_OB_ERR_PREPARE_STMT_CHECKSUM;
 | 
						|
    _errors[-OB_ERR_ENABLE_NONEXISTENT_CONSTRAINT] = &_error_OB_ERR_ENABLE_NONEXISTENT_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_DISABLE_NONEXISTENT_CONSTRAINT] = &_error_OB_ERR_DISABLE_NONEXISTENT_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_DOWNGRADE_DOP] = &_error_OB_ERR_DOWNGRADE_DOP;
 | 
						|
    _errors[-OB_ERR_DOWNGRADE_PARALLEL_MAX_SERVERS] = &_error_OB_ERR_DOWNGRADE_PARALLEL_MAX_SERVERS;
 | 
						|
    _errors[-OB_ERR_ORPHANED_CHILD_RECORD_EXISTS] = &_error_OB_ERR_ORPHANED_CHILD_RECORD_EXISTS;
 | 
						|
    _errors[-OB_ERR_COL_CHECK_CST_REFER_ANOTHER_COL] = &_error_OB_ERR_COL_CHECK_CST_REFER_ANOTHER_COL;
 | 
						|
    _errors[-OB_BATCHED_MULTI_STMT_ROLLBACK] = &_error_OB_BATCHED_MULTI_STMT_ROLLBACK;
 | 
						|
    _errors[-OB_ERR_FOR_UPDATE_SELECT_VIEW_CANNOT] = &_error_OB_ERR_FOR_UPDATE_SELECT_VIEW_CANNOT;
 | 
						|
    _errors[-OB_ERR_POLICY_WITH_CHECK_OPTION_VIOLATION] = &_error_OB_ERR_POLICY_WITH_CHECK_OPTION_VIOLATION;
 | 
						|
    _errors[-OB_ERR_POLICY_ALREADY_APPLIED_TO_TABLE] = &_error_OB_ERR_POLICY_ALREADY_APPLIED_TO_TABLE;
 | 
						|
    _errors[-OB_ERR_MUTATING_TABLE_OPERATION] = &_error_OB_ERR_MUTATING_TABLE_OPERATION;
 | 
						|
    _errors[-OB_ERR_MODIFY_OR_DROP_MULTI_COLUMN_CONSTRAINT] = &_error_OB_ERR_MODIFY_OR_DROP_MULTI_COLUMN_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_DROP_PARENT_KEY_COLUMN] = &_error_OB_ERR_DROP_PARENT_KEY_COLUMN;
 | 
						|
    _errors[-OB_AUTOINC_SERVICE_BUSY] = &_error_OB_AUTOINC_SERVICE_BUSY;
 | 
						|
    _errors[-OB_ERR_CONSTRAINT_CONSTRAINT_DISABLE_VALIDATE] = &_error_OB_ERR_CONSTRAINT_CONSTRAINT_DISABLE_VALIDATE;
 | 
						|
    _errors[-OB_ERR_AUTONOMOUS_TRANSACTION_ROLLBACK] = &_error_OB_ERR_AUTONOMOUS_TRANSACTION_ROLLBACK;
 | 
						|
    _errors[-OB_ORDERBY_CLAUSE_NOT_ALLOWED] = &_error_OB_ORDERBY_CLAUSE_NOT_ALLOWED;
 | 
						|
    _errors[-OB_DISTINCT_NOT_ALLOWED] = &_error_OB_DISTINCT_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_ASSIGN_USER_VARIABLE_NOT_ALLOWED] = &_error_OB_ERR_ASSIGN_USER_VARIABLE_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_MODIFY_NONEXISTENT_CONSTRAINT] = &_error_OB_ERR_MODIFY_NONEXISTENT_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_SP_EXCEPTION_HANDLE_ILLEGAL] = &_error_OB_ERR_SP_EXCEPTION_HANDLE_ILLEGAL;
 | 
						|
    _errors[-OB_INVALID_ROWID] = &_error_OB_INVALID_ROWID;
 | 
						|
    _errors[-OB_ERR_INVALID_INSERT_COLUMN] = &_error_OB_ERR_INVALID_INSERT_COLUMN;
 | 
						|
    _errors[-OB_INCORRECT_USE_OF_OPERATOR] = &_error_OB_INCORRECT_USE_OF_OPERATOR;
 | 
						|
    _errors[-OB_ERR_NON_CONST_EXPR_IS_NOT_ALLOWED_FOR_PIVOT_UNPIVOT_VALUES] = &_error_OB_ERR_NON_CONST_EXPR_IS_NOT_ALLOWED_FOR_PIVOT_UNPIVOT_VALUES;
 | 
						|
    _errors[-OB_ERR_EXPECT_AGGREGATE_FUNCTION_INSIDE_PIVOT_OPERATION] = &_error_OB_ERR_EXPECT_AGGREGATE_FUNCTION_INSIDE_PIVOT_OPERATION;
 | 
						|
    _errors[-OB_ERR_EXP_NEED_SAME_DATATYPE] = &_error_OB_ERR_EXP_NEED_SAME_DATATYPE;
 | 
						|
    _errors[-OB_ERR_CHARACTER_SET_MISMATCH] = &_error_OB_ERR_CHARACTER_SET_MISMATCH;
 | 
						|
    _errors[-OB_ERR_REGEXP_NOMATCH] = &_error_OB_ERR_REGEXP_NOMATCH;
 | 
						|
    _errors[-OB_ERR_REGEXP_BADPAT] = &_error_OB_ERR_REGEXP_BADPAT;
 | 
						|
    _errors[-OB_ERR_REGEXP_EESCAPE] = &_error_OB_ERR_REGEXP_EESCAPE;
 | 
						|
    _errors[-OB_ERR_REGEXP_EBRACK] = &_error_OB_ERR_REGEXP_EBRACK;
 | 
						|
    _errors[-OB_ERR_REGEXP_EPAREN] = &_error_OB_ERR_REGEXP_EPAREN;
 | 
						|
    _errors[-OB_ERR_REGEXP_ESUBREG] = &_error_OB_ERR_REGEXP_ESUBREG;
 | 
						|
    _errors[-OB_ERR_REGEXP_ERANGE] = &_error_OB_ERR_REGEXP_ERANGE;
 | 
						|
    _errors[-OB_ERR_REGEXP_ECTYPE] = &_error_OB_ERR_REGEXP_ECTYPE;
 | 
						|
    _errors[-OB_ERR_REGEXP_ECOLLATE] = &_error_OB_ERR_REGEXP_ECOLLATE;
 | 
						|
    _errors[-OB_ERR_REGEXP_EBRACE] = &_error_OB_ERR_REGEXP_EBRACE;
 | 
						|
    _errors[-OB_ERR_REGEXP_BADBR] = &_error_OB_ERR_REGEXP_BADBR;
 | 
						|
    _errors[-OB_ERR_REGEXP_BADRPT] = &_error_OB_ERR_REGEXP_BADRPT;
 | 
						|
    _errors[-OB_ERR_REGEXP_ASSERT] = &_error_OB_ERR_REGEXP_ASSERT;
 | 
						|
    _errors[-OB_ERR_REGEXP_INVARG] = &_error_OB_ERR_REGEXP_INVARG;
 | 
						|
    _errors[-OB_ERR_REGEXP_MIXED] = &_error_OB_ERR_REGEXP_MIXED;
 | 
						|
    _errors[-OB_ERR_REGEXP_BADOPT] = &_error_OB_ERR_REGEXP_BADOPT;
 | 
						|
    _errors[-OB_ERR_REGEXP_ETOOBIG] = &_error_OB_ERR_REGEXP_ETOOBIG;
 | 
						|
    _errors[-OB_NOT_SUPPORTED_ROWID_TYPE] = &_error_OB_NOT_SUPPORTED_ROWID_TYPE;
 | 
						|
    _errors[-OB_ERR_PARALLEL_DDL_CONFLICT] = &_error_OB_ERR_PARALLEL_DDL_CONFLICT;
 | 
						|
    _errors[-OB_ERR_SUBSCRIPT_BEYOND_COUNT] = &_error_OB_ERR_SUBSCRIPT_BEYOND_COUNT;
 | 
						|
    _errors[-OB_ERR_NOT_PARTITIONED] = &_error_OB_ERR_NOT_PARTITIONED;
 | 
						|
    _errors[-OB_UNKNOWN_SUBPARTITION] = &_error_OB_UNKNOWN_SUBPARTITION;
 | 
						|
    _errors[-OB_ERR_INVALID_SQL_ROW_LIMITING] = &_error_OB_ERR_INVALID_SQL_ROW_LIMITING;
 | 
						|
    _errors[-INCORRECT_ARGUMENTS_TO_ESCAPE] = &_error_INCORRECT_ARGUMENTS_TO_ESCAPE;
 | 
						|
    _errors[-STATIC_ENG_NOT_IMPLEMENT] = &_error_STATIC_ENG_NOT_IMPLEMENT;
 | 
						|
    _errors[-OB_OBJ_ALREADY_EXIST] = &_error_OB_OBJ_ALREADY_EXIST;
 | 
						|
    _errors[-OB_DBLINK_NOT_EXIST_TO_ACCESS] = &_error_OB_DBLINK_NOT_EXIST_TO_ACCESS;
 | 
						|
    _errors[-OB_DBLINK_NOT_EXIST_TO_DROP] = &_error_OB_DBLINK_NOT_EXIST_TO_DROP;
 | 
						|
    _errors[-OB_ERR_ACCESS_INTO_NULL] = &_error_OB_ERR_ACCESS_INTO_NULL;
 | 
						|
    _errors[-OB_ERR_COLLECION_NULL] = &_error_OB_ERR_COLLECION_NULL;
 | 
						|
    _errors[-OB_ERR_NO_DATA_NEEDED] = &_error_OB_ERR_NO_DATA_NEEDED;
 | 
						|
    _errors[-OB_ERR_PROGRAM_ERROR] = &_error_OB_ERR_PROGRAM_ERROR;
 | 
						|
    _errors[-OB_ERR_ROWTYPE_MISMATCH] = &_error_OB_ERR_ROWTYPE_MISMATCH;
 | 
						|
    _errors[-OB_ERR_STORAGE_ERROR] = &_error_OB_ERR_STORAGE_ERROR;
 | 
						|
    _errors[-OB_ERR_SUBSCRIPT_OUTSIDE_LIMIT] = &_error_OB_ERR_SUBSCRIPT_OUTSIDE_LIMIT;
 | 
						|
    _errors[-OB_ERR_INVALID_CURSOR] = &_error_OB_ERR_INVALID_CURSOR;
 | 
						|
    _errors[-OB_ERR_LOGIN_DENIED] = &_error_OB_ERR_LOGIN_DENIED;
 | 
						|
    _errors[-OB_ERR_NOT_LOGGED_ON] = &_error_OB_ERR_NOT_LOGGED_ON;
 | 
						|
    _errors[-OB_ERR_SELF_IS_NULL] = &_error_OB_ERR_SELF_IS_NULL;
 | 
						|
    _errors[-OB_ERR_TIMEOUT_ON_RESOURCE] = &_error_OB_ERR_TIMEOUT_ON_RESOURCE;
 | 
						|
    _errors[-OB_COLUMN_CANT_CHANGE_TO_NOT_NULL] = &_error_OB_COLUMN_CANT_CHANGE_TO_NOT_NULL;
 | 
						|
    _errors[-OB_COLUMN_CANT_CHANGE_TO_NULLALE] = &_error_OB_COLUMN_CANT_CHANGE_TO_NULLALE;
 | 
						|
    _errors[-OB_ENABLE_NOT_NULL_CONSTRAINT_VIOLATED] = &_error_OB_ENABLE_NOT_NULL_CONSTRAINT_VIOLATED;
 | 
						|
    _errors[-OB_ERR_ARGUMENT_SHOULD_CONSTANT] = &_error_OB_ERR_ARGUMENT_SHOULD_CONSTANT;
 | 
						|
    _errors[-OB_ERR_NOT_A_SINGLE_GROUP_FUNCTION] = &_error_OB_ERR_NOT_A_SINGLE_GROUP_FUNCTION;
 | 
						|
    _errors[-OB_ERR_ZERO_LENGTH_IDENTIFIER] = &_error_OB_ERR_ZERO_LENGTH_IDENTIFIER;
 | 
						|
    _errors[-OB_ERR_PARAM_VALUE_INVALID] = &_error_OB_ERR_PARAM_VALUE_INVALID;
 | 
						|
    _errors[-OB_ERR_DBMS_SQL_CURSOR_NOT_EXIST] = &_error_OB_ERR_DBMS_SQL_CURSOR_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_DBMS_SQL_NOT_ALL_VAR_BIND] = &_error_OB_ERR_DBMS_SQL_NOT_ALL_VAR_BIND;
 | 
						|
    _errors[-OB_ERR_CONFLICTING_DECLARATIONS] = &_error_OB_ERR_CONFLICTING_DECLARATIONS;
 | 
						|
    _errors[-OB_ERR_DROP_COL_REFERENCED_MULTI_COLS_CONSTRAINT] = &_error_OB_ERR_DROP_COL_REFERENCED_MULTI_COLS_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_MODIFY_COL_DATATYEP_REFERENCED_CONSTRAINT] = &_error_OB_ERR_MODIFY_COL_DATATYEP_REFERENCED_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_PERCENTILE_VALUE_INVALID] = &_error_OB_ERR_PERCENTILE_VALUE_INVALID;
 | 
						|
    _errors[-OB_ERR_ARGUMENT_SHOULD_NUMERIC_DATE_DATETIME_TYPE] = &_error_OB_ERR_ARGUMENT_SHOULD_NUMERIC_DATE_DATETIME_TYPE;
 | 
						|
    _errors[-OB_ERR_ALTER_TABLE_RENAME_WITH_OPTION] = &_error_OB_ERR_ALTER_TABLE_RENAME_WITH_OPTION;
 | 
						|
    _errors[-OB_ERR_ONLY_SIMPLE_COLUMN_NAME_ALLOWED] = &_error_OB_ERR_ONLY_SIMPLE_COLUMN_NAME_ALLOWED;
 | 
						|
    _errors[-OB_ERR_SAFE_UPDATE_MODE_NEED_WHERE_OR_LIMIT] = &_error_OB_ERR_SAFE_UPDATE_MODE_NEED_WHERE_OR_LIMIT;
 | 
						|
    _errors[-OB_ERR_SPECIFIY_PARTITION_DESCRIPTION] = &_error_OB_ERR_SPECIFIY_PARTITION_DESCRIPTION;
 | 
						|
    _errors[-OB_ERR_SAME_NAME_SUBPARTITION] = &_error_OB_ERR_SAME_NAME_SUBPARTITION;
 | 
						|
    _errors[-OB_ERR_UPDATE_ORDER_BY] = &_error_OB_ERR_UPDATE_ORDER_BY;
 | 
						|
    _errors[-OB_ERR_UPDATE_LIMIT] = &_error_OB_ERR_UPDATE_LIMIT;
 | 
						|
    _errors[-OB_ROWID_TYPE_MISMATCH] = &_error_OB_ROWID_TYPE_MISMATCH;
 | 
						|
    _errors[-OB_ROWID_NUM_MISMATCH] = &_error_OB_ROWID_NUM_MISMATCH;
 | 
						|
    _errors[-OB_NO_COLUMN_ALIAS] = &_error_OB_NO_COLUMN_ALIAS;
 | 
						|
    _errors[-OB_ERR_NUMERIC_NOT_MATCH_FORMAT_LENGTH] = &_error_OB_ERR_NUMERIC_NOT_MATCH_FORMAT_LENGTH;
 | 
						|
    _errors[-OB_ERR_INVALID_DATATYPE] = &_error_OB_ERR_INVALID_DATATYPE;
 | 
						|
    _errors[-OB_ERR_NOT_COMPOSITE_PARTITION] = &_error_OB_ERR_NOT_COMPOSITE_PARTITION;
 | 
						|
    _errors[-OB_ERR_SUBPARTITION_NOT_EXPECT_VALUES_IN] = &_error_OB_ERR_SUBPARTITION_NOT_EXPECT_VALUES_IN;
 | 
						|
    _errors[-OB_ERR_SUBPARTITION_EXPECT_VALUES_IN] = &_error_OB_ERR_SUBPARTITION_EXPECT_VALUES_IN;
 | 
						|
    _errors[-OB_ERR_PARTITION_NOT_EXPECT_VALUES_LESS_THAN] = &_error_OB_ERR_PARTITION_NOT_EXPECT_VALUES_LESS_THAN;
 | 
						|
    _errors[-OB_ERR_PARTITION_EXPECT_VALUES_LESS_THAN] = &_error_OB_ERR_PARTITION_EXPECT_VALUES_LESS_THAN;
 | 
						|
    _errors[-OB_ERR_PROGRAM_UNIT_NOT_EXIST] = &_error_OB_ERR_PROGRAM_UNIT_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_INVALID_RESTORE_POINT_NAME] = &_error_OB_ERR_INVALID_RESTORE_POINT_NAME;
 | 
						|
    _errors[-OB_ERR_INPUT_TIME_TYPE] = &_error_OB_ERR_INPUT_TIME_TYPE;
 | 
						|
    _errors[-OB_ERR_IN_ARRAY_DML] = &_error_OB_ERR_IN_ARRAY_DML;
 | 
						|
    _errors[-OB_ERR_TRIGGER_COMPILE_ERROR] = &_error_OB_ERR_TRIGGER_COMPILE_ERROR;
 | 
						|
    _errors[-OB_ERR_IN_TRIM_SET] = &_error_OB_ERR_IN_TRIM_SET;
 | 
						|
    _errors[-OB_ERR_MISSING_OR_INVALID_PASSWORD_FOR_ROLE] = &_error_OB_ERR_MISSING_OR_INVALID_PASSWORD_FOR_ROLE;
 | 
						|
    _errors[-OB_ERR_MISSING_OR_INVALID_PASSWORD] = &_error_OB_ERR_MISSING_OR_INVALID_PASSWORD;
 | 
						|
    _errors[-OB_ERR_NO_OPTIONS_FOR_ALTER_USER] = &_error_OB_ERR_NO_OPTIONS_FOR_ALTER_USER;
 | 
						|
    _errors[-OB_ERR_NO_MATCHING_UK_PK_FOR_COL_LIST] = &_error_OB_ERR_NO_MATCHING_UK_PK_FOR_COL_LIST;
 | 
						|
    _errors[-OB_ERR_DUP_FK_IN_TABLE] = &_error_OB_ERR_DUP_FK_IN_TABLE;
 | 
						|
    _errors[-OB_ERR_DUP_FK_EXISTS] = &_error_OB_ERR_DUP_FK_EXISTS;
 | 
						|
    _errors[-OB_ERR_MISSING_OR_INVALID_PRIVIEGE] = &_error_OB_ERR_MISSING_OR_INVALID_PRIVIEGE;
 | 
						|
    _errors[-OB_ERR_INVALID_VIRTUAL_COLUMN_TYPE] = &_error_OB_ERR_INVALID_VIRTUAL_COLUMN_TYPE;
 | 
						|
    _errors[-OB_ERR_REFERENCED_TABLE_HAS_NO_PK] = &_error_OB_ERR_REFERENCED_TABLE_HAS_NO_PK;
 | 
						|
    _errors[-OB_ERR_MODIFY_PART_COLUMN_TYPE] = &_error_OB_ERR_MODIFY_PART_COLUMN_TYPE;
 | 
						|
    _errors[-OB_ERR_MODIFY_SUBPART_COLUMN_TYPE] = &_error_OB_ERR_MODIFY_SUBPART_COLUMN_TYPE;
 | 
						|
    _errors[-OB_ERR_DECREASE_COLUMN_LENGTH] = &_error_OB_ERR_DECREASE_COLUMN_LENGTH;
 | 
						|
    _errors[-OB_ERR_DATETIME_INTERVAL_INTERNAL_ERROR] = &_error_OB_ERR_DATETIME_INTERVAL_INTERNAL_ERROR;
 | 
						|
    _errors[-OB_ERR_REMOTE_PART_ILLEGAL] = &_error_OB_ERR_REMOTE_PART_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_COLUMN_EXPRESSION_WAS_SPECIFIED] = &_error_OB_ERR_DUPLICATE_COLUMN_EXPRESSION_WAS_SPECIFIED;
 | 
						|
    _errors[-OB_ERR_A_VIEW_NOT_APPROPRIATE_HERE] = &_error_OB_ERR_A_VIEW_NOT_APPROPRIATE_HERE;
 | 
						|
    _errors[-OB_ROWID_VIEW_NO_KEY_PRESERVED] = &_error_OB_ROWID_VIEW_NO_KEY_PRESERVED;
 | 
						|
    _errors[-OB_ROWID_VIEW_HAS_DISTINCT_ETC] = &_error_OB_ROWID_VIEW_HAS_DISTINCT_ETC;
 | 
						|
    _errors[-OB_ERR_AT_LEAST_ONE_COLUMN_NOT_VIRTUAL] = &_error_OB_ERR_AT_LEAST_ONE_COLUMN_NOT_VIRTUAL;
 | 
						|
    _errors[-OB_ERR_ONLY_PURE_FUNC_CANBE_INDEXED] = &_error_OB_ERR_ONLY_PURE_FUNC_CANBE_INDEXED;
 | 
						|
    _errors[-OB_ERR_ONLY_PURE_FUNC_CANBE_VIRTUAL_COLUMN_EXPRESSION] = &_error_OB_ERR_ONLY_PURE_FUNC_CANBE_VIRTUAL_COLUMN_EXPRESSION;
 | 
						|
    _errors[-OB_ERR_UPDATE_OPERATION_ON_VIRTUAL_COLUMNS] = &_error_OB_ERR_UPDATE_OPERATION_ON_VIRTUAL_COLUMNS;
 | 
						|
    _errors[-OB_ERR_INVALID_COLUMN_EXPRESSION] = &_error_OB_ERR_INVALID_COLUMN_EXPRESSION;
 | 
						|
    _errors[-OB_ERR_IDENTITY_COLUMN_COUNT_EXCE_LIMIT] = &_error_OB_ERR_IDENTITY_COLUMN_COUNT_EXCE_LIMIT;
 | 
						|
    _errors[-OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN] = &_error_OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN] = &_error_OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN] = &_error_OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_COLUMN_MODIFY_TO_IDENTITY_COLUMN] = &_error_OB_ERR_COLUMN_MODIFY_TO_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_IDENTITY_COLUMN_CANNOT_HAVE_DEFAULT_VALUE] = &_error_OB_ERR_IDENTITY_COLUMN_CANNOT_HAVE_DEFAULT_VALUE;
 | 
						|
    _errors[-OB_ERR_IDENTITY_COLUMN_MUST_BE_NUMERIC_TYPE] = &_error_OB_ERR_IDENTITY_COLUMN_MUST_BE_NUMERIC_TYPE;
 | 
						|
    _errors[-OB_ERR_PREBUILT_TABLE_MANAGED_CANNOT_BE_IDENTITY_COLUMN] = &_error_OB_ERR_PREBUILT_TABLE_MANAGED_CANNOT_BE_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_CANNOT_ALTER_SYSTEM_GENERATED_SEQUENCE] = &_error_OB_ERR_CANNOT_ALTER_SYSTEM_GENERATED_SEQUENCE;
 | 
						|
    _errors[-OB_ERR_CANNOT_DROP_SYSTEM_GENERATED_SEQUENCE] = &_error_OB_ERR_CANNOT_DROP_SYSTEM_GENERATED_SEQUENCE;
 | 
						|
    _errors[-OB_ERR_INSERT_INTO_GENERATED_ALWAYS_IDENTITY_COLUMN] = &_error_OB_ERR_INSERT_INTO_GENERATED_ALWAYS_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_UPDATE_GENERATED_ALWAYS_IDENTITY_COLUMN] = &_error_OB_ERR_UPDATE_GENERATED_ALWAYS_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_IDENTITY_COLUMN_SEQUENCE_MISMATCH_ALTER_TABLE_EXCHANGE_PARTITION] = &_error_OB_ERR_IDENTITY_COLUMN_SEQUENCE_MISMATCH_ALTER_TABLE_EXCHANGE_PARTITION;
 | 
						|
    _errors[-OB_ERR_CANNOT_RENAME_SYSTEM_GENERATED_SEQUENCE] = &_error_OB_ERR_CANNOT_RENAME_SYSTEM_GENERATED_SEQUENCE;
 | 
						|
    _errors[-OB_ERR_REVOKE_BY_COLUMN] = &_error_OB_ERR_REVOKE_BY_COLUMN;
 | 
						|
    _errors[-OB_ERR_TYPE_BODY_NOT_EXIST] = &_error_OB_ERR_TYPE_BODY_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_INVALID_ARGUMENT_FOR_WIDTH_BUCKET] = &_error_OB_ERR_INVALID_ARGUMENT_FOR_WIDTH_BUCKET;
 | 
						|
    _errors[-OB_ERR_CBY_NO_MEMORY] = &_error_OB_ERR_CBY_NO_MEMORY;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_PARAM_FOR_CBY_PATH] = &_error_OB_ERR_ILLEGAL_PARAM_FOR_CBY_PATH;
 | 
						|
    _errors[-OB_ERR_HOST_UNKNOWN] = &_error_OB_ERR_HOST_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_WINDOW_NAME_IS_NOT_DEFINE] = &_error_OB_ERR_WINDOW_NAME_IS_NOT_DEFINE;
 | 
						|
    _errors[-OB_ERR_OPEN_CURSORS_EXCEEDED] = &_error_OB_ERR_OPEN_CURSORS_EXCEEDED;
 | 
						|
    _errors[-OB_ERR_FETCH_OUT_SEQUENCE] = &_error_OB_ERR_FETCH_OUT_SEQUENCE;
 | 
						|
    _errors[-OB_ERR_UNEXPECTED_NAME_STR] = &_error_OB_ERR_UNEXPECTED_NAME_STR;
 | 
						|
    _errors[-OB_ERR_NO_PROGRAM_UNIT] = &_error_OB_ERR_NO_PROGRAM_UNIT;
 | 
						|
    _errors[-OB_ERR_ARG_INVALID] = &_error_OB_ERR_ARG_INVALID;
 | 
						|
    _errors[-OB_ERR_DBMS_STATS_PL] = &_error_OB_ERR_DBMS_STATS_PL;
 | 
						|
    _errors[-OB_ERR_INCORRECT_VALUE_FOR_FUNCTION] = &_error_OB_ERR_INCORRECT_VALUE_FOR_FUNCTION;
 | 
						|
    _errors[-OB_ERR_UNSUPPORTED_CHARACTER_SET] = &_error_OB_ERR_UNSUPPORTED_CHARACTER_SET;
 | 
						|
    _errors[-OB_ERR_MUST_BE_FOLLOWED_BY_FOUR_HEXDECIMAL_CHARACTERS_OR_ANOTHER] = &_error_OB_ERR_MUST_BE_FOLLOWED_BY_FOUR_HEXDECIMAL_CHARACTERS_OR_ANOTHER;
 | 
						|
    _errors[-OB_ERR_PARAMETER_TOO_LONG] = &_error_OB_ERR_PARAMETER_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_INVALID_PLSQL_CCFLAGS] = &_error_OB_ERR_INVALID_PLSQL_CCFLAGS;
 | 
						|
    _errors[-OB_ERR_REF_MUTUALLY_DEP] = &_error_OB_ERR_REF_MUTUALLY_DEP;
 | 
						|
    _errors[-OB_ERR_COLUMN_NOT_ALLOWED] = &_error_OB_ERR_COLUMN_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CANNOT_ACCESS_NLS_DATA_FILES_OR_INVALID_ENVIRONMENT_SPECIFIED] = &_error_OB_ERR_CANNOT_ACCESS_NLS_DATA_FILES_OR_INVALID_ENVIRONMENT_SPECIFIED;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_NULL_SPECIFICATION] = &_error_OB_ERR_DUPLICATE_NULL_SPECIFICATION;
 | 
						|
    _errors[-OB_ERR_NOT_NULL_CONSTRAINT_VIOLATED] = &_error_OB_ERR_NOT_NULL_CONSTRAINT_VIOLATED;
 | 
						|
    _errors[-OB_ERR_TABLE_ADD_NOT_NULL_COLUMN_NOT_EMPTY] = &_error_OB_ERR_TABLE_ADD_NOT_NULL_COLUMN_NOT_EMPTY;
 | 
						|
    _errors[-OB_ERR_COLUMN_EXPRESSION_MODIFICATION_WITH_OTHER_DDL] = &_error_OB_ERR_COLUMN_EXPRESSION_MODIFICATION_WITH_OTHER_DDL;
 | 
						|
    _errors[-OB_ERR_VIRTUAL_COL_WITH_CONSTRAINT_CANT_BE_CHANGED] = &_error_OB_ERR_VIRTUAL_COL_WITH_CONSTRAINT_CANT_BE_CHANGED;
 | 
						|
    _errors[-OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_IDENTITY_COLUMN] = &_error_OB_ERR_INVALID_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_IDENTITY_COLUMN;
 | 
						|
    _errors[-OB_ERR_INVALID_DATA_TYPE_FOR_AT_TIME_ZONE] = &_error_OB_ERR_INVALID_DATA_TYPE_FOR_AT_TIME_ZONE;
 | 
						|
    _errors[-OB_ERR_BAD_ARG] = &_error_OB_ERR_BAD_ARG;
 | 
						|
    _errors[-OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN] = &_error_OB_ERR_CANNOT_MODIFY_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN;
 | 
						|
    _errors[-OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN] = &_error_OB_ERR_CANNOT_DROP_NOT_NULL_CONSTRAINT_ON_DEFAULT_ON_NULL_COLUMN;
 | 
						|
    _errors[-OB_ERR_INVALID_PATH] = &_error_OB_ERR_INVALID_PATH;
 | 
						|
    _errors[-OB_ERR_INVALID_PARAM_ENCOUNTERED] = &_error_OB_ERR_INVALID_PARAM_ENCOUNTERED;
 | 
						|
    _errors[-OB_ERR_INCORRECT_METHOD_USAGE] = &_error_OB_ERR_INCORRECT_METHOD_USAGE;
 | 
						|
    _errors[-OB_ERR_TYPE_MISMATCH] = &_error_OB_ERR_TYPE_MISMATCH;
 | 
						|
    _errors[-OB_ERR_FETCH_COLUMN_NULL] = &_error_OB_ERR_FETCH_COLUMN_NULL;
 | 
						|
    _errors[-OB_ERR_INVALID_SIZE_SPECIFIED] = &_error_OB_ERR_INVALID_SIZE_SPECIFIED;
 | 
						|
    _errors[-OB_ERR_SOURCE_EMPTY] = &_error_OB_ERR_SOURCE_EMPTY;
 | 
						|
    _errors[-OB_ERR_BAD_VALUE_FOR_OBJECT_TYPE] = &_error_OB_ERR_BAD_VALUE_FOR_OBJECT_TYPE;
 | 
						|
    _errors[-OB_ERR_UNABLE_GET_SOURCE] = &_error_OB_ERR_UNABLE_GET_SOURCE;
 | 
						|
    _errors[-OB_ERR_MISSING_IDENTIFIER] = &_error_OB_ERR_MISSING_IDENTIFIER;
 | 
						|
    _errors[-OB_ERR_DUP_COMPILE_PARAM] = &_error_OB_ERR_DUP_COMPILE_PARAM;
 | 
						|
    _errors[-OB_ERR_DATA_NOT_WELL_FORMAT] = &_error_OB_ERR_DATA_NOT_WELL_FORMAT;
 | 
						|
    _errors[-OB_ERR_MUST_COMPOSIT_TYPE] = &_error_OB_ERR_MUST_COMPOSIT_TYPE;
 | 
						|
    _errors[-OB_ERR_USER_EXCEED_RESOURCE] = &_error_OB_ERR_USER_EXCEED_RESOURCE;
 | 
						|
    _errors[-OB_ERR_UTL_ENCODE_ARGUMENT_INVALID] = &_error_OB_ERR_UTL_ENCODE_ARGUMENT_INVALID;
 | 
						|
    _errors[-OB_ERR_UTL_ENCODE_CHARSET_INVALID] = &_error_OB_ERR_UTL_ENCODE_CHARSET_INVALID;
 | 
						|
    _errors[-OB_ERR_UTL_ENCODE_MIME_HEAD_TAG] = &_error_OB_ERR_UTL_ENCODE_MIME_HEAD_TAG;
 | 
						|
    _errors[-OB_ERR_CHECK_OPTION_VIOLATED] = &_error_OB_ERR_CHECK_OPTION_VIOLATED;
 | 
						|
    _errors[-OB_ERR_CHECK_OPTION_ON_NONUPDATABLE_VIEW] = &_error_OB_ERR_CHECK_OPTION_ON_NONUPDATABLE_VIEW;
 | 
						|
    _errors[-OB_ERR_NO_DESC_FOR_POS] = &_error_OB_ERR_NO_DESC_FOR_POS;
 | 
						|
    _errors[-OB_ERR_ILL_OBJ_FLAG] = &_error_OB_ERR_ILL_OBJ_FLAG;
 | 
						|
    _errors[-OB_ERR_DBLINK_REMOTE_ECODE] = &_error_OB_ERR_DBLINK_REMOTE_ECODE;
 | 
						|
    _errors[-OB_ERR_DBLINK_NO_LIB] = &_error_OB_ERR_DBLINK_NO_LIB;
 | 
						|
    _errors[-OB_ERR_PARTITION_EXTENDED_ON_VIEW] = &_error_OB_ERR_PARTITION_EXTENDED_ON_VIEW;
 | 
						|
    _errors[-OB_ERR_NOT_ALL_VARIABLE_BIND] = &_error_OB_ERR_NOT_ALL_VARIABLE_BIND;
 | 
						|
    _errors[-OB_ERR_BIND_VARIABLE_NOT_EXIST] = &_error_OB_ERR_BIND_VARIABLE_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_NOT_VALID_ROUTINE_NAME] = &_error_OB_ERR_NOT_VALID_ROUTINE_NAME;
 | 
						|
    _errors[-OB_ERR_DDL_IN_ILLEGAL_CONTEXT] = &_error_OB_ERR_DDL_IN_ILLEGAL_CONTEXT;
 | 
						|
    _errors[-OB_ERR_CTE_NEED_QUERY_BLOCKS] = &_error_OB_ERR_CTE_NEED_QUERY_BLOCKS;
 | 
						|
    _errors[-OB_ERR_WINDOW_ROWS_INTERVAL_USE] = &_error_OB_ERR_WINDOW_ROWS_INTERVAL_USE;
 | 
						|
    _errors[-OB_ERR_WINDOW_RANGE_FRAME_ORDER_TYPE] = &_error_OB_ERR_WINDOW_RANGE_FRAME_ORDER_TYPE;
 | 
						|
    _errors[-OB_ERR_WINDOW_ILLEGAL_ORDER_BY] = &_error_OB_ERR_WINDOW_ILLEGAL_ORDER_BY;
 | 
						|
    _errors[-OB_ERR_MULTIPLE_CONSTRAINTS_WITH_SAME_NAME] = &_error_OB_ERR_MULTIPLE_CONSTRAINTS_WITH_SAME_NAME;
 | 
						|
    _errors[-OB_ERR_NON_BOOLEAN_EXPR_FOR_CHECK_CONSTRAINT] = &_error_OB_ERR_NON_BOOLEAN_EXPR_FOR_CHECK_CONSTRAINT;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_NOT_FOUND] = &_error_OB_ERR_CHECK_CONSTRAINT_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_ALTER_CONSTRAINT_ENFORCEMENT_NOT_SUPPORTED] = &_error_OB_ERR_ALTER_CONSTRAINT_ENFORCEMENT_NOT_SUPPORTED;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_REFERS_AUTO_INCREMENT_COLUMN] = &_error_OB_ERR_CHECK_CONSTRAINT_REFERS_AUTO_INCREMENT_COLUMN;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_NAMED_FUNCTION_IS_NOT_ALLOWED] = &_error_OB_ERR_CHECK_CONSTRAINT_NAMED_FUNCTION_IS_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_FUNCTION_IS_NOT_ALLOWED] = &_error_OB_ERR_CHECK_CONSTRAINT_FUNCTION_IS_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_VARIABLES] = &_error_OB_ERR_CHECK_CONSTRAINT_VARIABLES;
 | 
						|
    _errors[-OB_ERR_CHECK_CONSTRAINT_REFERS_UNKNOWN_COLUMN] = &_error_OB_ERR_CHECK_CONSTRAINT_REFERS_UNKNOWN_COLUMN;
 | 
						|
    _errors[-OB_ERR_USE_UDF_IN_PART] = &_error_OB_ERR_USE_UDF_IN_PART;
 | 
						|
    _errors[-OB_ERR_USE_UDF_NOT_DETERMIN] = &_error_OB_ERR_USE_UDF_NOT_DETERMIN;
 | 
						|
    _errors[-OB_ERR_INTERVAL_CLAUSE_HAS_MORE_THAN_ONE_COLUMN] = &_error_OB_ERR_INTERVAL_CLAUSE_HAS_MORE_THAN_ONE_COLUMN;
 | 
						|
    _errors[-OB_ERR_INVALID_DATA_TYPE_INTERVAL_TABLE] = &_error_OB_ERR_INVALID_DATA_TYPE_INTERVAL_TABLE;
 | 
						|
    _errors[-OB_ERR_INTERVAL_EXPR_NOT_CORRECT_TYPE] = &_error_OB_ERR_INTERVAL_EXPR_NOT_CORRECT_TYPE;
 | 
						|
    _errors[-OB_ERR_TABLE_IS_ALREADY_A_RANGE_PARTITIONED_TABLE] = &_error_OB_ERR_TABLE_IS_ALREADY_A_RANGE_PARTITIONED_TABLE;
 | 
						|
    _errors[-OB_TRANSACTION_SET_VIOLATION] = &_error_OB_TRANSACTION_SET_VIOLATION;
 | 
						|
    _errors[-OB_TRANS_ROLLBACKED] = &_error_OB_TRANS_ROLLBACKED;
 | 
						|
    _errors[-OB_ERR_EXCLUSIVE_LOCK_CONFLICT] = &_error_OB_ERR_EXCLUSIVE_LOCK_CONFLICT;
 | 
						|
    _errors[-OB_ERR_SHARED_LOCK_CONFLICT] = &_error_OB_ERR_SHARED_LOCK_CONFLICT;
 | 
						|
    _errors[-OB_TRY_LOCK_ROW_CONFLICT] = &_error_OB_TRY_LOCK_ROW_CONFLICT;
 | 
						|
    _errors[-OB_ERR_EXCLUSIVE_LOCK_CONFLICT_NOWAIT] = &_error_OB_ERR_EXCLUSIVE_LOCK_CONFLICT_NOWAIT;
 | 
						|
    _errors[-OB_CLOCK_OUT_OF_ORDER] = &_error_OB_CLOCK_OUT_OF_ORDER;
 | 
						|
    _errors[-OB_SWITCHING_TO_FOLLOWER_GRACEFULLY] = &_error_OB_SWITCHING_TO_FOLLOWER_GRACEFULLY;
 | 
						|
    _errors[-OB_MASK_SET_NO_NODE] = &_error_OB_MASK_SET_NO_NODE;
 | 
						|
    _errors[-OB_TRANS_HAS_DECIDED] = &_error_OB_TRANS_HAS_DECIDED;
 | 
						|
    _errors[-OB_TRANS_INVALID_STATE] = &_error_OB_TRANS_INVALID_STATE;
 | 
						|
    _errors[-OB_TRANS_STATE_NOT_CHANGE] = &_error_OB_TRANS_STATE_NOT_CHANGE;
 | 
						|
    _errors[-OB_TRANS_PROTOCOL_ERROR] = &_error_OB_TRANS_PROTOCOL_ERROR;
 | 
						|
    _errors[-OB_TRANS_INVALID_MESSAGE] = &_error_OB_TRANS_INVALID_MESSAGE;
 | 
						|
    _errors[-OB_TRANS_INVALID_MESSAGE_TYPE] = &_error_OB_TRANS_INVALID_MESSAGE_TYPE;
 | 
						|
    _errors[-OB_TRANS_TIMEOUT] = &_error_OB_TRANS_TIMEOUT;
 | 
						|
    _errors[-OB_TRANS_KILLED] = &_error_OB_TRANS_KILLED;
 | 
						|
    _errors[-OB_TRANS_STMT_TIMEOUT] = &_error_OB_TRANS_STMT_TIMEOUT;
 | 
						|
    _errors[-OB_TRANS_CTX_NOT_EXIST] = &_error_OB_TRANS_CTX_NOT_EXIST;
 | 
						|
    _errors[-OB_PARTITION_IS_FROZEN] = &_error_OB_PARTITION_IS_FROZEN;
 | 
						|
    _errors[-OB_PARTITION_IS_NOT_FROZEN] = &_error_OB_PARTITION_IS_NOT_FROZEN;
 | 
						|
    _errors[-OB_TRANS_INVALID_LOG_TYPE] = &_error_OB_TRANS_INVALID_LOG_TYPE;
 | 
						|
    _errors[-OB_TRANS_SQL_SEQUENCE_ILLEGAL] = &_error_OB_TRANS_SQL_SEQUENCE_ILLEGAL;
 | 
						|
    _errors[-OB_TRANS_CANNOT_BE_KILLED] = &_error_OB_TRANS_CANNOT_BE_KILLED;
 | 
						|
    _errors[-OB_TRANS_STATE_UNKNOWN] = &_error_OB_TRANS_STATE_UNKNOWN;
 | 
						|
    _errors[-OB_TRANS_IS_EXITING] = &_error_OB_TRANS_IS_EXITING;
 | 
						|
    _errors[-OB_TRANS_NEED_ROLLBACK] = &_error_OB_TRANS_NEED_ROLLBACK;
 | 
						|
    _errors[-OB_TRANS_UNKNOWN] = &_error_OB_TRANS_UNKNOWN;
 | 
						|
    _errors[-OB_ERR_READ_ONLY_TRANSACTION] = &_error_OB_ERR_READ_ONLY_TRANSACTION;
 | 
						|
    _errors[-OB_PARTITION_IS_NOT_STOPPED] = &_error_OB_PARTITION_IS_NOT_STOPPED;
 | 
						|
    _errors[-OB_PARTITION_IS_STOPPED] = &_error_OB_PARTITION_IS_STOPPED;
 | 
						|
    _errors[-OB_PARTITION_IS_BLOCKED] = &_error_OB_PARTITION_IS_BLOCKED;
 | 
						|
    _errors[-OB_TRANS_RPC_TIMEOUT] = &_error_OB_TRANS_RPC_TIMEOUT;
 | 
						|
    _errors[-OB_REPLICA_NOT_READABLE] = &_error_OB_REPLICA_NOT_READABLE;
 | 
						|
    _errors[-OB_PARTITION_IS_SPLITTING] = &_error_OB_PARTITION_IS_SPLITTING;
 | 
						|
    _errors[-OB_TRANS_COMMITED] = &_error_OB_TRANS_COMMITED;
 | 
						|
    _errors[-OB_TRANS_CTX_COUNT_REACH_LIMIT] = &_error_OB_TRANS_CTX_COUNT_REACH_LIMIT;
 | 
						|
    _errors[-OB_TRANS_CANNOT_SERIALIZE] = &_error_OB_TRANS_CANNOT_SERIALIZE;
 | 
						|
    _errors[-OB_TRANS_WEAK_READ_VERSION_NOT_READY] = &_error_OB_TRANS_WEAK_READ_VERSION_NOT_READY;
 | 
						|
    _errors[-OB_GTS_STANDBY_IS_INVALID] = &_error_OB_GTS_STANDBY_IS_INVALID;
 | 
						|
    _errors[-OB_GTS_UPDATE_FAILED] = &_error_OB_GTS_UPDATE_FAILED;
 | 
						|
    _errors[-OB_GTS_IS_NOT_SERVING] = &_error_OB_GTS_IS_NOT_SERVING;
 | 
						|
    _errors[-OB_PG_PARTITION_NOT_EXIST] = &_error_OB_PG_PARTITION_NOT_EXIST;
 | 
						|
    _errors[-OB_TRANS_STMT_NEED_RETRY] = &_error_OB_TRANS_STMT_NEED_RETRY;
 | 
						|
    _errors[-OB_SAVEPOINT_NOT_EXIST] = &_error_OB_SAVEPOINT_NOT_EXIST;
 | 
						|
    _errors[-OB_TRANS_WAIT_SCHEMA_REFRESH] = &_error_OB_TRANS_WAIT_SCHEMA_REFRESH;
 | 
						|
    _errors[-OB_TRANS_OUT_OF_THRESHOLD] = &_error_OB_TRANS_OUT_OF_THRESHOLD;
 | 
						|
    _errors[-OB_TRANS_XA_NOTA] = &_error_OB_TRANS_XA_NOTA;
 | 
						|
    _errors[-OB_TRANS_XA_RMFAIL] = &_error_OB_TRANS_XA_RMFAIL;
 | 
						|
    _errors[-OB_TRANS_XA_DUPID] = &_error_OB_TRANS_XA_DUPID;
 | 
						|
    _errors[-OB_TRANS_XA_OUTSIDE] = &_error_OB_TRANS_XA_OUTSIDE;
 | 
						|
    _errors[-OB_TRANS_XA_INVAL] = &_error_OB_TRANS_XA_INVAL;
 | 
						|
    _errors[-OB_TRANS_XA_RMERR] = &_error_OB_TRANS_XA_RMERR;
 | 
						|
    _errors[-OB_TRANS_XA_PROTO] = &_error_OB_TRANS_XA_PROTO;
 | 
						|
    _errors[-OB_TRANS_XA_RBROLLBACK] = &_error_OB_TRANS_XA_RBROLLBACK;
 | 
						|
    _errors[-OB_TRANS_XA_RBTIMEOUT] = &_error_OB_TRANS_XA_RBTIMEOUT;
 | 
						|
    _errors[-OB_TRANS_XA_RDONLY] = &_error_OB_TRANS_XA_RDONLY;
 | 
						|
    _errors[-OB_TRANS_XA_RETRY] = &_error_OB_TRANS_XA_RETRY;
 | 
						|
    _errors[-OB_ERR_ROW_NOT_LOCKED] = &_error_OB_ERR_ROW_NOT_LOCKED;
 | 
						|
    _errors[-OB_EMPTY_PG] = &_error_OB_EMPTY_PG;
 | 
						|
    _errors[-OB_TRANS_XA_ERR_COMMIT] = &_error_OB_TRANS_XA_ERR_COMMIT;
 | 
						|
    _errors[-OB_ERR_RESTORE_POINT_EXIST] = &_error_OB_ERR_RESTORE_POINT_EXIST;
 | 
						|
    _errors[-OB_ERR_RESTORE_POINT_NOT_EXIST] = &_error_OB_ERR_RESTORE_POINT_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_BACKUP_POINT_EXIST] = &_error_OB_ERR_BACKUP_POINT_EXIST;
 | 
						|
    _errors[-OB_ERR_BACKUP_POINT_NOT_EXIST] = &_error_OB_ERR_BACKUP_POINT_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_RESTORE_POINT_TOO_MANY] = &_error_OB_ERR_RESTORE_POINT_TOO_MANY;
 | 
						|
    _errors[-OB_TRANS_XA_BRANCH_FAIL] = &_error_OB_TRANS_XA_BRANCH_FAIL;
 | 
						|
    _errors[-OB_OBJ_LOCK_NOT_EXIST] = &_error_OB_OBJ_LOCK_NOT_EXIST;
 | 
						|
    _errors[-OB_OBJ_LOCK_EXIST] = &_error_OB_OBJ_LOCK_EXIST;
 | 
						|
    _errors[-OB_TRY_LOCK_OBJ_CONFLICT] = &_error_OB_TRY_LOCK_OBJ_CONFLICT;
 | 
						|
    _errors[-OB_TX_NOLOGCB] = &_error_OB_TX_NOLOGCB;
 | 
						|
    _errors[-OB_ERR_ADD_PARTITION_ON_INTERVAL] = &_error_OB_ERR_ADD_PARTITION_ON_INTERVAL;
 | 
						|
    _errors[-OB_ERR_MAXVALUE_PARTITION_WITH_INTERVAL] = &_error_OB_ERR_MAXVALUE_PARTITION_WITH_INTERVAL;
 | 
						|
    _errors[-OB_ERR_INVALID_INTERVAL_HIGH_BOUNDS] = &_error_OB_ERR_INVALID_INTERVAL_HIGH_BOUNDS;
 | 
						|
    _errors[-OB_NO_PARTITION_FOR_INTERVAL_PART] = &_error_OB_NO_PARTITION_FOR_INTERVAL_PART;
 | 
						|
    _errors[-OB_ERR_INTERVAL_CANNOT_BE_ZERO] = &_error_OB_ERR_INTERVAL_CANNOT_BE_ZERO;
 | 
						|
    _errors[-OB_ERR_PARTITIONING_KEY_MAPS_TO_A_PARTITION_OUTSIDE_MAXIMUM_PERMITTED_NUMBER_OF_PARTITIONS] = &_error_OB_ERR_PARTITIONING_KEY_MAPS_TO_A_PARTITION_OUTSIDE_MAXIMUM_PERMITTED_NUMBER_OF_PARTITIONS;
 | 
						|
    _errors[-OB_OBJ_LOCK_NOT_COMPLETED] = &_error_OB_OBJ_LOCK_NOT_COMPLETED;
 | 
						|
    _errors[-OB_OBJ_UNLOCK_CONFLICT] = &_error_OB_OBJ_UNLOCK_CONFLICT;
 | 
						|
    _errors[-OB_SCN_OUT_OF_BOUND] = &_error_OB_SCN_OUT_OF_BOUND;
 | 
						|
    _errors[-OB_TRANS_IDLE_TIMEOUT] = &_error_OB_TRANS_IDLE_TIMEOUT;
 | 
						|
    _errors[-OB_LOG_ID_NOT_FOUND] = &_error_OB_LOG_ID_NOT_FOUND;
 | 
						|
    _errors[-OB_LSR_THREAD_STOPPED] = &_error_OB_LSR_THREAD_STOPPED;
 | 
						|
    _errors[-OB_NO_LOG] = &_error_OB_NO_LOG;
 | 
						|
    _errors[-OB_LOG_ID_RANGE_ERROR] = &_error_OB_LOG_ID_RANGE_ERROR;
 | 
						|
    _errors[-OB_LOG_ITER_ENOUGH] = &_error_OB_LOG_ITER_ENOUGH;
 | 
						|
    _errors[-OB_CLOG_INVALID_ACK] = &_error_OB_CLOG_INVALID_ACK;
 | 
						|
    _errors[-OB_CLOG_CACHE_INVALID] = &_error_OB_CLOG_CACHE_INVALID;
 | 
						|
    _errors[-OB_EXT_HANDLE_UNFINISH] = &_error_OB_EXT_HANDLE_UNFINISH;
 | 
						|
    _errors[-OB_CURSOR_NOT_EXIST] = &_error_OB_CURSOR_NOT_EXIST;
 | 
						|
    _errors[-OB_STREAM_NOT_EXIST] = &_error_OB_STREAM_NOT_EXIST;
 | 
						|
    _errors[-OB_STREAM_BUSY] = &_error_OB_STREAM_BUSY;
 | 
						|
    _errors[-OB_FILE_RECYCLED] = &_error_OB_FILE_RECYCLED;
 | 
						|
    _errors[-OB_REPLAY_EAGAIN_TOO_MUCH_TIME] = &_error_OB_REPLAY_EAGAIN_TOO_MUCH_TIME;
 | 
						|
    _errors[-OB_MEMBER_CHANGE_FAILED] = &_error_OB_MEMBER_CHANGE_FAILED;
 | 
						|
    _errors[-OB_NO_NEED_BATCH_CTX] = &_error_OB_NO_NEED_BATCH_CTX;
 | 
						|
    _errors[-OB_TOO_LARGE_LOG_ID] = &_error_OB_TOO_LARGE_LOG_ID;
 | 
						|
    _errors[-OB_ALLOC_LOG_ID_NEED_RETRY] = &_error_OB_ALLOC_LOG_ID_NEED_RETRY;
 | 
						|
    _errors[-OB_TRANS_ONE_PC_NOT_ALLOWED] = &_error_OB_TRANS_ONE_PC_NOT_ALLOWED;
 | 
						|
    _errors[-OB_LOG_NEED_REBUILD] = &_error_OB_LOG_NEED_REBUILD;
 | 
						|
    _errors[-OB_TOO_MANY_LOG_TASK] = &_error_OB_TOO_MANY_LOG_TASK;
 | 
						|
    _errors[-OB_INVALID_BATCH_SIZE] = &_error_OB_INVALID_BATCH_SIZE;
 | 
						|
    _errors[-OB_CLOG_SLIDE_TIMEOUT] = &_error_OB_CLOG_SLIDE_TIMEOUT;
 | 
						|
    _errors[-OB_ELECTION_WARN_LOGBUF_FULL] = &_error_OB_ELECTION_WARN_LOGBUF_FULL;
 | 
						|
    _errors[-OB_ELECTION_WARN_LOGBUF_EMPTY] = &_error_OB_ELECTION_WARN_LOGBUF_EMPTY;
 | 
						|
    _errors[-OB_ELECTION_WARN_NOT_RUNNING] = &_error_OB_ELECTION_WARN_NOT_RUNNING;
 | 
						|
    _errors[-OB_ELECTION_WARN_IS_RUNNING] = &_error_OB_ELECTION_WARN_IS_RUNNING;
 | 
						|
    _errors[-OB_ELECTION_WARN_NOT_REACH_MAJORITY] = &_error_OB_ELECTION_WARN_NOT_REACH_MAJORITY;
 | 
						|
    _errors[-OB_ELECTION_WARN_INVALID_SERVER] = &_error_OB_ELECTION_WARN_INVALID_SERVER;
 | 
						|
    _errors[-OB_ELECTION_WARN_INVALID_LEADER] = &_error_OB_ELECTION_WARN_INVALID_LEADER;
 | 
						|
    _errors[-OB_ELECTION_WARN_LEADER_LEASE_EXPIRED] = &_error_OB_ELECTION_WARN_LEADER_LEASE_EXPIRED;
 | 
						|
    _errors[-OB_ELECTION_WARN_INVALID_MESSAGE] = &_error_OB_ELECTION_WARN_INVALID_MESSAGE;
 | 
						|
    _errors[-OB_ELECTION_WARN_MESSAGE_NOT_INTIME] = &_error_OB_ELECTION_WARN_MESSAGE_NOT_INTIME;
 | 
						|
    _errors[-OB_ELECTION_WARN_NOT_CANDIDATE] = &_error_OB_ELECTION_WARN_NOT_CANDIDATE;
 | 
						|
    _errors[-OB_ELECTION_WARN_NOT_CANDIDATE_OR_VOTER] = &_error_OB_ELECTION_WARN_NOT_CANDIDATE_OR_VOTER;
 | 
						|
    _errors[-OB_ELECTION_WARN_PROTOCOL_ERROR] = &_error_OB_ELECTION_WARN_PROTOCOL_ERROR;
 | 
						|
    _errors[-OB_ELECTION_WARN_RUNTIME_OUT_OF_RANGE] = &_error_OB_ELECTION_WARN_RUNTIME_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ELECTION_WARN_LAST_OPERATION_NOT_DONE] = &_error_OB_ELECTION_WARN_LAST_OPERATION_NOT_DONE;
 | 
						|
    _errors[-OB_ELECTION_WARN_CURRENT_SERVER_NOT_LEADER] = &_error_OB_ELECTION_WARN_CURRENT_SERVER_NOT_LEADER;
 | 
						|
    _errors[-OB_ELECTION_WARN_NO_PREPARE_MESSAGE] = &_error_OB_ELECTION_WARN_NO_PREPARE_MESSAGE;
 | 
						|
    _errors[-OB_ELECTION_ERROR_MULTI_PREPARE_MESSAGE] = &_error_OB_ELECTION_ERROR_MULTI_PREPARE_MESSAGE;
 | 
						|
    _errors[-OB_ELECTION_NOT_EXIST] = &_error_OB_ELECTION_NOT_EXIST;
 | 
						|
    _errors[-OB_ELECTION_MGR_IS_RUNNING] = &_error_OB_ELECTION_MGR_IS_RUNNING;
 | 
						|
    _errors[-OB_ELECTION_WARN_NO_MAJORITY_PREPARE_MESSAGE] = &_error_OB_ELECTION_WARN_NO_MAJORITY_PREPARE_MESSAGE;
 | 
						|
    _errors[-OB_ELECTION_ASYNC_LOG_WARN_INIT] = &_error_OB_ELECTION_ASYNC_LOG_WARN_INIT;
 | 
						|
    _errors[-OB_ELECTION_WAIT_LEADER_MESSAGE] = &_error_OB_ELECTION_WAIT_LEADER_MESSAGE;
 | 
						|
    _errors[-OB_ELECTION_GROUP_NOT_EXIST] = &_error_OB_ELECTION_GROUP_NOT_EXIST;
 | 
						|
    _errors[-OB_UNEXPECT_EG_VERSION] = &_error_OB_UNEXPECT_EG_VERSION;
 | 
						|
    _errors[-OB_ELECTION_GROUP_MGR_IS_RUNNING] = &_error_OB_ELECTION_GROUP_MGR_IS_RUNNING;
 | 
						|
    _errors[-OB_ELECTION_MGR_NOT_RUNNING] = &_error_OB_ELECTION_MGR_NOT_RUNNING;
 | 
						|
    _errors[-OB_ELECTION_ERROR_VOTE_MSG_CONFLICT] = &_error_OB_ELECTION_ERROR_VOTE_MSG_CONFLICT;
 | 
						|
    _errors[-OB_ELECTION_ERROR_DUPLICATED_MSG] = &_error_OB_ELECTION_ERROR_DUPLICATED_MSG;
 | 
						|
    _errors[-OB_ELECTION_WARN_T1_NOT_MATCH] = &_error_OB_ELECTION_WARN_T1_NOT_MATCH;
 | 
						|
    _errors[-OB_ELECTION_BELOW_MAJORITY] = &_error_OB_ELECTION_BELOW_MAJORITY;
 | 
						|
    _errors[-OB_ELECTION_OVER_MAJORITY] = &_error_OB_ELECTION_OVER_MAJORITY;
 | 
						|
    _errors[-OB_ELECTION_DURING_UPGRADING] = &_error_OB_ELECTION_DURING_UPGRADING;
 | 
						|
    _errors[-OB_TRANSFER_TASK_COMPLETED] = &_error_OB_TRANSFER_TASK_COMPLETED;
 | 
						|
    _errors[-OB_TOO_MANY_TRANSFER_TASK] = &_error_OB_TOO_MANY_TRANSFER_TASK;
 | 
						|
    _errors[-OB_TRANSFER_TASK_EXIST] = &_error_OB_TRANSFER_TASK_EXIST;
 | 
						|
    _errors[-OB_TRANSFER_TASK_NOT_EXIST] = &_error_OB_TRANSFER_TASK_NOT_EXIST;
 | 
						|
    _errors[-OB_NOT_ALLOW_TO_REMOVE] = &_error_OB_NOT_ALLOW_TO_REMOVE;
 | 
						|
    _errors[-OB_RG_NOT_MATCH] = &_error_OB_RG_NOT_MATCH;
 | 
						|
    _errors[-OB_TRANSFER_TASK_ABORTED] = &_error_OB_TRANSFER_TASK_ABORTED;
 | 
						|
    _errors[-OB_TRANSFER_INVALID_MESSAGE] = &_error_OB_TRANSFER_INVALID_MESSAGE;
 | 
						|
    _errors[-OB_TRANSFER_CTX_TS_NOT_MATCH] = &_error_OB_TRANSFER_CTX_TS_NOT_MATCH;
 | 
						|
    _errors[-OB_SERVER_IS_INIT] = &_error_OB_SERVER_IS_INIT;
 | 
						|
    _errors[-OB_SERVER_IS_STOPPING] = &_error_OB_SERVER_IS_STOPPING;
 | 
						|
    _errors[-OB_PACKET_CHECKSUM_ERROR] = &_error_OB_PACKET_CHECKSUM_ERROR;
 | 
						|
    _errors[-OB_PACKET_CLUSTER_ID_NOT_MATCH] = &_error_OB_PACKET_CLUSTER_ID_NOT_MATCH;
 | 
						|
    _errors[-OB_URI_ERROR] = &_error_OB_URI_ERROR;
 | 
						|
    _errors[-OB_FINAL_MD5_ERROR] = &_error_OB_FINAL_MD5_ERROR;
 | 
						|
    _errors[-OB_OSS_ERROR] = &_error_OB_OSS_ERROR;
 | 
						|
    _errors[-OB_INIT_MD5_ERROR] = &_error_OB_INIT_MD5_ERROR;
 | 
						|
    _errors[-OB_OUT_OF_ELEMENT] = &_error_OB_OUT_OF_ELEMENT;
 | 
						|
    _errors[-OB_UPDATE_MD5_ERROR] = &_error_OB_UPDATE_MD5_ERROR;
 | 
						|
    _errors[-OB_FILE_LENGTH_INVALID] = &_error_OB_FILE_LENGTH_INVALID;
 | 
						|
    _errors[-OB_NOT_READ_ALL_DATA] = &_error_OB_NOT_READ_ALL_DATA;
 | 
						|
    _errors[-OB_BUILD_MD5_ERROR] = &_error_OB_BUILD_MD5_ERROR;
 | 
						|
    _errors[-OB_MD5_NOT_MATCH] = &_error_OB_MD5_NOT_MATCH;
 | 
						|
    _errors[-OB_BACKUP_FILE_NOT_EXIST] = &_error_OB_BACKUP_FILE_NOT_EXIST;
 | 
						|
    _errors[-OB_OSS_DATA_VERSION_NOT_MATCHED] = &_error_OB_OSS_DATA_VERSION_NOT_MATCHED;
 | 
						|
    _errors[-OB_OSS_WRITE_ERROR] = &_error_OB_OSS_WRITE_ERROR;
 | 
						|
    _errors[-OB_RESTORE_IN_PROGRESS] = &_error_OB_RESTORE_IN_PROGRESS;
 | 
						|
    _errors[-OB_AGENT_INITING_BACKUP_COUNT_ERROR] = &_error_OB_AGENT_INITING_BACKUP_COUNT_ERROR;
 | 
						|
    _errors[-OB_CLUSTER_NAME_NOT_EQUAL] = &_error_OB_CLUSTER_NAME_NOT_EQUAL;
 | 
						|
    _errors[-OB_RS_LIST_INVAILD] = &_error_OB_RS_LIST_INVAILD;
 | 
						|
    _errors[-OB_AGENT_HAS_FAILED_TASK] = &_error_OB_AGENT_HAS_FAILED_TASK;
 | 
						|
    _errors[-OB_RESTORE_PARTITION_IS_COMPELETE] = &_error_OB_RESTORE_PARTITION_IS_COMPELETE;
 | 
						|
    _errors[-OB_RESTORE_PARTITION_TWICE] = &_error_OB_RESTORE_PARTITION_TWICE;
 | 
						|
    _errors[-OB_STOP_DROP_SCHEMA] = &_error_OB_STOP_DROP_SCHEMA;
 | 
						|
    _errors[-OB_CANNOT_START_LOG_ARCHIVE_BACKUP] = &_error_OB_CANNOT_START_LOG_ARCHIVE_BACKUP;
 | 
						|
    _errors[-OB_ALREADY_NO_LOG_ARCHIVE_BACKUP] = &_error_OB_ALREADY_NO_LOG_ARCHIVE_BACKUP;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_BACKUP_INFO_NOT_EXIST] = &_error_OB_LOG_ARCHIVE_BACKUP_INFO_NOT_EXIST;
 | 
						|
    _errors[-OB_INVALID_BACKUP_DEST] = &_error_OB_INVALID_BACKUP_DEST;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_INTERRUPTED] = &_error_OB_LOG_ARCHIVE_INTERRUPTED;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_STAT_NOT_MATCH] = &_error_OB_LOG_ARCHIVE_STAT_NOT_MATCH;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_NOT_RUNNING] = &_error_OB_LOG_ARCHIVE_NOT_RUNNING;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_INVALID_ROUND] = &_error_OB_LOG_ARCHIVE_INVALID_ROUND;
 | 
						|
    _errors[-OB_REPLICA_CANNOT_BACKUP] = &_error_OB_REPLICA_CANNOT_BACKUP;
 | 
						|
    _errors[-OB_BACKUP_INFO_NOT_EXIST] = &_error_OB_BACKUP_INFO_NOT_EXIST;
 | 
						|
    _errors[-OB_BACKUP_INFO_NOT_MATCH] = &_error_OB_BACKUP_INFO_NOT_MATCH;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_ALREADY_STOPPED] = &_error_OB_LOG_ARCHIVE_ALREADY_STOPPED;
 | 
						|
    _errors[-OB_RESTORE_INDEX_FAILED] = &_error_OB_RESTORE_INDEX_FAILED;
 | 
						|
    _errors[-OB_BACKUP_IN_PROGRESS] = &_error_OB_BACKUP_IN_PROGRESS;
 | 
						|
    _errors[-OB_INVALID_LOG_ARCHIVE_STATUS] = &_error_OB_INVALID_LOG_ARCHIVE_STATUS;
 | 
						|
    _errors[-OB_CANNOT_ADD_REPLICA_DURING_SET_MEMBER_LIST] = &_error_OB_CANNOT_ADD_REPLICA_DURING_SET_MEMBER_LIST;
 | 
						|
    _errors[-OB_LOG_ARCHIVE_LEADER_CHANGED] = &_error_OB_LOG_ARCHIVE_LEADER_CHANGED;
 | 
						|
    _errors[-OB_BACKUP_CAN_NOT_START] = &_error_OB_BACKUP_CAN_NOT_START;
 | 
						|
    _errors[-OB_CANCEL_BACKUP_NOT_ALLOWED] = &_error_OB_CANCEL_BACKUP_NOT_ALLOWED;
 | 
						|
    _errors[-OB_BACKUP_DATA_VERSION_GAP_OVER_LIMIT] = &_error_OB_BACKUP_DATA_VERSION_GAP_OVER_LIMIT;
 | 
						|
    _errors[-OB_PG_LOG_ARCHIVE_STATUS_NOT_INIT] = &_error_OB_PG_LOG_ARCHIVE_STATUS_NOT_INIT;
 | 
						|
    _errors[-OB_BACKUP_DELETE_DATA_IN_PROGRESS] = &_error_OB_BACKUP_DELETE_DATA_IN_PROGRESS;
 | 
						|
    _errors[-OB_BACKUP_DELETE_BACKUP_SET_NOT_ALLOWED] = &_error_OB_BACKUP_DELETE_BACKUP_SET_NOT_ALLOWED;
 | 
						|
    _errors[-OB_INVALID_BACKUP_SET_ID] = &_error_OB_INVALID_BACKUP_SET_ID;
 | 
						|
    _errors[-OB_BACKUP_INVALID_PASSWORD] = &_error_OB_BACKUP_INVALID_PASSWORD;
 | 
						|
    _errors[-OB_ISOLATED_BACKUP_SET] = &_error_OB_ISOLATED_BACKUP_SET;
 | 
						|
    _errors[-OB_CANNOT_CANCEL_STOPPED_BACKUP] = &_error_OB_CANNOT_CANCEL_STOPPED_BACKUP;
 | 
						|
    _errors[-OB_BACKUP_BACKUP_CAN_NOT_START] = &_error_OB_BACKUP_BACKUP_CAN_NOT_START;
 | 
						|
    _errors[-OB_BACKUP_MOUNT_FILE_NOT_VALID] = &_error_OB_BACKUP_MOUNT_FILE_NOT_VALID;
 | 
						|
    _errors[-OB_BACKUP_CLEAN_INFO_NOT_MATCH] = &_error_OB_BACKUP_CLEAN_INFO_NOT_MATCH;
 | 
						|
    _errors[-OB_CANCEL_DELETE_BACKUP_NOT_ALLOWED] = &_error_OB_CANCEL_DELETE_BACKUP_NOT_ALLOWED;
 | 
						|
    _errors[-OB_BACKUP_CLEAN_INFO_NOT_EXIST] = &_error_OB_BACKUP_CLEAN_INFO_NOT_EXIST;
 | 
						|
    _errors[-OB_CANNOT_SET_BACKUP_REGION] = &_error_OB_CANNOT_SET_BACKUP_REGION;
 | 
						|
    _errors[-OB_CANNOT_SET_BACKUP_ZONE] = &_error_OB_CANNOT_SET_BACKUP_ZONE;
 | 
						|
    _errors[-OB_BACKUP_BACKUP_REACH_MAX_BACKUP_TIMES] = &_error_OB_BACKUP_BACKUP_REACH_MAX_BACKUP_TIMES;
 | 
						|
    _errors[-OB_COS_ERROR] = &_error_OB_COS_ERROR;
 | 
						|
    _errors[-OB_IO_LIMIT] = &_error_OB_IO_LIMIT;
 | 
						|
    _errors[-OB_BACKUP_BACKUP_REACH_COPY_LIMIT] = &_error_OB_BACKUP_BACKUP_REACH_COPY_LIMIT;
 | 
						|
    _errors[-OB_BACKUP_IO_PROHIBITED] = &_error_OB_BACKUP_IO_PROHIBITED;
 | 
						|
    _errors[-OB_ARCHIVE_LOG_NOT_CONTINUES_WITH_DATA] = &_error_OB_ARCHIVE_LOG_NOT_CONTINUES_WITH_DATA;
 | 
						|
    _errors[-OB_AGENT_HAS_SUSPENDED] = &_error_OB_AGENT_HAS_SUSPENDED;
 | 
						|
    _errors[-OB_BACKUP_DELETE_BACKUP_PIECE_NOT_ALLOWED] = &_error_OB_BACKUP_DELETE_BACKUP_PIECE_NOT_ALLOWED;
 | 
						|
    _errors[-OB_BACKUP_DEST_NOT_CONNECT] = &_error_OB_BACKUP_DEST_NOT_CONNECT;
 | 
						|
    _errors[-OB_BACKUP_PERMISSION_DENIED] = &_error_OB_BACKUP_PERMISSION_DENIED;
 | 
						|
    _errors[-OB_ESI_SESSION_CONFLICTS] = &_error_OB_ESI_SESSION_CONFLICTS;
 | 
						|
    _errors[-OB_ESI_OBS_ERROR] = &_error_OB_ESI_OBS_ERROR;
 | 
						|
    _errors[-OB_BACKUP_VALIDATE_TASK_SKIPPED] = &_error_OB_BACKUP_VALIDATE_TASK_SKIPPED;
 | 
						|
    _errors[-OB_ESI_IO_ERROR] = &_error_OB_ESI_IO_ERROR;
 | 
						|
    _errors[-OB_BACKUP_META_INDEX_NOT_EXIST] = &_error_OB_BACKUP_META_INDEX_NOT_EXIST;
 | 
						|
    _errors[-OB_ARCHIVE_ROUND_NOT_CONTINUOUS] = &_error_OB_ARCHIVE_ROUND_NOT_CONTINUOUS;
 | 
						|
    _errors[-OB_ARCHIVE_LOG_TO_END] = &_error_OB_ARCHIVE_LOG_TO_END;
 | 
						|
    _errors[-OB_ARCHIVE_LOG_RECYCLED] = &_error_OB_ARCHIVE_LOG_RECYCLED;
 | 
						|
    _errors[-OB_BACKUP_FORMAT_FILE_NOT_EXIST] = &_error_OB_BACKUP_FORMAT_FILE_NOT_EXIST;
 | 
						|
    _errors[-OB_BACKUP_FORMAT_FILE_NOT_MATCH] = &_error_OB_BACKUP_FORMAT_FILE_NOT_MATCH;
 | 
						|
    _errors[-OB_BACKUP_DEVICE_OUT_OF_SPACE] = &_error_OB_BACKUP_DEVICE_OUT_OF_SPACE;
 | 
						|
    _errors[-OB_BACKUP_PWRITE_OFFSET_NOT_MATCH] = &_error_OB_BACKUP_PWRITE_OFFSET_NOT_MATCH;
 | 
						|
    _errors[-OB_BACKUP_PWRITE_CONTENT_NOT_MATCH] = &_error_OB_BACKUP_PWRITE_CONTENT_NOT_MATCH;
 | 
						|
    _errors[-OB_BACKUP_MAJOR_NOT_COVER_MINOR] = &_error_OB_BACKUP_MAJOR_NOT_COVER_MINOR;
 | 
						|
    _errors[-OB_BACKUP_ADVANCE_CHECKPOINT_TIMEOUT] = &_error_OB_BACKUP_ADVANCE_CHECKPOINT_TIMEOUT;
 | 
						|
    _errors[-OB_ESI_SESSION_NOT_EXIST] = &_error_OB_ESI_SESSION_NOT_EXIST;
 | 
						|
    _errors[-OB_ALREADY_IN_ARCHIVE_MODE] = &_error_OB_ALREADY_IN_ARCHIVE_MODE;
 | 
						|
    _errors[-OB_ALREADY_IN_NOARCHIVE_MODE] = &_error_OB_ALREADY_IN_NOARCHIVE_MODE;
 | 
						|
    _errors[-OB_NO_SUCH_FILE_OR_DIRECTORY] = &_error_OB_NO_SUCH_FILE_OR_DIRECTORY;
 | 
						|
    _errors[-OB_FILE_OR_DIRECTORY_EXIST] = &_error_OB_FILE_OR_DIRECTORY_EXIST;
 | 
						|
    _errors[-OB_FILE_OR_DIRECTORY_PERMISSION_DENIED] = &_error_OB_FILE_OR_DIRECTORY_PERMISSION_DENIED;
 | 
						|
    _errors[-OB_TOO_MANY_OPEN_FILES] = &_error_OB_TOO_MANY_OPEN_FILES;
 | 
						|
    _errors[-OB_ERR_RESIZE_FILE_TO_SMALLER] = &_error_OB_ERR_RESIZE_FILE_TO_SMALLER;
 | 
						|
    _errors[-OB_MARK_BLOCK_INFO_TIMEOUT] = &_error_OB_MARK_BLOCK_INFO_TIMEOUT;
 | 
						|
    _errors[-OB_NOT_READY_TO_EXTEND_FILE] = &_error_OB_NOT_READY_TO_EXTEND_FILE;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_HAVING_CLAUSE_IN_TABLE_EXPRESSION] = &_error_OB_ERR_DUPLICATE_HAVING_CLAUSE_IN_TABLE_EXPRESSION;
 | 
						|
    _errors[-OB_ERR_INOUT_PARAM_PLACEMENT_NOT_PROPERLY] = &_error_OB_ERR_INOUT_PARAM_PLACEMENT_NOT_PROPERLY;
 | 
						|
    _errors[-OB_ERR_OBJECT_NOT_FOUND] = &_error_OB_ERR_OBJECT_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_INVALID_INPUT_VALUE] = &_error_OB_ERR_INVALID_INPUT_VALUE;
 | 
						|
    _errors[-OB_ERR_GOTO_BRANCH_ILLEGAL] = &_error_OB_ERR_GOTO_BRANCH_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_ONLY_SCHEMA_LEVEL_ALLOW] = &_error_OB_ERR_ONLY_SCHEMA_LEVEL_ALLOW;
 | 
						|
    _errors[-OB_ERR_DECL_MORE_THAN_ONCE] = &_error_OB_ERR_DECL_MORE_THAN_ONCE;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_FILED] = &_error_OB_ERR_DUPLICATE_FILED;
 | 
						|
    _errors[-OB_ERR_PRAGMA_ILLEGAL] = &_error_OB_ERR_PRAGMA_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_EXIT_CONTINUE_ILLEGAL] = &_error_OB_ERR_EXIT_CONTINUE_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_LABEL_ILLEGAL] = &_error_OB_ERR_LABEL_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_CURSOR_LEFT_ASSIGN] = &_error_OB_ERR_CURSOR_LEFT_ASSIGN;
 | 
						|
    _errors[-OB_ERR_INIT_NOTNULL_ILLEGAL] = &_error_OB_ERR_INIT_NOTNULL_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_INIT_CONST_ILLEGAL] = &_error_OB_ERR_INIT_CONST_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_CURSOR_VAR_IN_PKG] = &_error_OB_ERR_CURSOR_VAR_IN_PKG;
 | 
						|
    _errors[-OB_ERR_LIMIT_CLAUSE] = &_error_OB_ERR_LIMIT_CLAUSE;
 | 
						|
    _errors[-OB_ERR_EXPRESSION_WRONG_TYPE] = &_error_OB_ERR_EXPRESSION_WRONG_TYPE;
 | 
						|
    _errors[-OB_ERR_SPEC_NOT_EXIST] = &_error_OB_ERR_SPEC_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_TYPE_SPEC_NO_ROUTINE] = &_error_OB_ERR_TYPE_SPEC_NO_ROUTINE;
 | 
						|
    _errors[-OB_ERR_TYPE_BODY_NO_ROUTINE] = &_error_OB_ERR_TYPE_BODY_NO_ROUTINE;
 | 
						|
    _errors[-OB_ERR_BOTH_ORDER_MAP] = &_error_OB_ERR_BOTH_ORDER_MAP;
 | 
						|
    _errors[-OB_ERR_NO_ORDER_MAP] = &_error_OB_ERR_NO_ORDER_MAP;
 | 
						|
    _errors[-OB_ERR_ORDER_MAP_NEED_BE_FUNC] = &_error_OB_ERR_ORDER_MAP_NEED_BE_FUNC;
 | 
						|
    _errors[-OB_ERR_IDENTIFIER_TOO_LONG] = &_error_OB_ERR_IDENTIFIER_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_INVOKE_STATIC_BY_INSTANCE] = &_error_OB_ERR_INVOKE_STATIC_BY_INSTANCE;
 | 
						|
    _errors[-OB_ERR_CONS_NAME_ILLEGAL] = &_error_OB_ERR_CONS_NAME_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_ATTR_FUNC_CONFLICT] = &_error_OB_ERR_ATTR_FUNC_CONFLICT;
 | 
						|
    _errors[-OB_ERR_SELF_PARAM_NOT_OUT] = &_error_OB_ERR_SELF_PARAM_NOT_OUT;
 | 
						|
    _errors[-OB_ERR_MAP_RET_SCALAR_TYPE] = &_error_OB_ERR_MAP_RET_SCALAR_TYPE;
 | 
						|
    _errors[-OB_ERR_MAP_MORE_THAN_SELF_PARAM] = &_error_OB_ERR_MAP_MORE_THAN_SELF_PARAM;
 | 
						|
    _errors[-OB_ERR_ORDER_RET_INT_TYPE] = &_error_OB_ERR_ORDER_RET_INT_TYPE;
 | 
						|
    _errors[-OB_ERR_ORDER_PARAM_TYPE] = &_error_OB_ERR_ORDER_PARAM_TYPE;
 | 
						|
    _errors[-OB_ERR_OBJ_CMP_SQL] = &_error_OB_ERR_OBJ_CMP_SQL;
 | 
						|
    _errors[-OB_ERR_MAP_ORDER_PRAGMA] = &_error_OB_ERR_MAP_ORDER_PRAGMA;
 | 
						|
    _errors[-OB_ERR_ORDER_PARAM_MUST_IN_MODE] = &_error_OB_ERR_ORDER_PARAM_MUST_IN_MODE;
 | 
						|
    _errors[-OB_ERR_ORDER_PARAM_NOT_TWO] = &_error_OB_ERR_ORDER_PARAM_NOT_TWO;
 | 
						|
    _errors[-OB_ERR_TYPE_REF_REFCURSIVE] = &_error_OB_ERR_TYPE_REF_REFCURSIVE;
 | 
						|
    _errors[-OB_ERR_DIRECTIVE_ERROR] = &_error_OB_ERR_DIRECTIVE_ERROR;
 | 
						|
    _errors[-OB_ERR_CONS_HAS_RET_NODE] = &_error_OB_ERR_CONS_HAS_RET_NODE;
 | 
						|
    _errors[-OB_ERR_CALL_WRONG_ARG] = &_error_OB_ERR_CALL_WRONG_ARG;
 | 
						|
    _errors[-OB_ERR_FUNC_NAME_SAME_WITH_CONS] = &_error_OB_ERR_FUNC_NAME_SAME_WITH_CONS;
 | 
						|
    _errors[-OB_ERR_FUNC_DUP] = &_error_OB_ERR_FUNC_DUP;
 | 
						|
    _errors[-OB_ERR_WHEN_CLAUSE] = &_error_OB_ERR_WHEN_CLAUSE;
 | 
						|
    _errors[-OB_ERR_NEW_OLD_REFERENCES] = &_error_OB_ERR_NEW_OLD_REFERENCES;
 | 
						|
    _errors[-OB_ERR_TYPE_DECL_ILLEGAL] = &_error_OB_ERR_TYPE_DECL_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_OBJECT_INVALID] = &_error_OB_ERR_OBJECT_INVALID;
 | 
						|
    _errors[-OB_ERR_XML_PARSE] = &_error_OB_ERR_XML_PARSE;
 | 
						|
    _errors[-OB_ERR_EXP_NOT_ASSIGNABLE] = &_error_OB_ERR_EXP_NOT_ASSIGNABLE;
 | 
						|
    _errors[-OB_ERR_CURSOR_CONTAIN_BOTH_REGULAR_AND_ARRAY] = &_error_OB_ERR_CURSOR_CONTAIN_BOTH_REGULAR_AND_ARRAY;
 | 
						|
    _errors[-OB_ERR_STATIC_BOOL_EXPR] = &_error_OB_ERR_STATIC_BOOL_EXPR;
 | 
						|
    _errors[-OB_ERR_DIRECTIVE_CONTEXT] = &_error_OB_ERR_DIRECTIVE_CONTEXT;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_PATH] = &_error_OB_UTL_FILE_INVALID_PATH;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_MODE] = &_error_OB_UTL_FILE_INVALID_MODE;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_FILEHANDLE] = &_error_OB_UTL_FILE_INVALID_FILEHANDLE;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_OPERATION] = &_error_OB_UTL_FILE_INVALID_OPERATION;
 | 
						|
    _errors[-OB_UTL_FILE_READ_ERROR] = &_error_OB_UTL_FILE_READ_ERROR;
 | 
						|
    _errors[-OB_UTL_FILE_WRITE_ERROR] = &_error_OB_UTL_FILE_WRITE_ERROR;
 | 
						|
    _errors[-OB_UTL_FILE_INTERNAL_ERROR] = &_error_OB_UTL_FILE_INTERNAL_ERROR;
 | 
						|
    _errors[-OB_UTL_FILE_CHARSETMISMATCH] = &_error_OB_UTL_FILE_CHARSETMISMATCH;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_MAXLINESIZE] = &_error_OB_UTL_FILE_INVALID_MAXLINESIZE;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_FILENAME] = &_error_OB_UTL_FILE_INVALID_FILENAME;
 | 
						|
    _errors[-OB_UTL_FILE_ACCESS_DENIED] = &_error_OB_UTL_FILE_ACCESS_DENIED;
 | 
						|
    _errors[-OB_UTL_FILE_INVALID_OFFSET] = &_error_OB_UTL_FILE_INVALID_OFFSET;
 | 
						|
    _errors[-OB_UTL_FILE_DELETE_FAILED] = &_error_OB_UTL_FILE_DELETE_FAILED;
 | 
						|
    _errors[-OB_UTL_FILE_RENAME_FAILED] = &_error_OB_UTL_FILE_RENAME_FAILED;
 | 
						|
    _errors[-OB_ERR_BIND_TYPE_NOT_MATCH_COLUMN] = &_error_OB_ERR_BIND_TYPE_NOT_MATCH_COLUMN;
 | 
						|
    _errors[-OB_ERR_NESTED_TABLE_IN_TRI] = &_error_OB_ERR_NESTED_TABLE_IN_TRI;
 | 
						|
    _errors[-OB_ERR_COL_LIST_IN_TRI] = &_error_OB_ERR_COL_LIST_IN_TRI;
 | 
						|
    _errors[-OB_ERR_WHEN_CLAUSE_IN_TRI] = &_error_OB_ERR_WHEN_CLAUSE_IN_TRI;
 | 
						|
    _errors[-OB_ERR_INSTEAD_TRI_ON_TABLE] = &_error_OB_ERR_INSTEAD_TRI_ON_TABLE;
 | 
						|
    _errors[-OB_ERR_RETURNING_CLAUSE] = &_error_OB_ERR_RETURNING_CLAUSE;
 | 
						|
    _errors[-OB_ERR_XSLT_PARSE] = &_error_OB_ERR_XSLT_PARSE;
 | 
						|
    _errors[-OB_ERR_NO_RETURN_IN_FUNCTION] = &_error_OB_ERR_NO_RETURN_IN_FUNCTION;
 | 
						|
    _errors[-OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_FUNC_TRIGGER] = &_error_OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_FUNC_TRIGGER;
 | 
						|
    _errors[-OB_ERR_TOO_LONG_STRING_TYPE] = &_error_OB_ERR_TOO_LONG_STRING_TYPE;
 | 
						|
    _errors[-OB_ERR_WIDTH_OUT_OF_RANGE] = &_error_OB_ERR_WIDTH_OUT_OF_RANGE;
 | 
						|
    _errors[-OB_ERR_REDEFINE_LABEL] = &_error_OB_ERR_REDEFINE_LABEL;
 | 
						|
    _errors[-OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_PROCEDRUE] = &_error_OB_ERR_STMT_NOT_ALLOW_IN_MYSQL_PROCEDRUE;
 | 
						|
    _errors[-OB_ERR_TRIGGER_NOT_SUPPORT] = &_error_OB_ERR_TRIGGER_NOT_SUPPORT;
 | 
						|
    _errors[-OB_ERR_TRIGGER_IN_WRONG_SCHEMA] = &_error_OB_ERR_TRIGGER_IN_WRONG_SCHEMA;
 | 
						|
    _errors[-OB_ERR_UNKNOWN_EXCEPTION] = &_error_OB_ERR_UNKNOWN_EXCEPTION;
 | 
						|
    _errors[-OB_ERR_TRIGGER_CANT_CHANGE_ROW] = &_error_OB_ERR_TRIGGER_CANT_CHANGE_ROW;
 | 
						|
    _errors[-OB_ERR_ITEM_NOT_IN_BODY] = &_error_OB_ERR_ITEM_NOT_IN_BODY;
 | 
						|
    _errors[-OB_ERR_WRONG_ROWTYPE] = &_error_OB_ERR_WRONG_ROWTYPE;
 | 
						|
    _errors[-OB_ERR_ROUTINE_NOT_DEFINE] = &_error_OB_ERR_ROUTINE_NOT_DEFINE;
 | 
						|
    _errors[-OB_ERR_DUP_NAME_IN_CURSOR] = &_error_OB_ERR_DUP_NAME_IN_CURSOR;
 | 
						|
    _errors[-OB_ERR_LOCAL_COLL_IN_SQL] = &_error_OB_ERR_LOCAL_COLL_IN_SQL;
 | 
						|
    _errors[-OB_ERR_TYPE_MISMATCH_IN_FETCH] = &_error_OB_ERR_TYPE_MISMATCH_IN_FETCH;
 | 
						|
    _errors[-OB_ERR_OTHERS_MUST_LAST] = &_error_OB_ERR_OTHERS_MUST_LAST;
 | 
						|
    _errors[-OB_ERR_RAISE_NOT_IN_HANDLER] = &_error_OB_ERR_RAISE_NOT_IN_HANDLER;
 | 
						|
    _errors[-OB_ERR_INVALID_CURSOR_RETURN_TYPE] = &_error_OB_ERR_INVALID_CURSOR_RETURN_TYPE;
 | 
						|
    _errors[-OB_ERR_IN_CURSOR_OPEND] = &_error_OB_ERR_IN_CURSOR_OPEND;
 | 
						|
    _errors[-OB_ERR_CURSOR_NO_RETURN_TYPE] = &_error_OB_ERR_CURSOR_NO_RETURN_TYPE;
 | 
						|
    _errors[-OB_ERR_NO_CHOICES] = &_error_OB_ERR_NO_CHOICES;
 | 
						|
    _errors[-OB_ERR_TYPE_DECL_MALFORMED] = &_error_OB_ERR_TYPE_DECL_MALFORMED;
 | 
						|
    _errors[-OB_ERR_IN_FORMAL_NOT_DENOTABLE] = &_error_OB_ERR_IN_FORMAL_NOT_DENOTABLE;
 | 
						|
    _errors[-OB_ERR_OUT_PARAM_HAS_DEFAULT] = &_error_OB_ERR_OUT_PARAM_HAS_DEFAULT;
 | 
						|
    _errors[-OB_ERR_ONLY_FUNC_CAN_PIPELINED] = &_error_OB_ERR_ONLY_FUNC_CAN_PIPELINED;
 | 
						|
    _errors[-OB_ERR_PIPE_RETURN_NOT_COLL] = &_error_OB_ERR_PIPE_RETURN_NOT_COLL;
 | 
						|
    _errors[-OB_ERR_MISMATCH_SUBPROGRAM] = &_error_OB_ERR_MISMATCH_SUBPROGRAM;
 | 
						|
    _errors[-OB_ERR_PARAM_IN_PACKAGE_SPEC] = &_error_OB_ERR_PARAM_IN_PACKAGE_SPEC;
 | 
						|
    _errors[-OB_ERR_NUMERIC_LITERAL_REQUIRED] = &_error_OB_ERR_NUMERIC_LITERAL_REQUIRED;
 | 
						|
    _errors[-OB_ERR_NON_INT_LITERAL] = &_error_OB_ERR_NON_INT_LITERAL;
 | 
						|
    _errors[-OB_ERR_IMPROPER_CONSTRAINT_FORM] = &_error_OB_ERR_IMPROPER_CONSTRAINT_FORM;
 | 
						|
    _errors[-OB_ERR_TYPE_CANT_CONSTRAINED] = &_error_OB_ERR_TYPE_CANT_CONSTRAINED;
 | 
						|
    _errors[-OB_ERR_ANY_CS_NOT_ALLOWED] = &_error_OB_ERR_ANY_CS_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_SCHEMA_TYPE_ILLEGAL] = &_error_OB_ERR_SCHEMA_TYPE_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_UNSUPPORTED_TABLE_INDEX_TYPE] = &_error_OB_ERR_UNSUPPORTED_TABLE_INDEX_TYPE;
 | 
						|
    _errors[-OB_ERR_ARRAY_MUST_HAVE_POSITIVE_LIMIT] = &_error_OB_ERR_ARRAY_MUST_HAVE_POSITIVE_LIMIT;
 | 
						|
    _errors[-OB_ERR_FORALL_ITER_NOT_ALLOWED] = &_error_OB_ERR_FORALL_ITER_NOT_ALLOWED;
 | 
						|
    _errors[-OB_ERR_BULK_IN_BIND] = &_error_OB_ERR_BULK_IN_BIND;
 | 
						|
    _errors[-OB_ERR_FORALL_BULK_TOGETHER] = &_error_OB_ERR_FORALL_BULK_TOGETHER;
 | 
						|
    _errors[-OB_ERR_FORALL_DML_WITHOUT_BULK] = &_error_OB_ERR_FORALL_DML_WITHOUT_BULK;
 | 
						|
    _errors[-OB_ERR_SHOULD_COLLECTION_TYPE] = &_error_OB_ERR_SHOULD_COLLECTION_TYPE;
 | 
						|
    _errors[-OB_ERR_ASSOC_ELEM_TYPE] = &_error_OB_ERR_ASSOC_ELEM_TYPE;
 | 
						|
    _errors[-OB_ERR_INTO_CLAUSE_EXPECTED] = &_error_OB_ERR_INTO_CLAUSE_EXPECTED;
 | 
						|
    _errors[-OB_ERR_SUBPROGRAM_VIOLATES_PRAGMA] = &_error_OB_ERR_SUBPROGRAM_VIOLATES_PRAGMA;
 | 
						|
    _errors[-OB_ERR_EXPR_SQL_TYPE] = &_error_OB_ERR_EXPR_SQL_TYPE;
 | 
						|
    _errors[-OB_ERR_PRAGMA_DECL_TWICE] = &_error_OB_ERR_PRAGMA_DECL_TWICE;
 | 
						|
    _errors[-OB_ERR_PRAGMA_FOLLOW_DECL] = &_error_OB_ERR_PRAGMA_FOLLOW_DECL;
 | 
						|
    _errors[-OB_ERR_PIPE_STMT_IN_NON_PIPELINED_FUNC] = &_error_OB_ERR_PIPE_STMT_IN_NON_PIPELINED_FUNC;
 | 
						|
    _errors[-OB_ERR_IMPL_RESTRICTION] = &_error_OB_ERR_IMPL_RESTRICTION;
 | 
						|
    _errors[-OB_ERR_INSUFFICIENT_PRIVILEGE] = &_error_OB_ERR_INSUFFICIENT_PRIVILEGE;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_OPTION] = &_error_OB_ERR_ILLEGAL_OPTION;
 | 
						|
    _errors[-OB_ERR_NO_FUNCTION_EXIST] = &_error_OB_ERR_NO_FUNCTION_EXIST;
 | 
						|
    _errors[-OB_ERR_OUT_OF_SCOPE] = &_error_OB_ERR_OUT_OF_SCOPE;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_ERROR_NUM] = &_error_OB_ERR_ILLEGAL_ERROR_NUM;
 | 
						|
    _errors[-OB_ERR_DEFAULT_NOT_MATCH] = &_error_OB_ERR_DEFAULT_NOT_MATCH;
 | 
						|
    _errors[-OB_ERR_TABLE_SINGLE_INDEX] = &_error_OB_ERR_TABLE_SINGLE_INDEX;
 | 
						|
    _errors[-OB_ERR_PRAGMA_DECL] = &_error_OB_ERR_PRAGMA_DECL;
 | 
						|
    _errors[-OB_ERR_INCORRECT_ARGUMENTS] = &_error_OB_ERR_INCORRECT_ARGUMENTS;
 | 
						|
    _errors[-OB_ERR_RETURN_VALUE_REQUIRED] = &_error_OB_ERR_RETURN_VALUE_REQUIRED;
 | 
						|
    _errors[-OB_ERR_RETURN_EXPR_ILLEGAL] = &_error_OB_ERR_RETURN_EXPR_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_LIMIT_ILLEGAL] = &_error_OB_ERR_LIMIT_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_INTO_EXPR_ILLEGAL] = &_error_OB_ERR_INTO_EXPR_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_BULK_SQL_RESTRICTION] = &_error_OB_ERR_BULK_SQL_RESTRICTION;
 | 
						|
    _errors[-OB_ERR_MIX_SINGLE_MULTI] = &_error_OB_ERR_MIX_SINGLE_MULTI;
 | 
						|
    _errors[-OB_ERR_TRIGGER_NO_SUCH_ROW] = &_error_OB_ERR_TRIGGER_NO_SUCH_ROW;
 | 
						|
    _errors[-OB_ERR_SET_USAGE] = &_error_OB_ERR_SET_USAGE;
 | 
						|
    _errors[-OB_ERR_MODIFIER_CONFLICTS] = &_error_OB_ERR_MODIFIER_CONFLICTS;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_MODIFIER] = &_error_OB_ERR_DUPLICATE_MODIFIER;
 | 
						|
    _errors[-OB_ERR_STR_LITERAL_TOO_LONG] = &_error_OB_ERR_STR_LITERAL_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_SELF_PARAM_NOT_INOUT] = &_error_OB_ERR_SELF_PARAM_NOT_INOUT;
 | 
						|
    _errors[-OB_ERR_CONSTRUCT_MUST_RETURN_SELF] = &_error_OB_ERR_CONSTRUCT_MUST_RETURN_SELF;
 | 
						|
    _errors[-OB_ERR_FIRST_PARAM_MUST_NOT_NULL] = &_error_OB_ERR_FIRST_PARAM_MUST_NOT_NULL;
 | 
						|
    _errors[-OB_ERR_COALESCE_AT_LEAST_ONE_NOT_NULL] = &_error_OB_ERR_COALESCE_AT_LEAST_ONE_NOT_NULL;
 | 
						|
    _errors[-OB_ERR_STATIC_METHOD_HAS_SELF] = &_error_OB_ERR_STATIC_METHOD_HAS_SELF;
 | 
						|
    _errors[-OB_ERR_NO_ATTR_FOUND] = &_error_OB_ERR_NO_ATTR_FOUND;
 | 
						|
    _errors[-OB_ERR_ILLEGAL_TYPE_FOR_OBJECT] = &_error_OB_ERR_ILLEGAL_TYPE_FOR_OBJECT;
 | 
						|
    _errors[-OB_ERR_UNSUPPORTED_TYPE] = &_error_OB_ERR_UNSUPPORTED_TYPE;
 | 
						|
    _errors[-OB_ERR_POSITIONAL_FOLLOW_NAME] = &_error_OB_ERR_POSITIONAL_FOLLOW_NAME;
 | 
						|
    _errors[-OB_ERR_NEED_A_LABEL] = &_error_OB_ERR_NEED_A_LABEL;
 | 
						|
    _errors[-OB_ERR_REFER_SAME_PACKAGE] = &_error_OB_ERR_REFER_SAME_PACKAGE;
 | 
						|
    _errors[-OB_ERR_PL_COMMON] = &_error_OB_ERR_PL_COMMON;
 | 
						|
    _errors[-OB_ERR_IDENT_EMPTY] = &_error_OB_ERR_IDENT_EMPTY;
 | 
						|
    _errors[-OB_ERR_PRAGMA_STR_UNSUPPORT] = &_error_OB_ERR_PRAGMA_STR_UNSUPPORT;
 | 
						|
    _errors[-OB_ERR_END_LABEL_NOT_MATCH] = &_error_OB_ERR_END_LABEL_NOT_MATCH;
 | 
						|
    _errors[-OB_ERR_WRONG_FETCH_INTO_NUM] = &_error_OB_ERR_WRONG_FETCH_INTO_NUM;
 | 
						|
    _errors[-OB_ERR_PRAGMA_FIRST_ARG] = &_error_OB_ERR_PRAGMA_FIRST_ARG;
 | 
						|
    _errors[-OB_ERR_TRIGGER_CANT_CHANGE_OLD_ROW] = &_error_OB_ERR_TRIGGER_CANT_CHANGE_OLD_ROW;
 | 
						|
    _errors[-OB_ERR_TRIGGER_CANT_CRT_ON_RO_VIEW] = &_error_OB_ERR_TRIGGER_CANT_CRT_ON_RO_VIEW;
 | 
						|
    _errors[-OB_ERR_TRIGGER_INVALID_REF_NAME] = &_error_OB_ERR_TRIGGER_INVALID_REF_NAME;
 | 
						|
    _errors[-OB_ERR_EXP_NOT_INTO_TARGET] = &_error_OB_ERR_EXP_NOT_INTO_TARGET;
 | 
						|
    _errors[-OB_ERR_CASE_NULL] = &_error_OB_ERR_CASE_NULL;
 | 
						|
    _errors[-OB_ERR_INVALID_GOTO] = &_error_OB_ERR_INVALID_GOTO;
 | 
						|
    _errors[-OB_ERR_PRIVATE_UDF_USE_IN_SQL] = &_error_OB_ERR_PRIVATE_UDF_USE_IN_SQL;
 | 
						|
    _errors[-OB_ERR_FIELD_NOT_DENOTABLE] = &_error_OB_ERR_FIELD_NOT_DENOTABLE;
 | 
						|
    _errors[-OB_NUMERIC_PRECISION_NOT_INTEGER] = &_error_OB_NUMERIC_PRECISION_NOT_INTEGER;
 | 
						|
    _errors[-OB_ERR_REQUIRE_INTEGER] = &_error_OB_ERR_REQUIRE_INTEGER;
 | 
						|
    _errors[-OB_ERR_INDEX_TABLE_OF_CURSOR] = &_error_OB_ERR_INDEX_TABLE_OF_CURSOR;
 | 
						|
    _errors[-OB_NULL_CHECK_ERROR] = &_error_OB_NULL_CHECK_ERROR;
 | 
						|
    _errors[-OB_ERR_EX_NAME_ARG] = &_error_OB_ERR_EX_NAME_ARG;
 | 
						|
    _errors[-OB_ERR_EX_ARG_NUM] = &_error_OB_ERR_EX_ARG_NUM;
 | 
						|
    _errors[-OB_ERR_EX_SECOND_ARG] = &_error_OB_ERR_EX_SECOND_ARG;
 | 
						|
    _errors[-OB_OBEN_CURSOR_NUMBER_IS_ZERO] = &_error_OB_OBEN_CURSOR_NUMBER_IS_ZERO;
 | 
						|
    _errors[-OB_NO_STMT_PARSE] = &_error_OB_NO_STMT_PARSE;
 | 
						|
    _errors[-OB_ARRAY_CNT_IS_ILLEGAL] = &_error_OB_ARRAY_CNT_IS_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_WRONG_SCHEMA_REF] = &_error_OB_ERR_WRONG_SCHEMA_REF;
 | 
						|
    _errors[-OB_ERR_COMPONENT_UNDECLARED] = &_error_OB_ERR_COMPONENT_UNDECLARED;
 | 
						|
    _errors[-OB_ERR_FUNC_ONLY_IN_SQL] = &_error_OB_ERR_FUNC_ONLY_IN_SQL;
 | 
						|
    _errors[-OB_ERR_UNDEFINED] = &_error_OB_ERR_UNDEFINED;
 | 
						|
    _errors[-OB_ERR_SUBTYPE_NOTNULL_MISMATCH] = &_error_OB_ERR_SUBTYPE_NOTNULL_MISMATCH;
 | 
						|
    _errors[-OB_ERR_BIND_VAR_NOT_EXIST] = &_error_OB_ERR_BIND_VAR_NOT_EXIST;
 | 
						|
    _errors[-OB_ERR_CURSOR_IN_OPEN_DYNAMIC_SQL] = &_error_OB_ERR_CURSOR_IN_OPEN_DYNAMIC_SQL;
 | 
						|
    _errors[-OB_ERR_INVALID_INPUT_ARGUMENT] = &_error_OB_ERR_INVALID_INPUT_ARGUMENT;
 | 
						|
    _errors[-OB_ERR_CLIENT_IDENTIFIER_TOO_LONG] = &_error_OB_ERR_CLIENT_IDENTIFIER_TOO_LONG;
 | 
						|
    _errors[-OB_ERR_INVALID_NAMESPACE_VALUE] = &_error_OB_ERR_INVALID_NAMESPACE_VALUE;
 | 
						|
    _errors[-OB_ERR_INVALID_NAMESPACE_BEG] = &_error_OB_ERR_INVALID_NAMESPACE_BEG;
 | 
						|
    _errors[-OB_ERR_SESSION_CONTEXT_EXCEEDED] = &_error_OB_ERR_SESSION_CONTEXT_EXCEEDED;
 | 
						|
    _errors[-OB_ERR_NOT_CURSOR_NAME_IN_CURRENT_OF] = &_error_OB_ERR_NOT_CURSOR_NAME_IN_CURRENT_OF;
 | 
						|
    _errors[-OB_ERR_NOT_FOR_UPDATE_CURSOR_IN_CURRENT_OF] = &_error_OB_ERR_NOT_FOR_UPDATE_CURSOR_IN_CURRENT_OF;
 | 
						|
    _errors[-OB_ERR_DUP_SIGNAL_SET] = &_error_OB_ERR_DUP_SIGNAL_SET;
 | 
						|
    _errors[-OB_ERR_SIGNAL_NOT_FOUND] = &_error_OB_ERR_SIGNAL_NOT_FOUND;
 | 
						|
    _errors[-OB_ERR_INVALID_CONDITION_NUMBER] = &_error_OB_ERR_INVALID_CONDITION_NUMBER;
 | 
						|
    _errors[-OB_ERR_RECURSIVE_SQL_LEVELS_EXCEEDED] = &_error_OB_ERR_RECURSIVE_SQL_LEVELS_EXCEEDED;
 | 
						|
    _errors[-OB_ERR_INVALID_SECTION] = &_error_OB_ERR_INVALID_SECTION;
 | 
						|
    _errors[-OB_ERR_DUPLICATE_TRIGGER_SECTION] = &_error_OB_ERR_DUPLICATE_TRIGGER_SECTION;
 | 
						|
    _errors[-OB_ERR_PARSE_PLSQL] = &_error_OB_ERR_PARSE_PLSQL;
 | 
						|
    _errors[-OB_ERR_SIGNAL_WARN] = &_error_OB_ERR_SIGNAL_WARN;
 | 
						|
    _errors[-OB_ERR_RESIGNAL_WITHOUT_ACTIVE_HANDLER] = &_error_OB_ERR_RESIGNAL_WITHOUT_ACTIVE_HANDLER;
 | 
						|
    _errors[-OB_ERR_CANNOT_UPDATE_VIRTUAL_COL_IN_TRG] = &_error_OB_ERR_CANNOT_UPDATE_VIRTUAL_COL_IN_TRG;
 | 
						|
    _errors[-OB_ERR_TRG_ORDER] = &_error_OB_ERR_TRG_ORDER;
 | 
						|
    _errors[-OB_ERR_REF_ANOTHER_TABLE_IN_TRG] = &_error_OB_ERR_REF_ANOTHER_TABLE_IN_TRG;
 | 
						|
    _errors[-OB_ERR_REF_TYPE_IN_TRG] = &_error_OB_ERR_REF_TYPE_IN_TRG;
 | 
						|
    _errors[-OB_ERR_REF_CYCLIC_IN_TRG] = &_error_OB_ERR_REF_CYCLIC_IN_TRG;
 | 
						|
    _errors[-OB_ERR_CANNOT_SPECIFY_PRECEDES_IN_TRG] = &_error_OB_ERR_CANNOT_SPECIFY_PRECEDES_IN_TRG;
 | 
						|
    _errors[-OB_ERR_CANNOT_PERFORM_DML_INSIDE_QUERY] = &_error_OB_ERR_CANNOT_PERFORM_DML_INSIDE_QUERY;
 | 
						|
    _errors[-OB_ERR_CANNOT_PERFORM_DDL_COMMIT_OR_ROLLBACK_INSIDE_QUERY_OR_DML_TIPS] = &_error_OB_ERR_CANNOT_PERFORM_DDL_COMMIT_OR_ROLLBACK_INSIDE_QUERY_OR_DML_TIPS;
 | 
						|
    _errors[-OB_ERR_STATEMENT_STRING_IN_EXECUTE_IMMEDIATE_IS_NULL_OR_ZERO_LENGTH] = &_error_OB_ERR_STATEMENT_STRING_IN_EXECUTE_IMMEDIATE_IS_NULL_OR_ZERO_LENGTH;
 | 
						|
    _errors[-OB_ERR_MISSING_INTO_KEYWORD] = &_error_OB_ERR_MISSING_INTO_KEYWORD;
 | 
						|
    _errors[-OB_ERR_CLAUSE_RETURN_ILLEGAL] = &_error_OB_ERR_CLAUSE_RETURN_ILLEGAL;
 | 
						|
    _errors[-OB_ERR_NAME_HAS_TOO_MANY_PARTS] = &_error_OB_ERR_NAME_HAS_TOO_MANY_PARTS;
 | 
						|
    _errors[-OB_SP_RAISE_APPLICATION_ERROR] = &_error_OB_SP_RAISE_APPLICATION_ERROR;
 | 
						|
    _errors[-OB_SP_RAISE_APPLICATION_ERROR_NUM] = &_error_OB_SP_RAISE_APPLICATION_ERROR_NUM;
 | 
						|
    _errors[-OB_CLOB_ONLY_SUPPORT_WITH_MULTIBYTE_FUN] = &_error_OB_CLOB_ONLY_SUPPORT_WITH_MULTIBYTE_FUN;
 | 
						|
    _errors[-OB_ERR_UPDATE_TWICE] = &_error_OB_ERR_UPDATE_TWICE;
 | 
						|
    _errors[-OB_ERR_FLASHBACK_QUERY_WITH_UPDATE] = &_error_OB_ERR_FLASHBACK_QUERY_WITH_UPDATE;
 | 
						|
    _errors[-OB_ERR_UPDATE_ON_EXPR] = &_error_OB_ERR_UPDATE_ON_EXPR;
 | 
						|
    _errors[-OB_ERR_SPECIFIED_ROW_NO_LONGER_EXISTS] = &_error_OB_ERR_SPECIFIED_ROW_NO_LONGER_EXISTS;
 | 
						|
 | 
						|
  }
 | 
						|
};
 | 
						|
 | 
						|
inline const _error *get_error(int index)
 | 
						|
{
 | 
						|
  static ObStrErrorInit error_init;
 | 
						|
  return _errors[index];
 | 
						|
}
 | 
						|
 | 
						|
namespace oceanbase
 | 
						|
{
 | 
						|
namespace common
 | 
						|
{
 | 
						|
  const char *ob_error_name(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = "Unknown error";
 | 
						|
    if (OB_UNLIKELY(0 == err)) {
 | 
						|
      ret = "OB_SUCCESS";
 | 
						|
    } else if (OB_LIKELY(0 > err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->error_name;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0]))
 | 
						|
      {
 | 
						|
        ret = "Unknown Error";
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_error_cause(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = "Internal Error";
 | 
						|
    if (OB_UNLIKELY(0 == err)) {
 | 
						|
      ret = "Not an Error";
 | 
						|
    } else if (OB_LIKELY(0 > err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->error_cause;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0]))
 | 
						|
      {
 | 
						|
        ret = "Internal Error";
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_error_solution(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = "Contact OceanBase Support";
 | 
						|
    if (OB_UNLIKELY(0 == err)) {
 | 
						|
      ret = "Contact OceanBase Support";
 | 
						|
    } else if (OB_LIKELY(0 > err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->error_solution;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0]))
 | 
						|
      {
 | 
						|
        ret = "Contact OceanBase Support";
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_strerror(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = "Unknown error";
 | 
						|
    if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->str_error;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0]))
 | 
						|
      {
 | 
						|
        ret = "Unknown Error";
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_str_user_error(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = NULL;
 | 
						|
    if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->str_user_error;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0])) {
 | 
						|
        ret = NULL;
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_sqlstate(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = "HY000";
 | 
						|
    if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->sqlstate;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0])) {
 | 
						|
        ret = "HY000";
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  int ob_mysql_errno(const int err)
 | 
						|
  {
 | 
						|
    int ret = -1;
 | 
						|
    if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->mysql_errno;
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  int ob_mysql_errno_with_check(const int err)
 | 
						|
  {
 | 
						|
    int ret = (err > 0 ? err : ob_mysql_errno(err));
 | 
						|
    if (ret < 0) {
 | 
						|
      ret = -err;
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_oracle_strerror(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = "Unknown error";
 | 
						|
    if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->oracle_str_error;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0]))
 | 
						|
      {
 | 
						|
        ret = "Unknown Error";
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  const char *ob_oracle_str_user_error(const int err)
 | 
						|
  {
 | 
						|
    const char *ret = NULL;
 | 
						|
    if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->oracle_str_user_error;
 | 
						|
      if (OB_UNLIKELY(NULL == ret || '\0' == ret[0])) {
 | 
						|
        ret = NULL;
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
#ifndef __ERROR_CODE_PARSER_
 | 
						|
  int get_ob_errno_from_oracle_errno(const int error_no, const char *error_msg, int &ob_errno) {
 | 
						|
    const int orcl_errno = abs(error_no);
 | 
						|
    ob_errno = error_no;
 | 
						|
    int64_t edit_dist = 0x7fffffffffffffff;
 | 
						|
    int64_t min_edit_dist = 0x7fffffffffffffff;
 | 
						|
    if (nullptr == error_msg) {
 | 
						|
      for (int i = 0; i < OB_MAX_ERROR_CODE; ++i) {
 | 
						|
        if (orcl_errno == get_error(i)->oracle_errno) {
 | 
						|
          ob_errno = -i;
 | 
						|
          break;
 | 
						|
        }
 | 
						|
      }
 | 
						|
      /**
 | 
						|
       * In ob-ob mode dblink if there is an error when using the mysql interface
 | 
						|
       * mysql_real_connect to connect to the remote database, 
 | 
						|
       * the ob internal error code is mapped through the MYSQL_ERRNO array, 
 | 
						|
       * so in order to get the original ob internal error code, 
 | 
						|
       * it needs to be reversed mapped through MYSQL_ERRNO instead of ORACLE_ERRNO.
 | 
						|
      */
 | 
						|
      if (ob_errno == error_no) {
 | 
						|
        for (int i = 0; i < OB_MAX_ERROR_CODE; ++i) {
 | 
						|
          if (orcl_errno == get_error(i)->mysql_errno) {
 | 
						|
            ob_errno = -i;
 | 
						|
            break;
 | 
						|
          }
 | 
						|
        }
 | 
						|
      }
 | 
						|
    } else {
 | 
						|
      ObEditDistance<ObWords> ed;
 | 
						|
      ObWords errmsg_words(error_msg);
 | 
						|
      errmsg_words.divide();
 | 
						|
      for (int i = 0; i < OB_MAX_ERROR_CODE; ++i) {
 | 
						|
        if (orcl_errno == get_error(i)->oracle_errno) {
 | 
						|
          const char *orcl_str_error = get_error(i)->oracle_str_user_error;
 | 
						|
          if (nullptr == orcl_str_error) {
 | 
						|
            // In the case of a null pointer boundary, 
 | 
						|
            // the reason for setting edit_distance to 0x7ffffffffffffffe is to deal with the situation where 
 | 
						|
            // error_msg does not match ORACLE_STR_USER_ERROR[i] but orcl_errno == ORACLE_ERRNO[i].
 | 
						|
            edit_dist = 0x7ffffffffffffffe;
 | 
						|
          } else {
 | 
						|
            // The edit distance between the strings is used to measure their similarity. 
 | 
						|
            // The smaller the edit distance, the greater the similarity, so as to find the most similar error message.
 | 
						|
            ObWords orclmsg_words(orcl_str_error);
 | 
						|
            orclmsg_words.divide();
 | 
						|
            ed.cal_edit_distance(errmsg_words, orclmsg_words, edit_dist);
 | 
						|
          }
 | 
						|
          if (edit_dist < min_edit_dist) {
 | 
						|
            ob_errno = -i;
 | 
						|
            min_edit_dist = edit_dist;
 | 
						|
            if (0 == min_edit_dist) {
 | 
						|
              break;
 | 
						|
            }
 | 
						|
          }
 | 
						|
        }
 | 
						|
      }
 | 
						|
    }
 | 
						|
    LOG_TRACE("trace the ob_errno and oracle_errno.", K(ob_errno), K(error_no), K(min_edit_dist));
 | 
						|
    return OB_SUCCESS;
 | 
						|
  }
 | 
						|
#endif
 | 
						|
  int ob_oracle_errno(const int err)
 | 
						|
  {
 | 
						|
    int ret = -1;
 | 
						|
    if (OB_ERR_PROXY_REROUTE == err) {
 | 
						|
      // Oracle Mode and MySQL mode should return same errcode for reroute sql
 | 
						|
      // thus we make the specialization here
 | 
						|
      ret = -1;
 | 
						|
    } else if (err >= OB_MIN_RAISE_APPLICATION_ERROR && err <= OB_MAX_RAISE_APPLICATION_ERROR) {
 | 
						|
      ret = err; // PL/SQL Raise Application Error
 | 
						|
    } else if (OB_LIKELY(0 >= err && err > -OB_MAX_ERROR_CODE)) {
 | 
						|
      ret = get_error(-err)->oracle_errno;
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  int ob_oracle_errno_with_check(const int err)
 | 
						|
  {
 | 
						|
    int ret = ob_oracle_errno(err);
 | 
						|
    if (ret < 0) {
 | 
						|
      ret = -err;
 | 
						|
    }
 | 
						|
    return ret;
 | 
						|
  }
 | 
						|
  int ob_errpkt_errno(const int err, const bool is_oracle_mode)
 | 
						|
  {
 | 
						|
    return (is_oracle_mode ? ob_oracle_errno_with_check(err) : ob_mysql_errno_with_check(err));
 | 
						|
  }
 | 
						|
  const char *ob_errpkt_strerror(const int err, const bool is_oracle_mode)
 | 
						|
  {
 | 
						|
    return (is_oracle_mode ? ob_oracle_strerror(err) : ob_strerror(err));
 | 
						|
  }
 | 
						|
  const char *ob_errpkt_str_user_error(const int err, const bool is_oracle_mode)
 | 
						|
  {
 | 
						|
    return (is_oracle_mode ? ob_oracle_str_user_error(err) : ob_str_user_error(err));
 | 
						|
  }
 | 
						|
 | 
						|
} // end namespace common
 | 
						|
} // end namespace oceanbase
 |