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.4
  • 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
      • 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_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_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_ob_protocol_v2_with_client
      • 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_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
      • 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_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
      • routing_cache_mem_limited
      • rpc_async_task_thread_num
      • rpc_client_net_read_timeout
      • rpc_enable_direct_expire_route_entry
      • rpc_enable_congestion
      • rpc_enable_force_srv_black_list
      • rpc_enable_global_index
      • rpc_enable_parallel_handler
      • rpc_enable_reroute
      • rpc_enable_retry_request_info_log
      • rpc_force_srv_black_list
      • rpc_max_response_batch_size
      • rpc_listen_port
      • rpc_max_request_batch_size
      • rpc_max_server_table_entry_num
      • rpc_net_timeout_base
      • rpc_redis_operation_timeout
      • rpc_redis_default_user_name
      • rpc_request_timeout
      • rpc_redis_default_database_name
      • rpc_period_task_interval
      • rpc_request_timeout_delta
      • rpc_server_entry_expire_time
      • rpc_server_net_invalid_time_us
      • rpc_server_net_handler_expire_time
      • rpc_service_mode
      • rpc_server_net_max_pending_request
      • rpc_srv_session_pool_inactive_timeout
      • rpc_sub_request_isolation_mode
      • rpc_support_key_partition_shard_request
      • rpc_sub_request_weight
      • 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
      • 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
      • 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
      • 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
  • 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
    • 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
      • ping
      • SHOW
        • SHOW
        • 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
    • Versioning rules
    • Enterprise Edition
      • V4.3
        • ODP 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
        • ODP Enterprise 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.4

ODP Enterprise Edition V4.3.0

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

V4.3.0 BP1 hotfix1
Version information
Bug fixes
V4.3.0 BP1
Version information
Overview
V4.3.0
Version information
Overview
Key features
Compatibility changes
Supported OceanBase Database versions
Bug fixes

V4.3.0 BP1 hotfix1

Version information

  • Release date: May 24, 2024

  • Version: V4.3.0 BP1 hotfix1

  • RPM version: obproxy-4.3.0.0-662024052217

Bug fixes

  • Fixed the issue where data fails to be imported by using obloader V4.3 in direct load mode.

  • Fixed the issue where verification fails because an invalid session ID is returned after the Java client initiates an asynchronous query.

  • Fixed the issue where no error code is returned after a cross-partition request times out.

  • Fixed the suspected memory leak issue of the OB_CONCURRENCY_OBJ_POOL module in ObTableLSOpRequest disaster recovery scenarios.

  • Fixed the memory leak issue of the OB_SE_ARRAY module in ObTableLSOpRequest disaster recovery scenarios.

V4.3.0 BP1

Version information

  • Release date: May 09, 2024

  • Version: V4.3.0 BP1

  • RPM version: obproxy-4.3.0.0-552024051315

Overview

  • The action to take after an OceanBase Database Proxy (ODP) memory overrun occurs is changed.

  • Prometheus monitoring for ODP is improved.

V4.3.0

Version information

  • Release date: April 08, 2024

  • Version: V4.3.0

  • RPM version: obproxy-4.3.0.0-252024040811

Overview

ODP V4.3.0 is a milestone version in the ODP V4.x series. In addition to the original SQL proxy service, ODP V4.3.0 further supports the OBProxy-OBKV (RPC) proxy service. With these two proxy services integrated, ODP V4.3.0 supports both SQL and RPC capabilities.

  • The SQL proxy supports routing for tables where SERIAL columns are used as partitioning keys, forwarding the server_id and server_uuid system variables to the binlog service node, compatibility with MySQL communication protocol command words, and other features to further improve MySQL compatibility. Moreover, multi-level parameters and compression protocol implementation are optimized to enhance product stability.

  • The RPC proxy supports the ObTableLSOpRequest request type to improve the processing efficiency in batch mode. It also supports asynchronous query requests to optimize the streaming processing capability for large data sets.

Key features

Integration of SQL and RPC proxy services

OceanBase Database provides the OBKV module for users to access Table and HBase APIs in a simple and efficient way. To support OBKV, ODP provides an RPC service port, on the basis of the existing SQL proxy service, to provide proxy services for RPC requests. Specifically, ODP receives, processes, routes, and forwards RPC requests, and supports allowlist-based access and control on the number of concurrent connections. It also supports direct load through OBKV extension requests.

When ODP is started, both SQL and RPC service ports are enabled by default to provide services. The default SQL service port is 2883, and the default RPC service port is 2885. You can use -s or --rpc_listen_port to customize the RPC service port.

Multi-level configuration optimization

ODP provides an approach for multi-level configuration management. In addition to global parameters, ODP also provides parameters at three levels: cluster, tenant, and access address. Parameter settings at different levels separately take effect, thereby achieving configuration customization and isolation for different users without interfering with each other. Moreover, ODP supports parameter O&M operations, such as viewing and modifying parameters, to make parameter management easier.

ODP V4.3.0 optimizes configuration usage, memory, and performance to improve the user experience.

Support for asynchronous query requests

In earlier versions, ODP supports ObTableQueryAsync requests within a single partition, and blocks cross-partition asynchronous queries. However, all query requests of go-client are implemented based on asynchronous queries. ODP V4.3.0 now supports cross-partition asynchronous query requests. The new feature allows go-client to connect to ODP to process query requests.

Support for ObTableLSOpRequest requests

