Skip to content

iotdb-client-go v2.0.3-1 InsertTablets InsertRecords 在 5 节点集群环境下返回 400 错误,但在单机版正常 #149

@khan-lau

Description

@khan-lau

问题描述 (Describe the bug)

  • 在使用 Go SDK 向 5 节点的 IoTDB 集群 调用 InsertTablets 接口时,程序持续返回 400 错误。同样的逻辑和数据在 单机版 (Single-Node) 运行完全正常。
  • 通过分析返回的 TSStatus 日志发现,虽然外层状态码是 400,但其 SubStatus 内部全部是 Code: 200 且带有 RedirectNode (重定向节点) 信息。这表明当批量数据跨越了集群中的多个数据分区(Data Partitions)时,SDK 无法正确处理这种重定向或聚合结果。

环境信息 (Environment)

  • IoTDB 版本: 1.3.5 (集群模式,5 节点)
  • Go SDK 版本: 最新版 (github.com/apache/iotdb-client-go)
  • 数据模式: Aligned Tablet / Dense 写入
  • 部署拓扑: 5 个节点 (xdb01 到 xdb05)
insert record error: IoTDB Status Detail: TSStatus({
    Code: 400, 
    Message: 0xc32654d720, 
    SubStatus: [
        TSStatus({Code: 200, Message: <nil>, SubStatus: [], RedirectNode: TEndPoint({IP: xdb05.prod.internal, Port: 6667}), NeedRetry: <nil>}),
        TSStatus({Code: 200, Message: <nil>, SubStatus: [], RedirectNode: TEndPoint({IP: xdb05.prod.internal, Port: 6667}), NeedRetry: <nil>}),
        ... (更多带有 RedirectNode 的 200 状态)
    ], 
    RedirectNode: <nil>, 
    NeedRetry: <nil>
})

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions