Oracle简单更新脚本会导致“ ORA-00600:内部错误代码,参数:[15851],[6],[6],[1],[2],[],[],[] ”

问题描述 投票:0回答:1

我有这个下面的查询,多年来一直成功运行。

UPDATE t_fleet_net_exposure ne
SET avlimit = (SELECT avlimit FROM V_GROUP_CRLIM WHERE ca_id = ne.ca_id)
WHERE ne.ca_id IN (SELECT ca_id FROM V_GROUP_CRLIM);

此查询在存储过程中,由Oracle作业每10分钟触发一次。但是最近这项工作失败了,我发现此更新查询导致错误并且无法正常工作。

这是在Toad上手动执行脚本后的错误:

ORA-00600:内部错误代码,参数:[15851],[6],[6],[1],[2],[],[],[]

我在Google上找不到任何适当的原因。人们说这是Oracle的内部例外,我必须向Oracle Corporation开放TAR。但我想知道是否有人遇到此错误,是否可以提出解决方案而无需将TAR引入Oracle。

这是我已经尝试过的步骤:

  1. 我创建了另一个表“ t_fleet_net_exposure2”,并填充了来自t_fleet_net_exposure的数据。我认为,也许表的数据已损坏。但是更新查询再次导致ORA-600。
  2. 我创建了另一个视图“ V_GROUP_CRLIM2”,并从查询中替换为“ V_GROUP_CRLIM”。也许视图本身有问题。但是更新查询再次以ORA-600结尾。
  3. 我创建了一个临时表“ TMP_V_GROUP_CRLIM”,并填充了V_GROUP_CRLIM的结果。创建的表和数据没有任何问题。因此,视图没有错。
  4. 我用更新查询中新创建的TMP_V_GROUP_CRLIM表替换了视图V_GROUP_CRLIM,然后更新查询工作正常。这是一个可以接受的解决方法,但是现在我每次需要执行更新查询时都必须截断并重新填充表。因此,我仍然需要一个适当的理由/行动来摆脱ORA-600错误。

我的Oracle服务器的版本:

Oracle数据库10g版本10.2.0.4.0-64位生产PL / SQL版本10.2.0.4.0-生产核心适用于64位Windows的10.2.0.4.0生产TNS:版本10.2.0.4.0-生产NLSRTL版本10.2.0.4.0-生产

提前感谢

sql oracle exception oracle10g
1个回答
0
投票

ORA-600本质上是一个错误,即程序崩溃了,因此我们保释了。

© www.soinside.com 2019 - 2024. All rights reserved.