OceanBase
English日本語简体中文
Docs Home
Products
Integrations
Release Notes

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service
OceanBase DatabaseOceanBase Cloud ToolsConnectors and MiddlewareLifecycle Support Policy

OceanBase Database Proxy

V4.4.0
  • What is ODP?
  • Installation and deployment
    • Overview
    • Deploy ODP by using obd
    • Deploy ODP by using OCP
    • Deploy ODP by using the CLI
    • Deployment modes
  • Basic operations
  • Configuration parameter
    • View and modify parameters
    • Parameter summary
    • Global parameters
      • automatic_match_work_thread
      • block_thread_num
      • cache_cleaner_clean_interval
      • check_tenant_locality_change
      • client_max_connections
      • client_max_memory_size
      • client_session_id_version
      • client_sock_option_flag_out
      • client_tcp_keepcnt
      • client_tcp_keepidle
      • client_tcp_keepintvl
      • client_tcp_user_timeout
      • cluster_count_high_water_mark
      • cluster_expire_time
      • config_server_refresh_interval
      • congestion_fail_window
      • congestion_failure_threshold
      • congestion_retry_interval
      • connection_diagnosis_option
      • connection_pool_mode
      • connect_observer_max_retries
      • current_local_config_version
      • default_buffer_water_mark
      • default_inactivity_timeout
      • delay_exit_time
      • delay_update_entry_interval
      • detect_server_timeout
      • digest_sql_length
      • enable_abort_conn_info
      • enable_async_log
      • enable_async_pull_location_cache
      • enable_auto_restart
      • enable_bad_route_reject
      • enable_binlog_service
      • enable_cached_server
      • enable_causal_order_read
      • enable_client_connection_lru_disconnect
      • enable_client_ip_checkout
      • enable_cluster_checkout
      • enable_compression_protocol
      • enable_congestion
      • enable_connection_diagnosis
      • enable_cpu_isolate
      • enable_cpu_topology
      • enable_crash_error_log
      • enable_cross_shard_txn
      • enable_extra_prometheus_metric
      • enable_flow_control
      • enable_full_link_trace
      • enable_full_username
      • enable_get_rslist_remote
      • enable_global_ps_cache
      • enable_index_route
      • enable_monitor_stat
      • enable_ob_protocol_v2
      • enable_obproxy_rpc_service
      • enable_partition_table_route
      • enable_performance_mode
      • enable_pl_route
      • enable_primary_zone
      • enable_prometheus
      • enable_proxy_scramble
      • enable_qa_mode
      • enable_qos
      • enable_report_session_stats
      • enable_reroute
      • enable_scan_all_request
      • enable_sequence_prefetch
      • enable_sharding
      • enable_single_leader_node_routing
      • enable_standby
      • enable_stat
      • enable_strict_kernel_release
      • enable_strict_stat_time
      • enable_sync_all_stats
      • enable_syslog_file_compress
      • enable_syslog_wf
      • enable_trace
      • enable_trace_stats
      • enable_trans_detail_stats
      • enable_transaction_internal_routing
      • enable_xa_route
      • fetch_proxy_bin_random_time
      • fetch_proxy_bin_timeout
      • flow_consumer_reenable_threshold
      • flow_event_queue_threshold
      • flow_high_water_mark
      • flow_low_water_mark
      • grpc_client_num
      • grpc_thread_num
      • hot_upgrade_exit_timeout
      • hot_upgrade_failure_retries
      • hot_upgrade_rollback_timeout
      • idc_list_refresh_interval
      • ignore_local_config
      • internal_cmd_mem_limited
      • ip_listen_mode
      • is_need_skip_delay_interval_schema_changed
      • ldg_info_refresh_interval
      • listen_port
      • local_bound_ip
      • local_bound_ipv6_ip
      • log_cleanup_interval
      • log_dir_size_threshold
      • log_file_percentage
      • long_async_task_timeout
      • max_log_file_size
      • max_syslog_file_count
      • max_syslog_file_time
      • mem_leak_check_class_name
      • mem_leak_check_mod_name
      • metadb_server_state_refresh_interval
      • min_congested_connect_timeout
      • min_keep_congestion_interval
      • monitor_cost_ms_unit
      • monitor_item_limit
      • monitor_item_max_idle_period
      • monitor_log_level
      • monitor_stat_dump_interval
      • monitor_stat_high_threshold
      • monitor_stat_low_threshold
      • monitor_stat_middle_threshold
      • need_convert_vip_to_tname
      • net_accept_threads
      • net_config_poll_timeout
      • normal_pl_update_threshold
      • obproxy_config_server_url
      • obproxy_sys_password
      • partition_location_expire_relative_time
      • prometheus_cost_ms_unit
      • prometheus_listen_port
      • prometheus_sync_interval
      • protocol_diagnosis_level
      • proxy_cluster
      • proxy_hot_upgrade_check_interval
      • proxy_id
      • proxy_info_check_interval
      • proxy_local_cmd
      • proxy_mem_limited
      • qa_mode_mock_public_cloud_slb_addr
      • qos_stat_clean_interval
      • qos_stat_item_limit
      • refresh_idc_list
      • refresh_json_config
      • refresh_rslist
      • request_buffer_length
      • rootservice_list
      • rpc_client_net_write_timeout
      • rpc_client_net_read_timeout
      • rpc_async_pull_batch_max_size
      • rpc_async_task_thread_num
      • rpc_ctx_expire_time
      • routing_cache_mem_limited
      • rpc_enable_async_analyze
      • rpc_enable_async_pull_batch_tablets
      • rpc_async_pull_batch_max_times
      • rpc_async_pull_batch_wait_interval
      • rpc_enable_direct_expire_route_entry
      • rpc_enable_congestion
      • rpc_enable_lower_case_table_names
      • rpc_enable_global_index
      • rpc_enable_force_srv_black_list
      • rpc_enable_requestsm_info
      • rpc_enable_reroute
      • rpc_enable_parallel_handler
      • rpc_enable_retry_request_info_log
      • rpc_force_use_original_redis_protocol
      • rpc_enable_sub_req_log
      • rpc_force_srv_black_list
      • rpc_listen_port
      • rpc_max_request_batch_size
      • rpc_max_response_batch_size
      • rpc_max_server_table_entry_num
      • rpc_net_timeout_base
      • rpc_partition_calc_max_retries
      • rpc_redis_operation_timeout
      • rpc_request_server_entry_max_retries
      • rpc_request_timeout
      • rpc_request_max_retries
      • rpc_redis_default_database_name
      • rpc_redis_max_monitor_num
      • rpc_period_task_interval
      • rpc_redis_default_user_name
      • rpc_request_retry_waiting_time
      • rpc_server_entry_expire_time
      • rpc_request_timeout_delta
      • rpc_server_net_invalid_time_us
      • rpc_server_net_handler_expire_time
      • rpc_srv_session_pool_inactive_timeout
      • rpc_service_mode
      • rpc_server_net_max_pending_request
      • rpc_sub_request_isolation_mode
      • rpc_support_key_partition_shard_request
      • rpc_sub_request_weight
      • rpc_sub_req_max_retries
      • scan_buffered_rows_warning_threshold
      • sequence_entry_expire_time
      • sequence_fail_retry_count
      • sequence_prefetch_threshold
      • server_detect_fail_threshold
      • server_detect_mode
      • server_detect_refresh_interval
      • server_protocol
      • server_routing_mode
      • server_state_refresh_interval
      • server_tcp_init_cwnd
      • server_tcp_keepcnt
      • server_tcp_keepidle
      • server_tcp_keepintvl
      • server_tcp_user_timeout
      • session_pool_idle_timeout
      • session_pool_reset_interval
      • session_pool_stat_log_interval
      • session_pool_thread_num
      • session_pool_thread_schedule_interval
      • shard_scan_thread_num
      • short_async_task_timeout
      • skip_proxy_sys_private_check
      • skip_proxyro_check
      • slow_proxy_process_time_threshold
      • slow_transaction_time_threshold
      • sock_option_flag_out
      • sock_packet_mark_out
      • sock_packet_tos_out
      • sock_recv_buffer_size_out
      • sock_send_buffer_size_out
      • sql_table_cache_expire_relative_time
      • sql_table_cache_mem_limited
      • sqlaudit_mem_limited
      • stack_size
      • stat_dump_interval
      • stat_table_sync_interval
      • syslog_io_bandwidth_limit
      • syslog_level
      • table_entry_retry_build_limit
      • task_thread_num
      • tenant_location_valid_time
      • tunnel_request_size_threshold
      • username_separator
      • work_thread_num
      • xflush_log_level
    • Multi-level parameters
      • binlog_service_ip
      • compression_algorithm
      • enable_check_cluster_name
      • enable_client_ssl
      • enable_cloud_full_username
      • enable_read_write_split
      • enable_rpc_throttle
      • enable_server_ssl
      • enable_standby_read_write_split
      • enable_transaction_split
      • enable_weak_reroute
      • init_sql
      • mysql_version
      • ob_max_read_stale_time
      • obproxy_force_parallel_query_dop
      • obproxy_read_consistency
      • obproxy_read_only
      • observer_query_timeout_delta
      • observer_sys_password
      • observer_sys_password1
      • proxy_idc_name
      • proxy_primary_zone_name
      • proxy_route_policy
      • proxy_tenant_name
      • query_digest_time_threshold
      • read_stale_retry_interval
      • rootservice_cluster_name
      • route_diagnosis_level
      • rpc_request_throttle_waiting_time
      • rpc_throttle_limit_qps_qa
      • route_target_replica_type
      • rpc_throttle_trigger_percentage
      • slow_query_time_threshold
      • sql_firewall_config
      • ssl_attributes
      • target_db_server
      • weakread_weight_zone
  • Connection management
    • Principles
    • Session status synchronization
    • Configure a globally unique client session ID
    • Client session
    • Server session
    • Network connection
    • Session connection pool
  • Data routing
    • Factors affecting data routing
    • ODP routing
    • Intra-tenant routing
      • Overview
      • IP address-based routing
      • Partitioned table-based routing for strong-consistency reads
      • Global index table-based routing for strong-consistency reads
      • Replicated table-based routing for strong-consistency reads
      • Primary zone-based routing for strong-consistency reads
      • Strategy-based routing
      • Distributed transaction routing
      • Rerouting
      • Forcible routing
      • Weight-based load-balanced routing
      • Equality derivation for partition calculation
    • Automatic routing to the primary/standby tenants
    • Read/Write separation
    • Follower latency threshold
    • Function partition key routing
      • Overview
      • String functions
      • Numeric calculation functions
      • Date calculation functions
      • FAQ
    • Character set-based routing
    • Partitioning key types supported for routing by ODP
  • Logs
    • Overview
    • obproxy_diagnosis.log
    • obproxy_digest.log
    • obproxy_error.log
    • obproxy_slow.log
    • obproxy_stat.log
    • obproxy.log
  • Commands
    • Overview
    • Dedicated ODP commands
      • ALTER
      • KILL
        • KILL GLOBALSESSION
        • KILL PROXYSESSION
      • ping
      • SHOW
        • SHOW
        • SHOW GLOBALSESSION
        • SHOW PROXYPS
    • Compatible MySQL commands
      • BINLOG
      • KILL
      • SHOW PROCESSLIST
      • SHOW RELAYLOG EVENTS
      • SHOW SLAVE HOSTS
  • High availability mechanism
    • Overview
    • High availability of ODP services
    • High availability of OceanBase Database
    • High availability testing
  • OBKV
    • RPC service port
    • Throttling
  • Security and protocols
  • Operation and maintenance
    • Troubleshooting logic
    • Performance analysis
    • Show Trace
    • Routing diagnostics
      • Overview
      • Obtain diagnostic information
      • Diagnostic point troubleshooting
        • Overview
        • SQL_PARSE
        • ROUTE_INFO
        • LOCATION_CACHE_LOOKUP
        • ROUTINE_ENTRY_LOOKUP_DONE
        • FETCH_TABLE_RELATED_DATA
        • TABLE_ENTRY_LOOKUP_DONE
        • EXPR_PARSE
        • CALC_ROWID
        • RESOLVE_TOKEN
        • RESOLVE_EXPR
        • CALC_PARTITION_ID
        • PARTITION_ID_CALC_DONE
        • PARTITION_ENTRY_LOOKUP_DONE
        • ROUTE_POLICY
        • CONGESTION_CONTROL
        • RETRY
        • HANDLE_RESPONSE
      • Examples
    • Memory leak diagnostics
    • Connection diagnostics
    • Prometheus monitoring
    • SQL firewall
  • Release Notes
    • Version number rules
    • Enterprise Edition
      • V4.3
        • OceanBase Database Proxy Enterprise Edition V4.3.6
        • OceanBase Database Proxy Enterprise Edition V4.3.5
        • OceanBase Database Enterprise Edition V4.3.4
        • ODP Enterprise Edition V4.3.3
        • ODP Enterprise Edition V4.3.2
        • ODP Enterprise Edition V4.3.1
        • ODP Enterprise Edition V4.3.0
      • V4.2
        • ODP Enterprise Edition V4.2.3
        • ODP Enterprise Edition V4.2.2
        • ODP Enterprise Edition V4.2.1
      • V4.1
        • ODP Enterprise Edition V4.1.0
      • V4.0
        • ODP Enterprise Edition V4.0.0
      • V3.2
        • ODP Enterprise Edition V3.2.11
        • ODP Enterprise Edition V3.2.3.5
    • Community Edition
      • V4.3
        • OceanBase Database Proxy Community Edition V4.3.6
        • OceanBase Database Proxy Community Edition V4.3.5
        • OceanBase Database Proxy Community Edition V4.3.4
        • ODP Community Edition V4.3.3
        • ODP Community Edition V4.3.2
        • ODP Community Edition V4.3.1
      • V4.2
        • ODP Community Edition V4.2.3
        • ODP Community Edition V4.2.1
        • ODP Community Edition V4.2.0
      • V4.1
        • ODP Community Edition V4.1.0
      • V4.0
        • ODP Community Edition V4.0.0

