Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

ORA-7445 Error when using "returning" clause jointly DML error logging

viroozNov 8 2017 — edited Feb 16 2018

Hi, i have an old bug here that probably still does not fixed.

You can easily reproduce it (for me it works on 11.2.0.4.0 and 12.1.0.2.0):

create or replace TYPE "ARRAYOFNUMBERS" as table of number(20)

/

create table test_dmlerr(col1 number(20))

/

begin

  DBMS_ERRLOG.CREATE_ERROR_LOG(

   dml_table_name     => 'TEST_DMLERR',

   err_log_table_name => 'DMLLOG_TEST_DMLERR',

   skip_unsupported   => true);

end;

/

declare

  arr arrayofnumbers;

  str varchar2(32) := 'some err tag';

begin

  delete test_dmlerr p

   returning p.col1 bulk collect into arr

   log errors into dmllog_test_dmlerr(str) reject limit unlimited;

end;

/

the result is closed database connection and this:

ORA-07445: обнаружено прерывание: core dump [PC:0x0] [SIGSEGV] [ADDR:0x0] [PC:0x0] [Address not mapped to object] []

three conditions must be met simultaneously:

  • returning ... bulk collect into clause
  • dml error logging
  • dml error logging error_tag should be a variable (not a constant) - the variable str in my example

Can anyone reproduce this within last patches? Is that problem still actual?

This post has been answered by AndrewSayer on Nov 8 2017
Jump to Answer

Comments

Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Dec 6 2017
Added on Nov 8 2017
4 comments
140 views