Hi All,

Oracle9i Enterprise Edition Release - Production
PL/SQL Release - Production
CORE Production
TNS for 32-bit Windows: Version - Production
NLSRTL Version - Production

I am seeing a strange error...Please look into below example..

SQL> ed
Wrote file afiedt.buf

  1  create or replace trigger Testing_Internal_Error after ALTER on schema
  2  begin
  3  insert into scott.test(created_by) values('hell');
  4  --commit;
  5  --dbms_output.put_line('Hello Abhay');
  6  --RAISE_APPLICATION_ERROR(-20115, 'Abhay u r screwing DB');
  7* end;
SQL> /

Trigger created.

SQL> alter table test modify created_by varchar(20);
alter table test modify created_by varchar(20)
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-06550: line 2, column 19:
PL/SQL: ORA-00600: internal error code, arguments: [12830], [SCOTT], [TEST], [], [], [], [], []
ORA-06550: line 2, column 1:
PL/SQL: SQL Statement ignored

SQL> alter trigger Testing_Internal_Error disable;

Trigger altered.

SQL> alter table test modify created_by varchar(20);

Table altered.
I have a trigger which monitors any ALTER commands issued on any object in particular schema & inserts record in reference table.

The above example is dummy example to reproduce the error.
what i see is that if we altered the table defination which is used in trigger to insert a record...it throws Internal error...

Rather it could have thrown some meaningful error.

Please if any body could explain this..