关于弱一致性读的问题

【 使用环境 】测试环境
【 OB or 其他组件 】
【 使用版本 】4.2.0.0
【问题描述】文档 OceanBase分布式数据库-海量数据 笔笔算数 关于弱一致性读的描述是请求优先发往从副本.

想问下这个场景:
租户 (z1;z2,z3), primary zone 是z1 ,所有主副本在zone1上

  1. 如果我直连zone1, 配置弱一致性读, 那么请求会强制路由到从副本上么? 还是就近执行
  2. 如果直接zone2 , 那么如果配置weak ,应该本地执行 ,配置strong 应该路由至zone1 主副本上执行

【复现路径】问题出现前后相关操作
【问题现象及影响】

【附件】

obproxy里 proxy_route_policy 参数设置为 follower_first 或者 follower_only 控制弱读请求的路由:

  • follower_first:弱读请求优先路由到备副本,如果备副本都不可用,弱读请求路由到主副本。
  • follower_only:弱读请求路由到备副本,如果备副本都不可用,断开和客户端的连接。
  1. 如果不使用obproxy, 它的表现是怎样的 (直连observer)
    2.另外如果配置proxy_route_policy, 生效的前提是不是租户ob_read_consistency配置为weak,或者sql加hint

弱读直连就是走本地了
弱读不是说优先发往FOLLOWER副本,相比强一致性读,主要区别是弱读可以选择的副本多了

是的,我测试也是这样的, 主要是文档描述有点歧义

WEAK 指弱一致性,不要求读取最新数据,请求优先路由给从副本

官方部署,都是obproxy作为接入层,并不是直连。