Documentation
¶
Index ¶
Constants ¶
View Source
const ( OCS_INFO_IP = "ip" OCS_INFO_PORT = "port" OCS_INFO_IDENTITY = "identity" OCS_INFO_ZONE = "zone" OCS_INFO_VERSION = "version" OCS_INFO_STATUS = "status" OCS_INFO_OS = "os" OCS_INFO_ARCHITECTURE = "architecture" OCS_INFO_BIN_SYNCED = "binary_synced" )
key of TABLE_OCS_INFO
View Source
const ( FLAG_IP = "ip" FLAG_PORT = "port" FLAG_PORT_SH = "P" FLAG_PID = "pid" FLAG_START_OB = "ob" FLAG_TAKE_OVER = "takeover" FLAG_ROOT_PWD = "password" FLAG_NEED_BE_CLUSTER = "cluster" )
command flag
View Source
const ( PROC_OBSHELL = "obshell" PROC_OBSHELL_SERVER = "server" PROC_OBSHELL_DAEMON = "daemon" PROC_OBSHELL_ADMIN = "admin" PROC_OBSHELL_CLIENT = "client" PROC_OBSERVER = "observer" PROC_SEEKDB = "seekdb" PROC_OBPROXY = "obproxy" )
proc name
View Source
const ( PKG_OBSHELL = "obshell" PKG_OCEANBASE_CE = "oceanbase-ce" PKG_OCEANBASE_CE_LIBS = "oceanbase-ce-libs" PKG_OCEANBASE_DIAGNOSTIC_TOOL = "oceanbase-diagnostic-tool" PKG_OCEANBASE = "oceanbase" PKG_OCEANBASE_STANDALONE = "oceanbase-standalone" PKG_OBPROXY_CE = "obproxy-ce" )
upload pkg names
View Source
const ( DIR_RUN = "run" DIR_BIN = "bin" DIR_CA = "ca" DIR_LOG_OBSHELL = "log_obshell" )
View Source
const ( // killed by command EXIT_CODE_CMD_KILL = iota + 16 // exit code for agent EXIT_CODE_ERROR_GET_IP_FAILED EXIT_CODE_ERROR_INVAILD_AGENT EXIT_CODE_ERROR_IP_NOT_MATCH EXIT_CODE_ERROR_AGENT_START_FAILED EXIT_CODE_ERROR_SERVER_LISTEN EXIT_CODE_ERROR_TAKE_OVER_FAILED EXIT_CODE_NOTIFY_SIGNAL EXIT_CODE_ERROR_NOT_CLUSTER_AGENT // exit code for ob EXIT_CODE_ERROR_OB_START_FAILED EXIT_CODE_ERROR_OB_CONN_TIMEOUT // exit code for permission denied EXIT_CODE_ERROR_PERMISSION_DENIED EXIT_CODE_ERROR_OB_PWD_ERROR // exit code for daemon EXIT_CODE_ERROR_DAEMON_START_FAILED // exit code for admin EXIT_CODE_ERROR_ADMIN_START_FAILED // exit code for backup binary EXIT_CODE_ERROR_BACKUP_BINARY_FAILED EXIT_CODE_ERROR_EXEC_BINARY_FAILED )
exit code
View Source
const ( BINDING_MODE_OPTIONAL = "OPTIONAL" BINDING_MODE_MANDATORY = "MANDATORY" LOG_ARCHIVE_CONCURRENCY_LOW = 0 LOG_ARCHIVE_CONCURRENCY_HIGH = 100 HA_LOW_THREAD_SCORE_LOW = 0 HA_LOW_THREAD_SCORE_HIGH = 100 PIECE_SWITCH_INTERVAL_LOW = time.Hour * 24 PIECE_SWITCH_INTERVAL_HIGH = time.Hour * 24 * 7 ARCHIVE_LAG_TARGET_HIGH = time.Hour * 2 ARCHIVE_LAG_TARGET_LOW_FOR_S3 = time.Minute DELETE_POLICY_DEFAULT = "default" LOG_MODE_NOARCHIVELOG = "NOARCHIVELOG" LOG_MODE_ARCHIVELOG = "ARCHIVELOG" ARCHIVELOG_STATUS_NULL = "" ARCHIVELOG_STATUS_PREPARE = "PREPARE" ARCHIVELOG_STATUS_BEGINNING = "BEGINNING" ARCHIVELOG_STATUS_DOING = "DOING" ARCHIVELOG_STATUS_INTERRUPTED = "INTERRUPTED" ARCHIVELOG_STATUS_STOP = "STOP" ARCHIVELOG_STATUS_STOPPING = "STOPPING" ARCHIVELOG_STATUS_SUSPENDING = "SUSPENDING" ARCHIVELOG_STATUS_SUSPEND = "SUSPEND" TIME_UNIT_MICROSECOND = "us" TIME_UNIT_MILLISECOND = "ms" TIME_UNIT_SECOND = "s" TIME_UNIT_MINUTE = "m" TIME_UNIT_HOUR = "h" TIME_UNIT_DAY = "d" PREFIX_OSS = "oss://" PREFIX_COS = "cos://" PREFIX_S3 = "s3://" PREFIX_FILE = "file://" PROTOCOL_OSS = "oss" PROTOCOL_COS = "cos" PROTOCOL_S3 = "s3" PROTOCOL_FILE = "file" BACKUP_DIR_CLOG = "clog" BACKUP_DIR_DATA = "data" BACKUP_MODE_FULL = "full" BACKUP_MODE_INCREMENTAL = "incremental" BACKUP_CANCELED = "canceled" )
View Source
const ( RESTORE_UNIT_NUM_DEFAULT = 1 HA_HIGH_THREAD_SCORE_DEFAULT = 10 )
View Source
const ( COMMAND_HOST_TYPE string = "systemd-detect-virt" COMMAND_OS_NAME string = "cat /etc/os-release | grep \"^ID=\" | cut -f2 -d=" COMMAND_OS_RELEASE string = "cat /etc/os-release | grep \"^VERSION_ID=\" | cut -f2 -d=" COMMAND_CPU_PHYSICAL_CORES string = "cat /proc/cpuinfo | grep \"physical id\" | sort | uniq | wc -l" COMMAND_CPU_LOGIC_CORES string = "cat /proc/cpuinfo | grep \"processor\" | wc -l" COMMAND_CPU_MODEL string = "cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq" COMMAND_CPU_FREQUENCY string = "cat /proc/cpuinfo | grep MHz | cut -f2 -d: | uniq" COMMAND_MEMORY_TOTAL string = "cat /proc/meminfo | grep MemTotal | cut -f2 -d: | uniq" COMMAND_MEMORY_FREE string = "cat /proc/meminfo | grep MemFree | cut -f2 -d: | uniq" COMMAND_MEMORY_AVAILABLE string = "cat /proc/meminfo | grep MemAvailable | cut -f2 -d: | uniq" COMMAND_ULIMIT_NOFILE string = "ulimit -n" COMMAND_ULIMIT_MAX_USER_PROCESSES string = "ulimit -u" COMMAND_DF string = "df -h | grep -v Filesystem" )
View Source
const ( MAINTAINER_MAX_ACTIVE_TIME_SEC = 5 MAINTAINER_MAX_ACTIVE_TIME = MAINTAINER_MAX_ACTIVE_TIME_SEC * time.Second MAINTAINER_UPDATE_INTERVAL = 4 * time.Second // update interval COORDINATOR_MIN_INTERVAL = 1 * time.Second // coordinator minimum update interval )
View Source
const ( // source config default value DB_USERNAME = "root" DB_ORACLE_USERNAME = "SYS" DB_PROXYSYS_USERNAME = "root@proxysys" LOCAL_IP = "127.0.0.1" LOCAL_IP_V6 = "::1" DB_DEFAULT_CHARSET = "utf8mb4" DB_DEFAULT_LOCATION = "Local" // gorm config default value DB_DEFAULT_MAX_IDLE_CONNS = 1 DB_DEFAULT_MAX_OPEN_CONNS = 5 DB_DEFAULT_CONN_MAX_LIFETIME = 0 // create table default value DB_SINGULAR_TABLE = true )
View Source
const ( MAX_GET_INSTANCE_RETRIES = 600 GET_INSTANCE_RETRY_INTERVAL = 1 UPGRADE_BINARY_RETRY_INTERVAL = 10 )
View Source
const ( STATE_UNKNOWN = iota STATE_STARTING STATE_RUNNING STATE_STOPPING STATE_STOPPED )
View Source
const ( SKIP_VERIFY = "skip_verify" ENABLE_CLIENT_AUTH = "enable_client_auth" )
View Source
const ( PARAMETER_ENABLE_REBALANCE = "enable_rebalance" PARAMETER_GLOBAL_INDEX_AUTO_SPLIT_POLICY = "global_index_auto_split_policy" PARAMETER_MIN_FULL_RESOURCE_POOL_MEMORY = "__min_full_resource_pool_memory" PARAMETER_OB_STARTUP_MODE = "ob_startup_mode" OB_STARTUP_MODE_SHARED_STORAGE = "SHARED_STORAGE" VARIABLE_TIME_ZONE = "time_zone" VARIABLE_CHARACTER_SET_SERVER = "character_set_server" VARIABLE_OB_TCP_INVITED_NODES = "ob_tcp_invited_nodes" VARIABLE_READ_ONLY = "read_only" VARIABLE_LOWER_CASE_TABLE_NAMES = "lower_case_table_names" )
View Source
const ( OBPROXY_INFO_SQL_PORT = "sql_port" OBPROXY_INFO_OBPROXY_SYS_PASSWORD = "obproxy_sys_password" OBPROXY_INFO_HOME_PATH = "home_path" OBPROXY_INFO_PROXYRO_PASSWORD = "proxyro_password" OBPROXY_INFO_VERSION = "version" OBPROXY_CONFIG_PROMETHUES_LISTEN_PORT = "prometheus_listen_port" OBPROXY_CONFIG_RS_LIST = "rootservice_list" OBPROXY_CONFIG_CONFIG_SERVER_URL = "obproxy_config_server_url" OBPROXY_CONFIG_LISTEN_PORT = "listen_port" OBPROXY_CONFIG_CLUSTER_NAME = "cluster_name" OBPROXY_CONFIG_RPC_LISTEN_PORT = "rpc_listen_port" OBPROXY_CONFIG_OBPROXY_SYS_PASSWORD = "obproxy_sys_password" OBPROXY_CONFIG_ROOT_SERVICE_CLUSTER_NAME = "rootservice_cluster_name" OBPROXY_CONFIG_PROXYRO_PASSWORD = "observer_sys_password" OBPROXY_CONFIG_PROXY_LOCAL_CMD = "proxy_local_cmd" OBPROXY_CONFIG_HOT_UPGRADE_ROLLBACK_TIMEOUT = "hot_upgrade_rollback_timeout" OBPROXY_CONFIG_HOT_UPGRADE_EXIT_TIMEOUT = "hot_upgrade_exit_timeout" OBPROXY_MIN_VERSION_SUPPORT = "4.0.0" OBPROXY_INFO_STATUS = "status" OBPROXY_DIR_ETC = "etc" OBPROXY_DIR_BIN = "bin" OBPROXY_DIR_LIB = "lib" OBPROXY_DIR_LOG = "log" OBPROXY_DIR_RUN = "run" BIN_OBPROXY = "obproxy" BIN_OBPROXYD = "obproxyd" RESTART_FOR_PROXY_LOCAL_CMD = "2" OBPROXY_DEFAULT_SQL_PORT = 2883 OBPROXY_DEFAULT_EXPORTER_PORT = 2884 OBPROXY_DEFAULT_RPC_PORT = 2885 DEFAULT_HOT_RESTART_TIME_OUT = 1800 // 30 minutes )
View Source
const ( OB_MYSQL_PRIVILEGE_ALTER = "ALTER" OB_MYSQL_PRIVILEGE_CREATE = "CREATE" OB_MYSQL_PRIVILEGE_DELETE = "DELETE" OB_MYSQL_PRIVILEGE_DROP = "DROP" OB_MYSQL_PRIVILEGE_INSERT = "INSERT" OB_MYSQL_PRIVILEGE_SELECT = "SELECT" OB_MYSQL_PRIVILEGE_UPDATE = "UPDATE" OB_MYSQL_PRIVILEGE_INDEX = "INDEX" OB_MYSQL_PRIVILEGE_CREATE_VIEW = "CREATE_VIEW" OB_MYSQL_PRIVILEGE_SHOW_VIEW = "SHOW_VIEW" OB_MYSQL_PRIVILEGE_CREATE_USER = "CREATE_USER" OB_MYSQL_PRIVILEGE_PROCESS = "PROCESS" OB_MYSQL_PRIVILEGE_SUPER = "SUPER" OB_MYSQL_PRIVILEGE_SHOW_DATABASES = "SHOW_DATABASES" OB_MYSQL_PRIVILEGE_GRANT_OPTION = "GRANT_OPTION" // Oracle privileges OB_ORACLE_PRIVILEGE_CREATE_SESSION = "CREATE_SESSION" OB_ORACLE_PRIVILEGE_CREATE_TABLE = "CREATE_TABLE" OB_ORACLE_PRIVILEGE_CREATE_ANY_TABLE = "CREATE_ANY_TABLE" OB_ORACLE_PRIVILEGE_ALTER_ANY_TABLE = "ALTER_ANY_TABLE" OB_ORACLE_PRIVILEGE_BACKUP_ANY_TABLE = "BACKUP_ANY_TABLE" OB_ORACLE_PRIVILEGE_DROP_ANY_TABLE = "DROP_ANY_TABLE" OB_ORACLE_PRIVILEGE_LOCK_ANY_TABLE = "LOCK_ANY_TABLE" OB_ORACLE_PRIVILEGE_COMMENT_ANY_TABLE = "COMMENT_ANY_TABLE" OB_ORACLE_PRIVILEGE_SELECT_ANY_TABLE = "SELECT_ANY_TABLE" OB_ORACLE_PRIVILEGE_INSERT_ANY_TABLE = "INSERT_ANY_TABLE" OB_ORACLE_PRIVILEGE_UPDATE_ANY_TABLE = "UPDATE_ANY_TABLE" OB_ORACLE_PRIVILEGE_DELETE_ANY_TABLE = "DELETE_ANY_TABLE" OB_ORACLE_PRIVILEGE_FLASHBACK_ANY_TABLE = "FLASHBACK_ANY_TABLE" OB_ORACLE_PRIVILEGE_CREATE_ROLE = "CREATE_ROLE" OB_ORACLE_PRIVILEGE_DROP_ANY_ROLE = "DROP_ANY_ROLE" OB_ORACLE_PRIVILEGE_GRANT_ANY_ROLE = "GRANT_ANY_ROLE" OB_ORACLE_PRIVILEGE_ALTER_ANY_ROLE = "ALTER_ANY_ROLE" OB_ORACLE_PRIVILEGE_AUDIT_ANY = "AUDIT_ANY" OB_ORACLE_PRIVILEGE_GRANT_ANY_PRIVILEGE = "GRANT_ANY_PRIVILEGE" OB_ORACLE_PRIVILEGE_GRANT_ANY_OBJECT_PRIVILEGE = "GRANT_ANY_OBJECT_PRIVILEGE" OB_ORACLE_PRIVILEGE_CREATE_ANY_INDEX = "CREATE_ANY_INDEX" OB_ORACLE_PRIVILEGE_ALTER_ANY_INDEX = "ALTER_ANY_INDEX" OB_ORACLE_PRIVILEGE_DROP_ANY_INDEX = "DROP_ANY_INDEX" OB_ORACLE_PRIVILEGE_CREATE_ANY_VIEW = "CREATE_ANY_VIEW" OB_ORACLE_PRIVILEGE_DROP_ANY_VIEW = "DROP_ANY_VIEW" OB_ORACLE_PRIVILEGE_CREATE_VIEW = "CREATE_VIEW" OB_ORACLE_PRIVILEGE_SELECT_ANY_DICTIONARY = "SELECT_ANY_DICTIONARY" OB_ORACLE_PRIVILEGE_CREATE_PROCEDURE = "CREATE_PROCEDURE" OB_ORACLE_PRIVILEGE_CREATE_ANY_PROCEDURE = "CREATE_ANY_PROCEDURE" OB_ORACLE_PRIVILEGE_ALTER_ANY_PROCEDURE = "ALTER_ANY_PROCEDURE" OB_ORACLE_PRIVILEGE_DROP_ANY_PROCEDURE = "DROP_ANY_PROCEDURE" OB_ORACLE_PRIVILEGE_EXECUTE_ANY_PROCEDURE = "EXECUTE_ANY_PROCEDURE" OB_ORACLE_PRIVILEGE_CREATE_SYNONYM = "CREATE_SYNONYM" OB_ORACLE_PRIVILEGE_CREATE_ANY_SYNONYM = "CREATE_ANY_SYNONYM" OB_ORACLE_PRIVILEGE_DROP_ANY_SYNONYM = "DROP_ANY_SYNONYM" OB_ORACLE_PRIVILEGE_CREATE_PUBLIC_SYNONYM = "CREATE_PUBLIC_SYNONYM" OB_ORACLE_PRIVILEGE_DROP_PUBLIC_SYNONYM = "DROP_PUBLIC_SYNONYM" OB_ORACLE_PRIVILEGE_CREATE_SEQUENCE = "CREATE_SEQUENCE" OB_ORACLE_PRIVILEGE_CREATE_ANY_SEQUENCE = "CREATE_ANY_SEQUENCE" OB_ORACLE_PRIVILEGE_ALTER_ANY_SEQUENCE = "ALTER_ANY_SEQUENCE" OB_ORACLE_PRIVILEGE_DROP_ANY_SEQUENCE = "DROP_ANY_SEQUENCE" OB_ORACLE_PRIVILEGE_SELECT_ANY_SEQUENCE = "SELECT_ANY_SEQUENCE" OB_ORACLE_PRIVILEGE_CREATE_TRIGGER = "CREATE_TRIGGER" OB_ORACLE_PRIVILEGE_CREATE_ANY_TRIGGER = "CREATE_ANY_TRIGGER" OB_ORACLE_PRIVILEGE_ALTER_ANY_TRIGGER = "ALTER_ANY_TRIGGER" OB_ORACLE_PRIVILEGE_DROP_ANY_TRIGGER = "DROP_ANY_TRIGGER" OB_ORACLE_PRIVILEGE_CREATE_PROFILE = "CREATE_PROFILE" OB_ORACLE_PRIVILEGE_ALTER_PROFILE = "ALTER_PROFILE" OB_ORACLE_PRIVILEGE_DROP_PROFILE = "DROP_PROFILE" OB_ORACLE_PRIVILEGE_CREATE_USER = "CREATE_USER" OB_ORACLE_PRIVILEGE_BECOME_USER = "BECOME_USER" OB_ORACLE_PRIVILEGE_ALTER_USER = "ALTER_USER" OB_ORACLE_PRIVILEGE_DROP_USER = "DROP_USER" OB_ORACLE_PRIVILEGE_CREATE_TYPE = "CREATE_TYPE" OB_ORACLE_PRIVILEGE_CREATE_ANY_TYPE = "CREATE_ANY_TYPE" OB_ORACLE_PRIVILEGE_ALTER_ANY_TYPE = "ALTER_ANY_TYPE" OB_ORACLE_PRIVILEGE_DROP_ANY_TYPE = "DROP_ANY_TYPE" OB_ORACLE_PRIVILEGE_EXECUTE_ANY_TYPE = "EXECUTE_ANY_TYPE" OB_ORACLE_PRIVILEGE_UNDER_ANY_TYPE = "UNDER_ANY_TYPE" OB_ORACLE_PRIVILEGE_PURGE_DBA_RECYCLEBIN = "PURGE_DBA_RECYCLEBIN" OB_ORACLE_PRIVILEGE_CREATE_ANY_OUTLINE = "CREATE_ANY_OUTLINE" OB_ORACLE_PRIVILEGE_ALTER_ANY_OUTLINE = "ALTER_ANY_OUTLINE" OB_ORACLE_PRIVILEGE_DROP_ANY_OUTLINE = "DROP_ANY_OUTLINE" OB_ORACLE_PRIVILEGE_SYSKM = "SYSKM" OB_ORACLE_PRIVILEGE_CREATE_TABLESPACE = "CREATE_TABLESPACE" OB_ORACLE_PRIVILEGE_ALTER_TABLESPACE = "ALTER_TABLESPACE" OB_ORACLE_PRIVILEGE_DROP_TABLESPACE = "DROP_TABLESPACE" OB_ORACLE_PRIVILEGE_SHOW_PROCESS = "SHOW_PROCESS" OB_ORACLE_PRIVILEGE_ALTER_SYSTEM = "ALTER_SYSTEM" OB_ORACLE_PRIVILEGE_CREATE_DATABASE_LINK = "CREATE_DATABASE_LINK" OB_ORACLE_PRIVILEGE_CREATE_PUBLIC_DATABASE_LINK = "CREATE_PUBLIC_DATABASE_LINK" OB_ORACLE_PRIVILEGE_DROP_DATABASE_LINK = "DROP_DATABASE_LINK" OB_ORACLE_PRIVILEGE_ALTER_SESSION = "ALTER_SESSION" OB_ORACLE_PRIVILEGE_ALTER_DATABASE = "ALTER_DATABASE" OB_ORACLE_PRIVILEGE_EXEMPT_REDACTION_POLICY = "EXEMPT_REDACTION_POLICY" OB_ORACLE_PRIVILEGE_SYSDBA = "SYSDBA" OB_ORACLE_PRIVILEGE_SYSOPER = "SYSOPER" OB_ORACLE_PRIVILEGE_SYSBACKUP = "SYSBACKUP" OB_ORACLE_PRIVILEGE_CREATE_ANY_DIRECTORY = "CREATE_ANY_DIRECTORY" OB_ORACLE_PRIVILEGE_DROP_ANY_DIRECTORY = "DROP_ANY_DIRECTORY" )
View Source
const ( OB_CONNECTION_TYPE_DIRECT = "DIRECT" OB_CONNECTION_TYPE_PROXY = "PROXY" )
View Source
const ( DB_OCEANBASE = "oceanbase" DB_OCS = "ocs" DEFAULT_HOST = "%" SYS_USER_PROXYRO = "proxyro" CONFIG_RPC_PORT = "rpc_port" CONFIG_MYSQL_PORT = "mysql_port" DEFAULT_MYSQL_PORT = 2881 DEFAULT_RPC_PORT = 2882 CONFIG_HOME_PATH = "homePath" CONFIG_ROOT_PWD = "rootPwd" CONFIG_AGENT_PASSWORD = "agentRootPwd" CONFIG_DATA_DIR = "data_dir" CONFIG_REDO_DIR = "redo_dir" CONFIG_CLOG_DIR = "clog_dir" CONFIG_SLOG_DIR = "slog_dir" CONFIG_LOCAL_IP = "local_ip" CONFIG_DEV_NAME = "devname" CONFIG_LOG_LEVEL = "syslog_level" CONFIG_ZONE = "zone" CONFIG_ROOT_PASSWORD = "rootPwd" CONFIG_RS_LIST = "rootservice_list" CONFIG_CLUSTER_ID = "cluster_id" CONFIG_CLUSTER_NAME = "cluster" CONFIG_FILE_LOCAL_IP = "local_ip" OB_PARAM_CLUSTER_ID = "cluster_id" OB_PARAM_CLUSTER_NAME = "cluster" // configurable dir OB_DIR_STORE = "store" OB_DIR_CLOG = "clog" OB_DIR_SLOG = "slog" // unconfigurable dir OB_DIR_ETC = "etc" OB_DIR_LOG = "log" OB_DIR_SSTABLE = "store/sstable" OB_CONFIG_FILE = "observer.config.bin" OB_ADMIN = "ob_admin" OB_BLOCK_FILE = "block_file" OB_IMPORT_TIME_ZONE_INFO_SCRIPT = "import_time_zone_info.py" OB_IMPORT_SRS_DATA_SCRIPT = "import_srs_data.py" OB_IMPORT_TIME_ZONE_INFO_FILE = "timezone_V1.log" OB_IMPORT_SRS_DATA_FILE = "default_srs_data_mysql.sql" OB_MODULE_TIMEZONE = "timezone" OB_MODULE_GIS = "gis" OB_MODULE_REDIS = "redis" // env OB_ROOT_PASSWORD = "OB_ROOT_PASSWORD" OB_VERSION_4_3_5_2 = "4.3.5.2" )
View Source
const ( TICK_INTERVAL_FOR_OB_STATUS_CHECK = 5 * time.Second TICK_NUM_FOR_OB_STATUS_CHECK = 60 OBSERVER_STATUS_DELETING = "DELETING" )
View Source
const ( USERNAME_PATTERN = "^[a-zA-Z][a-zA-Z_0-9]{1,29}$" ROLE_PATTERN = "^[a-zA-Z][a-zA-Z0-9_]{0,30}[a-zA-Z0-9]$" DATABASE_PATTERN = "^[a-zA-Z_0-9-]{2,64}$" TENANT_NAME_PATTERN = "^[a-zA-Z0-9-_~#+]+$" )
View Source
const ( LANGUAGE_EN_US = "en-US" LANGUAGE_ZH_CN = "zh-CN" LOCAL_ROUTE_KEY = "localRoute" API_ROUTE_KEY = "apiRoute" ORIGINAL_BODY = "ORIGINAL_BODY" ACCEPT_LANGUAGE = "Accept-Language" HTTP_HEADER_AES_KEY = "AES_KEY" HTTP_HEADER_SESSION_ID = "SESSION_ID" HTTP_HEADER_SSO_TOKEN = "SSO_TOKEN" )
View Source
const ( // scheduler wait time when get dag instance from db error SCHEDULER_WAIT_TIME = 1 * time.Second SCHEDULER_INTERVAL = 1 * time.Second )
View Source
const ( OCS_HEADER = "X-OCS-Header" OCS_AGENT_HEADER = "X-OCS-Agent-Header" REQUEST_RECEIVED_TIME = "request_received_time" RESPONSE_PWD_KEY = "password" AGENT_PRIVATE_KEY = "private_key" AGENT_PUBLIC_KEY = "public_key" AGENT_AUTH_EXPIRED_DURATION = "auth_expired_duration" CONFIG_SESSION_TIMEOUT = "session_timeout" CONFIG_SESSION_GC_INTERVAL = "session_gc_interval" // SQLite ocs_config: SSO one-time jump token lifetime and cleanup ticker (values are seconds, same as session_*). CONFIG_SSO_TOKEN_EXPIRY_SEC = "sso_token_expiry_sec" CONFIG_SSO_TOKEN_GC_INTERVAL_SEC = "sso_token_gc_interval_sec" DEFAULT_AUTH_EXPIRED_DURATION = 10 * time.Second GET_PASSWORD_RPC_TIMEOUT = 1 * time.Second CREDENTIAL_AES_KEY_CONFIG = "credential_aes_key" CAESAR_SHIFT = 11 )
View Source
const ( TABLE_ALL_AGENT = "all_agent" TABLE_OB_CONFIG = "ob_config" TABLE_OB_SERVER_CONFIG = "ob_server_config" TABLE_OB_ZONE_CONFIG = "ob_zone_config" TABLE_OB_GLOBAL_CONFIG = "ob_global_config" TABLE_OB_SYS_PARAMETER = "ob_sys_parameter" )
View Source
const ( REGISTER = 0 FAILED = -1 SUCCEEDED = 10000 )
View Source
const ( CLUSTER_TASK_ID_PREFIX = '1' LOCAL_TASK_IPV4_ID_PREFIX = '2' LOCAL_TASK_IPV6_ID_PREFIX = '3' OBPROXY_TASK_IPV4_ID_PREFIX = '4' OBPROXY_TASK_IPV6_ID_PREFIX = '5' ENGINE_WAIT_TIME = 30 * time.Second SYNC_INTERVAL = 1 * time.Second SYNC_TASK_BUFFER_SIZE = 10000 SYNC_TASK_LOG_BUFFER_SIZE = 10000 )
View Source
const ( API_OBCLUSTER_CONFIG = "api obcluster config" RPC_OBCLUSTER_CONFIG = "rpc obcluster config" MASTER_SET_OBCLUSTER_CONF = "master set self obcluster config" API_OBSERVER_CONFIG = "api observer config" RPC_OBSERVER_CONFIG = "rpc observer config" MASTER_SET_OBSERVER_CONF = "master set self observer config" RPC_OB_START = "rpc ob start" API_OB_STOP = "api ob stop" RPC_OB_STOP = "rpc ob stop" API_OB_INIT = "api ob init" RPC_OB_START_CHECK = "api ob startcheck" )
View Source
const ( MYSQL_MODE = "MYSQL" ORACLE_MODE = "ORACLE" TENANT_STATUS_NORMAL = "NORMAL" TENANT_ROLE_PRIMARY = "PRIMARY" TENANT_TYPE_USER = "USER" TENANT_TYPE_META = "META" TENANT_SYS = "sys" TENANT_SYS_ID = 1 REPLICA_TYPE_FULL = "FULL" REPLICA_TYPE_READONLY = "READONLY" PRIMARY_ZONE_RANDOM = "RANDOM" // not support tenant name since ob4.2.1 TENANT_ALL = "all" TENANT_ALL_USER = "all_user" TENANT_ALL_META = "all_meta" CHECK_JOB_RETRY_TIMES = 360 CHECK_JOB_INTERVAL = 10 * time.Second CHECK_TENANT_EXIST_INTERVAL = 5 * time.Second RESOURCE_UNIT_CONFIG_CPU_MINE = 1 SLOW_SQL_THRESHOLD = 100000 ALTER_RESOURCE_TENANT_UNIT_NUM = "ALTER_RESOURCE_TENANT_UNIT_NUM" ALTER_TENANT_LOCALITY = "ALTER_TENANT_LOCALITY" ALTER_TENANT_PRIMARY_ZONE = "ALTER_TENANT_PRIMARY_ZONE" )
View Source
const ( URI_RPC_V1 = "/rpc/v1" URI_API_V1 = "/api/v1" URI_TASK_GROUP = "/task" URI_AGENT_GROUP = "/agent" URI_AGENTS_GROUP = "/agents" URI_OB_GROUP = "/ob" URI_ZONE_GROUP = "/zone" URI_OBCLUSTER_GROUP = "/obcluster" URI_OBSERVER_GROUP = "/observer" URI_TENANT_GROUP = "/tenant" URI_TENANTS_GROUP = "/tenants" URI_UNIT_GROUP = "/unit/config" URI_UNITS_GROUP = "/units/config" URI_POOL_GROUP = "/resource-pool" URI_POOLS_GROUP = "/resource-pools" URI_RECYCLEBIN_GROUP = "/recyclebin" URI_OBPROXY_GROUP = "/obproxy" URI_METRIC_GROUP = "/metrics" URI_SYSTEM_GROUP = "/system" URI_EXTERNAL_GROUP = "/external" URI_SECURITY_GROUP = "/security" URI_PROMETHEUS = "/prometheus" URI_ALERTMANAGER = "/alertmanager" URI_INFO = "/info" URI_TOPOLOGY = "/topology" URI_TIME = "/time" URI_GIT_INFO = "/git-info" URI_HOST_INFO = "/host-info" URI_STATUS = "/status" URI_SECRET = "secret" URI_LOGIN = "/login" URI_LOGOUT = "/logout" URI_JOIN = "/join" URI_REMOVE = "/remove" URI_PASSWORD = "/password" URI_TOKEN = "/token" URI_SSO_GROUP = "/sso" URI_EXCHANGE = "/exchange" URI_SYNC_BIN = "/sync-bin" URI_DAG = "/dag" URI_DAGS = "/dags" URI_NODE = "/node" URI_SUB_TASK = "/sub_task" URI_LOG = "/log" URI_LOGS = "/logs" URI_MAINTAIN = "/maintain" URI_UNFINISH = "/unfinish" URI_MAINTAINER = "/maintainer" URI_MAIN_DAGS = "/main_dags" // OB api URI_CONFIG = "/config" URI_START_CHECK = "/startcheck" URI_DEPLOY = "/deploy" URI_START = "/start" URI_STOP = "/stop" URI_ZONE_STOP = "/zone/stop" URI_UPDATE = "/update" URI_INIT = "/init" URI_DESTROY = "/destroy" URI_SCALE_OUT = "/scale_out" URI_SCALE_IN = "/scale_in" URI_AGENTS = "/agents" URI_CHARSETS = "/charsets" URI_STATISTICS = "/statistics" // Used for upgrade URI_UPGRADE = "/upgrade" URI_CHECK = "/check" URI_ROUTE = "/route" URI_PACKAGE = "/package" URI_PARAMS = "/params" URI_BACKUP = "/backup" URI_RESTORE = "/restore" URI_WINDOWS = "/windows" URI_TASKS = "/tasks" URI_ENV = "/env" // Used for tenant URI_TENANTS = "/tenants" URI_LOCK = "/lock" URI_NAME = "/name" URI_REPLICAS = "/replicas" URI_PRIMARYZONE = "/primary-zone" URI_ROOTPASSWORD = "/password" URI_WHITELIST = "/whitelist" URI_PARAMETERS = "/parameters" URI_VARIABLES = "/variables" URI_VARIABLE = "/variable" URI_PARAMETER = "/parameter" URI_OVERVIEW = "/overview" URI_SOURCE_INFO = "/source-tenant-info" URI_TENANT = "/tenant" URI_USER = "/user" URI_USERS = "/users" URI_COMPACT = "/compact" URI_COMPACTION = "/compaction" URI_COMPACTION_ERROR = "/compaction-error" URI_TOP_COMPACTIONS = "/top-compactions" URI_TOP_SLOW_SQLS = "/top-slow-sqls" URI_DATABASES = "/databases" URI_DB_PRIVILEGE = "/db-privilege" URI_DB_PRIVILEGES = "/db-privileges" URI_GLOBAL_PRIVILEGES = "/global-privileges" URI_GLOBAL_PRIVILEGE = "/global-privilege" URI_OBJECT_PRIVILEGES = "/object-privileges" URI_OBJECTS = "/objects" URI_ROLE = "/role" URI_PERSIST = "/persist" URI_STATS = "/stats" URI_PRECHECK = "/precheck" URI_ROLES = "/roles" URI_SUPPORT_TEMPLATES = "/support-templates" URI_SESSIONS = "/sessions" URI_QUERIES = "/queries" URI_DEADLOCKS = "/deadlocks" URI_UNIT_CONFIG_LIMIT = "/unit-config-limit" URI_LICENSE = "/license" URI_CREDENTIAL = "/credential" URI_CREDENTIALS = "/credentials" URI_VALIDATE = "/validate" URI_ENCRYPT_SECRETKEY = "/encrypt-secret-key" URI_INSPECTION = "/inspection" URI_REPORTS = "/reports" URI_REPORT = "/report" URI_PARAM_NAME = "name" URI_PATH_PARAM_NAME = "/:" + URI_PARAM_NAME URI_PARAM_ROLE = "role" URI_PATH_PARAM_ROLE = "/:" + URI_PARAM_ROLE URI_PARAM_VAR = "variable" URI_PATH_PARAM_VAR = "/:" + URI_PARAM_VAR URI_PARAM_PARA = "parameter" URI_PATH_PARAM_PARA = "/:" + URI_PARAM_PARA URI_PARAM_USER = "user" URI_PATH_PARAM_USER = "/:" + URI_PARAM_USER URI_PARAM_DATABASE = "database" URI_PATH_PARAM_DATABASE = "/:" + URI_PARAM_DATABASE URI_PARAM_SESSION_ID = "session_id" URI_PATH_PARAM_SESSION_ID = "/:" + URI_PARAM_SESSION_ID URI_PARAM_ZONE_NAME = "zone_name" URI_PATH_PARAM_ZONE_NAME = "/:" + URI_PARAM_ZONE_NAME // Used for backup URI_ARCHIVE = "/log" URI_STORAGE = "/storage" URI_POOL_API_PREFIX = URI_API_V1 + URI_POOL_GROUP URI_UNIT_GROUP_PREFIX = URI_API_V1 + URI_UNIT_GROUP URI_TASK_API_PREFIX = URI_API_V1 + URI_TASK_GROUP URI_AGENT_API_PREFIX = URI_API_V1 + URI_AGENT_GROUP URI_AGENTS_API_PREFIX = URI_API_V1 + URI_AGENTS_GROUP URI_OB_API_PREFIX = URI_API_V1 + URI_OB_GROUP URI_OBCLUSTER_API_PREFIX = URI_API_V1 + URI_OBCLUSTER_GROUP URI_OBSERVER_API_PREFIX = URI_API_V1 + URI_OBSERVER_GROUP URI_ZONE_API_PREFIX = URI_API_V1 + URI_ZONE_GROUP URI_TENANT_API_PREFIX = URI_API_V1 + URI_TENANT_GROUP URI_OBPROXY_API_PREFIX = URI_API_V1 + URI_OBPROXY_GROUP URI_TASK_RPC_PREFIX = URI_RPC_V1 + URI_TASK_GROUP URI_AGENT_RPC_PREFIX = URI_RPC_V1 + URI_AGENT_GROUP URI_OBSERVER_RPC_PREFIX = URI_RPC_V1 + URI_OBSERVER_GROUP URI_OB_RPC_PREFIX = URI_RPC_V1 + URI_OB_GROUP // Used for alarm URI_ALARM_GROUP = "/alarm" URI_ALERT = "/alert" URI_ALERTS = "/alerts" URI_SILENCER = "/silencer" URI_SILENCERS = "/silencers" URI_RULE = "/rule" URI_RULES = "/rules" URI_PARAM_ID = "id" URI_PATH_PARAM_ID = "/:" + URI_PARAM_ID //Used for shared storage URI_SHAREDSTORAGE = "/shared-storage" URI_VALIDATE_KEY = "/validate-key" URI_SAVE_KEY = "/save-key" )
View Source
const (
AGENT_START_TIMEOUT = 600
)
View Source
const (
AGENT_V4241 = "4.2.4.1"
)
View Source
const (
CHUNK_SIZE uint64 = 1024*1024*8 - 1
)
View Source
const (
DEFAULT_AGENT_PORT = 2886
)
Defaulte congfig for ocsagent
View Source
const (
DEFAULT_VIRTUAL_CLOCK_SYNC_INTERVAL = 10 * time.Second
)
virtual clock synchronization interval
View Source
const (
ENV_OBSHELL_TELEMETRY_ENABLED = "OBSHELL_TELEMETRY_ENABLED"
)
View Source
const (
OCSAGENT_META_PATH = ".meta"
)
Variables ¶
View Source
var ( VERSION = "" RELEASE = "" DIST = "" VERSION_RELEASE = fmt.Sprintf("%s-%s", VERSION, RELEASE) SUPPORT_MIN_VERSION = "4.2.0.0" )
View Source
var ( // READONLY variables CREATE_TENANT_STATEMENT_VARIABLES = []string{"lower_case_table_names"} // Those variables could not set by sys tenant. VARIAbLES_NEED_TO_CONNEC_WHEN_SET = []string{ "collation_server", "collation_database", "collation_connection", "character_set_server", "character_set_database", "character_set_connection", "plsql_warnings", } )
View Source
var ( PTR_TRUE = &val_true PTR_FALSE = &val_false PTR_NIL_STR = &nil_str PTR_NIL_INT = &nil_int )
View Source
var AGENT_NEED_EXIT_CODE_LIST = []int{}
View Source
var OB_CONFIG_COMPATIBLE_MAP = map[string]string{
CONFIG_RPC_PORT: "rpcPort",
CONFIG_MYSQL_PORT: "mysqlPort",
}
Compatible with OBShell which version prior to 4.2.3
View Source
var OB_EXCLUDED_USERS = []string{"PUBLIC", "LBACSYS", "ORAAUDITOR", "__oceanbase_inner_standby_user"}
View Source
var OB_INNER_USERS = []string{"PUBLIC", "LBACSYS", "ORAAUDITOR", "__oceanbase_inner_standby_user", "ocp_monitor"}
View Source
var OB_MYSQL_PRIVILEGES = []string{OB_MYSQL_PRIVILEGE_ALTER, OB_MYSQL_PRIVILEGE_CREATE, OB_MYSQL_PRIVILEGE_DELETE, OB_MYSQL_PRIVILEGE_DROP, OB_MYSQL_PRIVILEGE_INSERT, OB_MYSQL_PRIVILEGE_INDEX, OB_MYSQL_PRIVILEGE_SELECT, OB_MYSQL_PRIVILEGE_UPDATE, OB_MYSQL_PRIVILEGE_CREATE_VIEW, OB_MYSQL_PRIVILEGE_SHOW_VIEW, OB_MYSQL_PRIVILEGE_CREATE_USER, OB_MYSQL_PRIVILEGE_PROCESS, OB_MYSQL_PRIVILEGE_SUPER, OB_MYSQL_PRIVILEGE_SHOW_DATABASES, OB_MYSQL_PRIVILEGE_GRANT_OPTION}
View Source
var OB_NO_PRIVILEGE_DBS = []string{"information_schema"}
View Source
var OB_ORACLE_PRIVILEGES = []string{ OB_ORACLE_PRIVILEGE_CREATE_SESSION, OB_ORACLE_PRIVILEGE_CREATE_TABLE, OB_ORACLE_PRIVILEGE_CREATE_ANY_TABLE, OB_ORACLE_PRIVILEGE_ALTER_ANY_TABLE, OB_ORACLE_PRIVILEGE_BACKUP_ANY_TABLE, OB_ORACLE_PRIVILEGE_DROP_ANY_TABLE, OB_ORACLE_PRIVILEGE_LOCK_ANY_TABLE, OB_ORACLE_PRIVILEGE_COMMENT_ANY_TABLE, OB_ORACLE_PRIVILEGE_SELECT_ANY_TABLE, OB_ORACLE_PRIVILEGE_INSERT_ANY_TABLE, OB_ORACLE_PRIVILEGE_UPDATE_ANY_TABLE, OB_ORACLE_PRIVILEGE_DELETE_ANY_TABLE, OB_ORACLE_PRIVILEGE_FLASHBACK_ANY_TABLE, OB_ORACLE_PRIVILEGE_CREATE_ROLE, OB_ORACLE_PRIVILEGE_DROP_ANY_ROLE, OB_ORACLE_PRIVILEGE_GRANT_ANY_ROLE, OB_ORACLE_PRIVILEGE_ALTER_ANY_ROLE, OB_ORACLE_PRIVILEGE_AUDIT_ANY, OB_ORACLE_PRIVILEGE_GRANT_ANY_PRIVILEGE, OB_ORACLE_PRIVILEGE_GRANT_ANY_OBJECT_PRIVILEGE, OB_ORACLE_PRIVILEGE_CREATE_ANY_INDEX, OB_ORACLE_PRIVILEGE_ALTER_ANY_INDEX, OB_ORACLE_PRIVILEGE_DROP_ANY_INDEX, OB_ORACLE_PRIVILEGE_CREATE_ANY_VIEW, OB_ORACLE_PRIVILEGE_DROP_ANY_VIEW, OB_ORACLE_PRIVILEGE_CREATE_VIEW, OB_ORACLE_PRIVILEGE_SELECT_ANY_DICTIONARY, OB_ORACLE_PRIVILEGE_CREATE_PROCEDURE, OB_ORACLE_PRIVILEGE_CREATE_ANY_PROCEDURE, OB_ORACLE_PRIVILEGE_ALTER_ANY_PROCEDURE, OB_ORACLE_PRIVILEGE_DROP_ANY_PROCEDURE, OB_ORACLE_PRIVILEGE_EXECUTE_ANY_PROCEDURE, OB_ORACLE_PRIVILEGE_CREATE_SYNONYM, OB_ORACLE_PRIVILEGE_CREATE_ANY_SYNONYM, OB_ORACLE_PRIVILEGE_DROP_ANY_SYNONYM, OB_ORACLE_PRIVILEGE_CREATE_PUBLIC_SYNONYM, OB_ORACLE_PRIVILEGE_DROP_PUBLIC_SYNONYM, OB_ORACLE_PRIVILEGE_CREATE_SEQUENCE, OB_ORACLE_PRIVILEGE_CREATE_ANY_SEQUENCE, OB_ORACLE_PRIVILEGE_ALTER_ANY_SEQUENCE, OB_ORACLE_PRIVILEGE_DROP_ANY_SEQUENCE, OB_ORACLE_PRIVILEGE_SELECT_ANY_SEQUENCE, OB_ORACLE_PRIVILEGE_CREATE_TRIGGER, OB_ORACLE_PRIVILEGE_CREATE_ANY_TRIGGER, OB_ORACLE_PRIVILEGE_ALTER_ANY_TRIGGER, OB_ORACLE_PRIVILEGE_DROP_ANY_TRIGGER, OB_ORACLE_PRIVILEGE_CREATE_PROFILE, OB_ORACLE_PRIVILEGE_ALTER_PROFILE, OB_ORACLE_PRIVILEGE_DROP_PROFILE, OB_ORACLE_PRIVILEGE_CREATE_USER, OB_ORACLE_PRIVILEGE_BECOME_USER, OB_ORACLE_PRIVILEGE_ALTER_USER, OB_ORACLE_PRIVILEGE_DROP_USER, OB_ORACLE_PRIVILEGE_CREATE_TYPE, OB_ORACLE_PRIVILEGE_CREATE_ANY_TYPE, OB_ORACLE_PRIVILEGE_ALTER_ANY_TYPE, OB_ORACLE_PRIVILEGE_DROP_ANY_TYPE, OB_ORACLE_PRIVILEGE_EXECUTE_ANY_TYPE, OB_ORACLE_PRIVILEGE_UNDER_ANY_TYPE, OB_ORACLE_PRIVILEGE_PURGE_DBA_RECYCLEBIN, OB_ORACLE_PRIVILEGE_CREATE_ANY_OUTLINE, OB_ORACLE_PRIVILEGE_ALTER_ANY_OUTLINE, OB_ORACLE_PRIVILEGE_DROP_ANY_OUTLINE, OB_ORACLE_PRIVILEGE_SYSKM, OB_ORACLE_PRIVILEGE_CREATE_TABLESPACE, OB_ORACLE_PRIVILEGE_ALTER_TABLESPACE, OB_ORACLE_PRIVILEGE_DROP_TABLESPACE, OB_ORACLE_PRIVILEGE_SHOW_PROCESS, OB_ORACLE_PRIVILEGE_ALTER_SYSTEM, OB_ORACLE_PRIVILEGE_CREATE_DATABASE_LINK, OB_ORACLE_PRIVILEGE_CREATE_PUBLIC_DATABASE_LINK, OB_ORACLE_PRIVILEGE_DROP_DATABASE_LINK, OB_ORACLE_PRIVILEGE_ALTER_SESSION, OB_ORACLE_PRIVILEGE_ALTER_DATABASE, OB_ORACLE_PRIVILEGE_EXEMPT_REDACTION_POLICY, OB_ORACLE_PRIVILEGE_SYSDBA, OB_ORACLE_PRIVILEGE_SYSOPER, OB_ORACLE_PRIVILEGE_SYSBACKUP, OB_ORACLE_PRIVILEGE_CREATE_ANY_DIRECTORY, OB_ORACLE_PRIVILEGE_DROP_ANY_DIRECTORY, }
View Source
var OB_RESTRICTED_DBS = []string{"oceanbase", "mysql", "SYS", "LBACSYS", "ORAAUDITOR"}
View Source
var PATH_PARAM_PATTERN = map[string]string{ URI_PARAM_USER: USERNAME_PATTERN, URI_PARAM_ROLE: ROLE_PATTERN, URI_PARAM_DATABASE: DATABASE_PATTERN, URI_PARAM_NAME: TENANT_NAME_PATTERN, }
View Source
var REQUIRE_UPGRADE_PKG_NAMES_MAP = map[oceanbase.OBType][]string{ oceanbase.OBTypeCommunity: { PKG_OCEANBASE_CE, PKG_OCEANBASE_CE_LIBS, }, oceanbase.OBTypeBusiness: { PKG_OCEANBASE, }, oceanbase.OBTypeStandalone: { PKG_OCEANBASE_STANDALONE, }, }
View Source
var SUPPORT_PKG_NAMES_MAP = map[oceanbase.OBType][]string{ oceanbase.OBTypeCommunity: { PKG_OBSHELL, PKG_OCEANBASE_CE, PKG_OCEANBASE_CE_LIBS, }, oceanbase.OBTypeBusiness: { PKG_OBSHELL, PKG_OCEANBASE, }, oceanbase.OBTypeStandalone: { PKG_OBSHELL, PKG_OCEANBASE_STANDALONE, }, }
View Source
var ZERO_TIME = time.Unix(0, 0)
zero time to avoid reporting an error when read the database 0000-00-00 00:00:00 time
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.