Download PDF

Document Feedback
  1. Documentation Center
  2. OceanBase Database Proxy
  3. V4.4.0

OceanBase Database Proxy Community Edition V4.3.5

Last Updated:2026-09-04 08:23:04

V4.3.5
Version information
Version overview
Key features
Compatibility changes
Supported OceanBase Database versions
Bug fixes

V4.3.5

Version information

  • Release date: August 15, 2025

  • Version: V4.3.5

  • RPM version: obproxy-ce-4.3.5.0-3

Version overview

ODP 4.3.5 is the latest release in the ODP 4.3.x series, recommended for POC testing and production on-premises. It adds String-type routing, partition-key equality derivation, multi-statement transaction routing, month function routing, and related capabilities; supports a session connection pool to improve short-connection performance; refines error logging when connection limits are exceeded; optimizes single-partition table detection for the RPC proxy to improve OBKV routing; adds multiple show commands for internal objects; and improves monitoring and operability.

Key features

SQL proxy

Routing improvements
  • String-type routing

    OceanBase Database added the String type with key, range columns, and list columns partitioning. ODP V4.3.5 supports accurate routing for String partition keys.

  • Partition-key column equality derivation

    Previously, ODP only parsed explicit partition conditions such as C1 = xxx (C1 is the partition key) and could not derive equalities like C1 = C2 AND C2 = xxx, causing random routing. V4.3.5 derives column equalities so such statements obtain the correct partition key values and partitions.

  • Multi-statement transaction routing

    For multi-statement transactions started with BEGIN/START TRANSACTION (for example, begin; ...; ...; commit), routing follows the first SQL statement.

  • month function routing

    ODP V4.3.4 added routing when partition keys are function expressions. V4.3.5 adds accurate routing for the month function.

  • Improved routing when hint parsing fails

    Complex hints such as /*+index(db.lna_n_biz_lock_080 primary) */ could prevent ODP from obtaining routing information. V4.3.5 skips hints and continues parsing partition information for accurate routing.

