测试Oracle 11g系统分区遇错

  测试11g的系统分区时碰到一个600错误。

  这个错误可以重现,只需要对物化视图日志建立系统分区就会造成这个错误:

  SQL> CREATE TABLE T (ID NUMBER PRIMARY KEY);

  表已创建。

  SQL> CREATE MATERIALIZED VIEW LOG ON T PARTITION BY SYSTEM PARTITIONS 4;

  CREATE MATERIALIZED VIEW LOG ON T PARTITION BY SYSTEM PARTITIONS 4

  *第 1 行出现错误:

  ORA-00600: 内部错误代码, 参数: [prssptoa2], [], [], [], [], [], [], []

  其实出错是意料之中的,因为系统分区表插入的时候必须明确指定分区,而物化视图日志的插入完全由Oracle控制,用户无法对其指定分区,所以这个操作被禁止也是正常的。

  不过,Oracle并没有返回一个预定义的错误号以及相应的错误描述,而是报错ORA-600错误。这个错误信息会误导用户。从这一点考虑,认为这个错误属于bug也不为过,最起码Oracle的测试不完善。

  目前在metalink和google上还找不到和这个bug相关的任何描述。