You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

更新Phonograph行触发ReadOnlyTables错误,请求排查解决

Phonograph更新触发Phonograph2:ReadOnlyTables错误的排查与解决

问题场景

尝试更新Phonograph中的行时触发如下错误:

q_update_phonograph threw the following error: {
  "errorCode": "INVALID_ARGUMENT",
  "errorName": "Phonograph2:ReadOnlyTables",
  "errorInstanceId": "instanceId",
  "parameters": {
    "tableRids": "[phonograph rid]",
    "dataInputLocatorRids": "[foundry dataset rid]"
  }
}

提交给Table Storage Service Post Event的参数如下:

{
  "extractors": {
    "result": "$"
  },
  "headers": {},
  "method": "POST",
  "path": "storage/edits/tables/{tableRid}/events",
  "pathParams": {
    "tableRid": "phonograph rid"
  },
  "queryParams": {},
  "bodyJson": {
    "primaryKey": {
      "uniq_field": "uniq_fieldValue"
    },
    "payload": {
      "type": "rowModified",
      "rowModified": {
        "columns": {
          "Comments": "Test Data"
        }
      }
    }
  }
}

错误原因

Phonograph2:ReadOnlyTables错误直接说明目标Phonograph表处于只读状态,常见触发原因包括:

  • 该表是从Foundry数据集同步生成的(对应错误参数里的dataInputLocatorRids),这类同步表默认继承源数据集的只读属性,无法直接通过API修改。
  • 当前操作账号仅拥有该表的只读权限,没有写入/修改权限。
  • 表被设置为静态快照模式,禁止实时编辑。

解决步骤

  1. 开启表的可编辑模式
    如果表是同步Foundry数据集生成的,进入Phonograph表详情页,点击右上角设置,找到编辑权限相关配置,勾选允许手动或API编辑。开启后可能需要重新同步源数据集以应用配置。

  2. 检查账号权限
    确认执行API请求的账号拥有该表的WRITE或EDIT权限。通过Foundry权限管理页面查看账号的表权限配置,权限不足时联系管理员添加对应权限。

  3. 切换表的存储模式
    检查表是否为静态快照模式,如果是,在表设置中把存储模式修改为动态可编辑模式。

  4. 验证源数据集状态
    如果依赖的Foundry数据集本身是只读的(比如由上游流水线生成且未开放写入),即使Phonograph表开启编辑也无法修改。这种情况要么确认源数据集是否允许写入,要么直接创建一个独立的可编辑Phonograph表,而非同步只读的源数据集。

内容的提问来源于stack exchange,提问作者Asher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 19:45:02