Session connection pool

ODP performs well with long-lived connections but poorly with short connections, mainly because:

  • ODP and OBServer frequently open and close TCP connections.

  • Database and system variable synchronization when ODP switches OBServer routes.

V4.3.5 adds a session-level connection pool to reduce accept and related overhead and connection latency in short-connection scenarios.

Usability improvements

OceanBase can enforce maximum connections through multiple parameters and system variables; when limits are exceeded ODP previously logged only too many connections. V4.3.5 refines messages in obproxy_diagnosis.log and obproxy_error.log to identify which limit was hit.

RPC proxy

Internal object administration commands

RPC routing relies on many internal caches; stale or incorrect cache content can cause stability issues, while log-based inspection is slow and often unsuitable in production. V4.3.5 exposes common OBKV objects (rpcRequest, tabletGroup, globalIndex, QuerySync, TabletLS, Ctx, and more) through show commands.

Usability improvements

The Prometheus port adds RPC connection and net_entry statistics to improve RPC proxy monitoring.

Single-partition table detection

ODP used part_num = 1 to classify non-partitioned vs single-partition tables but could not distinguish them. After partition splits, new tables are often single-partition while ODP might treat them as non-partitioned. Non-partitioned and single-partition tables use different tablet_id values; in OBKV, missing tablet_id (non-partitioned defaults to 0) can cause OceanBase errors. V4.3.5 retries using OB_SCHEMA_ERROR feedback and re-routes as a single-partition table when a single-partition table was misclassified as non-partitioned.

