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.3.6
  • 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_handler_expire_time
      • rpc_server_net_invalid_time_us
      • 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.3.6

OceanBase Database Proxy Community Edition V4.3.4

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

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

V4.3.4

Version information

  • Release date: April 25, 2025

  • Version: V4.3.4

  • RPM version: obproxy-ce-4.3.4.0-1

Version overview

ODP V4.3.4 is the latest version in the ODP 4.3.x series. It is recommended for use in POC testing and production environments for both cloud and on-premises businesses. This version enhances SQL proxy capabilities by supporting routing based on Asian character sets and collations, partitioning by function, and optimizing routing strategies for replication tables and requests exceeding 4K. It also improves routing performance by reducing remote routing and unifying global protocol parameters between ODP and OceanBase Database. For RPC proxy, it supports accurate routing for single-partition tables and atomic partition information retrieval, enhances routing capabilities, and improves congestion handling processes. It also asynchronously retrieves ODP ls_id information to further enhance system stability.

Key features

SQL proxy

Enhanced routing capabilities
  • Support for Asian character sets and collations

    ODP V4.3.4 fully supports Asian character sets, including ujis, euckr, cp932, and eucjpms, along with their corresponding collations.

  • Optimized routing for JOIN operations involving replication tables

    In previous versions, ODP randomly routed requests to any OBServer node when a replication table was the first table in a JOIN operation. This could lead to remote routing, affecting performance. ODP V4.3.4 optimizes this by using the JOINed table for routing instead of random routing when the first table is a replication table.

  • Support for function-based partitioning

    Previously, ODP failed to accurately route requests when using function expressions as partition keys. ODP V4.3.4 addresses this by parsing and converting function-based partition keys, ensuring accurate partition calculations.

  • Enhanced routing for requests exceeding 4K

    In earlier versions, ODP used a request_buffer_length of 4KB, leading to random routing for requests exceeding 4KB that had not yet been parsed. This could result in remote routing and significant performance impact. ODP V4.3.4 increases the default request_buffer_length to 8KB to ensure accurate routing for larger requests.

Improved protocol configuration usability

ODP V4.3.4 introduces the global parameter server_protocol to explicitly define the protocol type between ODP and OceanBase Database. This replaces the previous reliance on enable_ob_protocol_v2 and enable_compression_protocol, which were no longer sufficient after ODP V4.3.1 introduced performance optimizations for standalone mode. The new server_protocol parameter simplifies protocol configuration and improves usability during troubleshooting.

RPC proxy

Enhanced routing capabilities
  • Accurate routing for single-partition tables

    Previously, ODP could not accurately determine whether a table was partitioned or not, leading to routing errors in single-partition table scenarios. ODP V4.3.4 optimizes this by retrying routing based on error feedback from OBServer nodes, ensuring accurate routing for single-partition tables.

  • Atomic partition information retrieval

    Previously, ODP retrieved table information through multiple internal requests, which lacked atomicity and could lead to inconsistent table information. This could cause partition calculation failures. ODP V4.3.4 addresses this by adding real-time validation and retries for table information retrieval, ensuring accurate routing.

Enhanced congestion handling processes

ODP V4.3.4 supports asynchronous processing of RPC requests, isolating the request state machine from OBServer node network changes. This ensures that congestion handling processes are independent of OBServer node status changes. For OBKV requests, which strictly depend on calculated partition and routing information, ODP V4.3.4 ensures that requests are never forwarded to abnormal OBServer nodes, even in congestion scenarios.

Asynchronous retrieval of ODP ls_id information

Starting from ODP V4.3.1, retrieving ls_id information became synchronous and dependent on tablet_id retrieval, complicating SQL processing and increasing pressure on the sys tenant of OceanBase clusters. ODP V4.3.4 addresses this by asynchronously retrieving tablet_id information for LSOP requests, simplifying the overall process.

Compatibility changes

Parameter
Change type
Description
server_protocol New Specifies the protocol type between ODP and OceanBase Database.
rpc_client_net_read_timeout New Specifies the RPC client network read timeout threshold.
rpc_client_net_write_timeout New Specifies the RPC client network write timeout threshold.
request_buffer_length Changed The default value is updated from 4KB to 8KB. Additionally, when the request size exceeds the configured threshold, ODP directly uses tunnel streaming to forward client requests.
tunnel_request_size_threshold Deprecated This parameter is deprecated starting from V4.3.4. Its functionality is replaced by request_buffer_length.

Supported OceanBase Database versions

ODP V4.3.4 is compatible with OceanBase Database 4.x, 3.x, and earlier versions. The recommended ODP version depends on the OceanBase Database version in use:

  • For OceanBase Database 3.x and earlier, we recommend using ODP V3.2.11.

  • For OceanBase Database 4.x, we recommend using ODP V4.3.4.

Bug fixes

  • Fixed the issue where ODP fails to connect to a read-only endpoint on AWS.

  • Fixed the issue where ODP fails to parse SQL statements following '--' when '--' is used in comments and followed by a line break.

  • Fixed the issue where DBMS_LOB.READ times out and returns the business error write clob error.

  • Fixed the issue where ODP fails to start in IPv6 mode on ARM-based systems.

  • Fixed the issue where, in the case of a partitioned table with a missing partition key and a default partition, SQL requests are not randomly distributed as expected.

  • Fixed the issue where, when using ODP to connect to a cluster for direct load, a 4016 error is returned if the parameters are incorrectly specified.

  • Fixed the issue where, when a user variable contains the keyword value, the PS routing is inaccurate.

  • Fixed the issue where, in a transaction, requests larger than 4 KB fail to reconnect after parsing and retrying.

  • Fixed the issue where, when OceanBase Database 2.0 and compression protocols are disabled, no results are returned under the PS protocol.

  • Fixed the issue where, in the sys tenant, the kill query sessionid statement cannot terminate an SQL statement executed in a business tenant.

  • Fixed the issue where, when the WHERE clause contains the join keyword in a string value, the partition information is incorrectly parsed, leading to inaccurate routing.

  • Fixed the issue where, when inserting data into a single-partition table using an RPC proxy, a 4016 error is returned.

  • Fixed the issue where, in a manual partition split scenario, ODP returns the error -5627.

  • Fixed the issue where, during the initial phase of batch insert stress testing, a large number of routed to the wrong server errors are returned.

  • Fixed the issue where, after a node is restarted, the client is disconnected and an error is returned.

  • Fixed the issue where, when the ycsb tool executes the batch checkAndInsUp operation, the error unknown errcode: -10652 is returned.

  • Fixed the issue where, when querying using a global index, the error OB_ERR_KV_GLOBAL_INDEX_ROUTE is returned.

  • Fixed the issue where, after migration, a global index in ODP returns the error -5150, causing the client to continuously reconnect and return errors.

Previous topic

OceanBase Database Proxy Community Edition V4.3.5
Last

Next topic

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