在 pentaho spoon 中保存转换时出错

Error while saving transformation in pentaho spoon

我在 pentaho spoon 中保存 t运行sformation 时出现以下错误:

Error saving transformation to repository!

Error updating batch
Cannot insert duplicate key row in object 'dbo.R_STEP_ATTRIBUTE' with unique index 'IDX_RSAT'. The duplicate key value is (2314, PARTITIONING_SCHEMA, 0).

在我 运行 创建多个 excel 文件的作业之前一切正常。虽然这项工作 运行 突然发生内存问题,工作被中止。之后我尝试保存我的文件但它被删除以保存但没有被保存。所以我失去了我创造的工作。

请帮我看看是什么原因。

目录的最后一次保存没有正常结束

有小几率修复.kettle目录下的db-caches文件即可修复

如果不行,新建一个仓库,把当前的复制到新的。尝试全局存储库 export/import。然后擦除旧的代表并从刚刚重建的存储库中执行相同的操作。

中间存储库可能在文件上而不是在数据库上。

如果您是第一次这样做,请计划 one-two 小时。

有一种简单的方法可以恢复它。

正如 AlainD 所说,问题发生在您保存或删除转换时,突然失去连接或 Kettle 出现问题。

当出现这种情况时,你会发现很多步骤记录进入了tableR_STEP_ATTRIBUTE。在显示的错误中是 [ID_TRANSFORMATION] = 2314.

因此,如果您使用 [ID_TRANSFORMATION] = 2314 检查 table R_TRANSFORMATION,可能找不到任何具有该 ID 的转换。

勾选后,可以删除所有与[ID_TRANSFORMATION]相关的记录,例如:

delete from R_STEP_ATTRIBUTE where ID_TRANSFORMATION=2314

我们刚刚通过执行以下 SQL 语句解决了这个问题

DELETE 
FROM R_STEP_ATTRIBUTE
WHERE ID_STEP NOT IN (SELECT ID_STEP FROM R_STEP)