Compatibility changes

Command changes

Command
Change type
Description
show proxyroute partition New Shows partition-related information; supports manual cleanup.
show proxyroute globalindex New Shows OBKV global index information in ODP; supports manual cleanup.
show proxyroute tablegroup New Shows multi-column-family request information; supports manual cleanup.
show proxyroute queryasync New Shows OBKV asynchronous query information in ODP; supports manual cleanup.
show proxyroute tabletls [tablet_to_ls_num] New Shows ls_id information (LSOp only for now); supports manual cleanup. tablet_to_ls_num limits rows returned.
show proxyroute rpcctx New Shows users logged in through the RPC port; cleanup not supported. Use to verify distributed capability for a user.
show proxysm rpc [sm_id] New Shows unreleased ObRpcRequestSM states; optional sm_id filters one SM. SMs are released after requests complete.

Note

Set rpc_enable_requestsm_info to True or the result is empty.

show proxyrpc thread New Shows per-thread request handling.
show proxyrpc requeststat [request_type] New Shows per-request states per thread; optional request_type filters one type.
show globalsession New Shows session pool statistics.
show globalsession attribute [all | '{db_key}'] New Shows detailed pooled session information for all tenants or one tenant.
kill globalsession 'dbkey' [ss_id] New Terminates pooled sessions.

