getSlave()

    语法

    rg.getSlave([positions])

    类别

    Replica Group

    获取当前分区组的备节点。

    参数

    • 节点位置。目前,节点位置定义为该节点在 catalog 元数据的 “Group” 数组中的位置。其起始值为1,范围为[1,7]。最多只能输入7个不重复的、有效节点位置。若指定的节点位置大于分区组的节点数,这些节点位置将按照公式 (position - 1) % nodeCount + 1 进行转换。

    返回值

    成功:返回 SdbNode 对象。

    失败:抛出异常。

    1. 当分区组只有一个节点,不管是否指定节点位置,直接返回唯一的节点对象,即使该节点为主节点。
    2. 当分区组有多个节点,在指定节点位置的情况下,若节点位置包含备节点,则随机返回包含的备节点;若节点位置只包含主节点,则返回主节点。

    getSlave()函数常见异常如下:

    当异常抛出时,可以通过getLastError()获取, 或通过getLastErrMsg()获取错误信息。 可以参考了解更多内容。

    版本

    • v2.10加入节点位置参数,用于获取指定位置的备节点。
    • v1.0 添加此接口。

    示例

    1. 获取 group1 分区组的备节点。

    2. 其中,节点为:
      hostname1:40000(备节点,节点位置为1);
      hostname1:41000(主节点,节点位置为2);
      hostname1:42000(备节点,节点位置为3);
      从 group1 分区组中,随机获取位置1和位置2节点中的备节点: