Performance Diff between 12 and 19

From: Clay Jackson (cjackson) <"Clay>
Date: Thu, 12 Mar 2020 16:31:02 +0000
Message-ID: <MWHPR19MB01417C5282737C68C3297A329BFD0_at_MWHPR19MB0141.namprd19.prod.outlook.com>



Good day!

We're doing some testing of Oracle 19C for our products, and working with a customer who saw some significant differences with performance of sequences between Oracle 12.2.0 and 19.3.0. We've looked at plans (identical) and trace files (no differences other than expected 12 vs 19). Before we open an SR, I was wondering if anyone here has seen similar issues or can give us an idea of where to start debugging.

I know this is "suboptimal" in terms of caching and multiple commits - but, we're looking at "legacy code" that cannot be easily changed.

Here's simple test case that runs anywhere from 20% to 70% slower in similar (RHEL 7.3, X86) hardware. In fact, in one case, the 12c hardware had fewer cores (12 vs 32) and less ram (8G vs 32G) than the 19c environment.

create table test_tab1 (

   id number primary key,
   c1 varchar2(1000)
);

create table test_tab2 (

   id number,
   t1_id number,
   c2 varchar2(1000),
   constraint test_tab2_fk foreign key (t1_id) references test_tab1 (id) on delete cascade
);

create table test_tab1 (

   id number primary key,
   c1 varchar2(1000)
);

create table test_tab2 (

   id number,
   t1_id number,
   c2 varchar2(1000),
   constraint test_tab2_fk foreign key (t1_id) references test_tab1 (id) on delete cascade
);

Then run 10000 of these transactions in a loop: insert into test_tab1 values (test_seq1.nextval,'hello'); insert into test_tab2 values (test_seq2.nextval, test_seq1.currval, 'byebye'); commit;

Clay Jackson

--
http://www.freelists.org/webpage/oracle-l
Received on Thu Mar 12 2020 - 17:31:02 CET

Original text of this message