Parameter changes

Parameter
Change type
Description
connection_pool_mode New Enables the connection pool; only session-level pooling is supported.
session_pool_idle_timeout New Maximum idle time a session may remain in the pool after being returned.
session_pool_reset_interval New Interval for sending COM_RESET_CONNECTION to sessions in the pool that have not been reset. After reset, ODP does not send COM_RESET_CONNECTION again to those sessions.
session_pool_stat_log_interval New Interval for session pool statistics logging.
rpc_enable_requestsm_info New Controls whether RPC request information is printed.

Supported OceanBase Database versions

OceanBase Database 4.x, 3.x, and earlier are supported:

  • For 3.x and earlier, use ODP 3.x.

  • For 4.x, use ODP V4.3.5.

Bug fixes

  • Fixed core when ODP hit out-of-memory handling OBServer responses and triggered connection cleanup.

  • Fixed error -4002 after drop/recreate of a same-name table with a different partition type.

  • Fixed memory leak in SQLMonitorInfo.

  • Fixed error 4723 on range-partitioned tables after partition structure changes.

  • Fixed long-lived downstream connections after an OBI instance was dropped.

  • Failed hot-upgrade scenarios.

  • Fixed routing to a new zone when switching designated zones if the tenant had no traffic and cache was stale.

  • Fixed new machines in a designated zone staying blocklisted after replacement when read-only endpoints used replica-based routing.

  • Fixed getOperationRow errors when LSOP built batch tableQuery, fetched all columns, and split across multiple LSOP requests.

  • Fixed go client TestPrimaryAndGlobalIndexNoPartition returning -4016 through ODP.

  • Fixed excessive OB_RPC_TABLE_IGNORE_FIELD memory use.

  • Fixed sub-partition requests not being cleaned when OBServer could not respond and ODP could not read results, blocking memory reclamation.

  • Fixed core when OBServer returned malformed responses in two-in-one write mode.

  • Fixed error -4103 when OceanBase 2.0 protocol was used, memory allocation failed, and parsing fell back to MySQL protocol incorrectly.

  • Fixed missing diagnosis logs when connection whitelist checks failed.

  • Fixed error -4002 after split when a non-partitioned table became partitioned and ODP misidentified the table type.

Previous topic

OceanBase Database Proxy Community Edition V4.3.6
Last

Next topic

OceanBase Database Proxy Community Edition V4.3.4
Next
on this page
V4.3.5
Version information
Version overview
Key features
Compatibility changes
Supported OceanBase Database versions
Bug fixes