成功进行Oracle节点故障转移后临时lobs的行为

时间:2016-11-18 06:54:02

标签: c oracle oci

当我尝试使用在Oracle节点故障转移之前创建的临时lob创建数据时,我的应用程序会收到以下错误。

ORA-22922: nonexistent LOB value

请考虑在故障转移之前创建的所有其他游标按预期工作,但不是使用上述临时lob进行的blob写入。 故障转移已成功完成。

应用程序使用以下函数创建了临时lob,并使用OCIBindByPos绑定到数据库。

OCIDescriptorAlloc
OCILobCreateTemporary

1 个答案:

答案 0 :(得分:3)

临时LOB的默认生命周期是会话。临时LOB存储在临时表空间中,使用临时段的事务不会进行故障转移。

  

ORA-22922"不存在LOB值"

     

原因:与输入定位器关联的LOB值不存在。     定位器中的信息不是指现有的LOB。

     

操作:通过发出select语句重新填充定位器并重试该操作。