In OceanBase Database V4.2.1 BP4 and later, OBKV supports ObTableLSOpRequest, a new message format. ObTableLSOpRequest requests enable efficient operations and save resources as follows:

  1. Log stream-level operation aggregation is implemented. OceanBase Database V4.x adopts an architecture where log streams are used to organize multiple replicas. The log stream-based granularity can achieve greater operation aggregation and save transaction overhead. One ObTableLSOpRequest request can enable the execution of only one transaction.

  2. Fewer message types are required. Currently, all operations supported by OBKV can be passed through ObTableLSOpRequest requests. This facilitates batch operations, such as checkAndInsUp batch operations.

  3. RPC transmission overhead is reduced for messages. This is implemented based on dictionary encoding of column names and format optimization of client objects.

The existing queryAndMute request type cannot fully meet this requirement. Therefore, ODP V4.3.0 provides a new single-operation format and a corresponding batch-operation format to carry the semantics of checkAndInsUp and support ObTableLSOpRequest requests.

Compatibility changes

Product behavioral changes

The startup option -s (--rpc_listen_port) is added, which is used to specify the RPC service port. If it is not specified, the RPC service listens on port 2885 by default.

Note

If the RPC service port is unavailable, ODP startup as a whole is blocked.

O&M command changes

  • The show proxyconfig command supports the range field that specifies the value range of a parameter, and the config_level field that specifies the minimum effective level supported by a parameter.

  • The show proxyconfig all command is provided for you to view the values of multi-level parameters in memory.

Parameter changes

Parameter
Change type
Description
enable_obproxy_rpc_service New Specifies whether to enable the RPC service port.
rpc_listen_port New Specifies the RPC service listening port.
rpc_support_key_partition_shard_request New Specifies whether to send an RPC request that involves cross-partition queries to all partitions when the target table is a KEY-partitioned table.
rpc_srv_session_pool_inactive_timeout New Specifies the inactive timeout period for the server connection in the synchronization module.
rpc_enable_force_srv_black_list New Specifies whether to enable the blocklist for forced login authentication.
rpc_force_srv_black_list New Specifies the blocklist for forced login authentication.
rpc_enable_direct_expire_route_entry New Specifies whether to clean up expired routing information by force and not to use dirty data for asynchronous refresh.
rpc_enable_reroute New Specifies whether to enable RPC rerouting.
rpc_enable_congestion New Specifies whether to enable OBServer node blocklist processing for RPC requests.
rpc_enable_parallel_handler New Specifies whether to enable the asynchronous execution framework.
rpc_max_server_table_entry_num New Specifies the maximum number of connections in the backend connection pool of the RPC processing module.
rpc_max_request_batch_size New Specifies the maximum number of requests allowed in a single batch.
rpc_request_timeout New Specifies the default timeout period for sending a request, in us. The default value is 5s.
rpc_net_timeout_base New Specifies the benchmark sending rate, that is, the time (in ms) required for sending 1 byte of data. The default value is 5, which means 1 byte/5 ms. The minimum bandwidth is 200 Bps. If the parameter is set to a value lower than 200 Bps, the backend connection is abnormal and ODP removes the connection from the connection pool.
rpc_server_net_invalid_time_us New Specifies the interval (in us) for sending pending requests in the backend connection. The default value is 10s.
rpc_server_net_max_pending_request New Specifies the number of requests to be sent in the backend connection. When the number of requests reaches the specified value within rpc_server_net_invalid_time_us, ODP considers the backend connection invalid and removes the connection from the connection pool.
rpc_enable_global_index New Specifies whether to enable the support by RPC requests for global index routing.
rpc_enable_retry_request_info_log New Specifies whether to print RPC request retry information.
rpc_request_timeout_delta New Specifies the delta value of the timeout period for processing a request within ODP. The default value is 10ms.
rpc_period_task_interval New Specifies the interval for ODP to execute periodic RPC processing tasks. RPC processing tasks mainly clean up requests in an invalid state in the frontend and backend.
rpc_server_net_handler_expire_time New Specifies the timeout period for the backend connection to process a request. If no response is received within the specified period of time after a request is sent, ODP considers the connection abnormal and removes the connection from the connection pool.
rpc_server_entry_expire_time New Specifies the idle timeout period for the backend connection pool. If there is no backend connection within the specified period of time, the backend connection pool automatically exits.

Supported OceanBase Database versions

ODP supports OceanBase Database V4.x and OceanBase Database V3.x and earlier. The recommended ODP version varies based on the OceanBase Database version.

  • For OceanBase Database V3.x and earlier, ODP V3.2.11 is recommended.

  • For OceanBase Database V4.x:

    • If new features are required, ODP V4.3.0 is recommended.

    • If new features are not required, ODP V4.2.1, which is a Long-Term Support (LTS) version, is recommended.

Bug fixes

  • Fixed the issue of ObLatch locking failures.

  • Fixed the issue where the login fails because configurations cannot be normally written due to concurrent parameter update and proxyro password update.

Previous topic

ODP Enterprise Edition V4.3.1
Last

Next topic

ODP Enterprise Edition V4.2.3
Next
on this page
V4.3.0 BP1 hotfix1
Version information
Bug fixes
V4.3.0 BP1
Version information
Overview
V4.3.0
Version information
Overview
Key features
Compatibility changes
Supported OceanBase Database versions
Bug fixes