Rumah pangkalan data tutorial mysql Oracle ORA-07445 [evaopn3()+384] 错误分析

Oracle ORA-07445 [evaopn3()+384] 错误分析

Jun 07, 2016 pm 05:21 PM

与ORA-7445 相关的错误多与bug相关,一般我们需要关注第一个参数的类型,这里是evaopn3。查看trace,确定了某SQL在order by中使用

1.OS 和 DB 版本

Oracle Version: 11.2.0.2

Operation System:HP-UXItanium 11.31

2.Alert log中信息

Tue Oct 16 22:27:31 2012

Exception [type: SIGSEGV,Address not mapped to object] [ADDR:0xC00000000] [PC:0x400000000631B880,evaopn3()+384] [flags: 0x0, count: 1]

Errors in file/oracle/app/oracle/diag/rdbms/wzpartdb/wzpartdb/trace/wzpartdb_j004_19591.trc  (incident=56673):

ORA-07445: exceptionencountered: core dump [evaopn3()+384] [SIGSEGV] [ADDR:0xC00000000][PC:0x400000000631B880] [Address not mapped to object] []

Incident details in:/oracle/app/oracle/diag/rdbms/wzpartdb/wzpartdb/incident/incdir_56673/wzpartdb_j004_19591_i56673.trc

Use ADRCI or Support Workbench to packagethe incident.

See Note 411.1 at My Oracle Support forerror and packaging details.

Tue Oct 16 22:27:56 2012

Dumping diagnostic data indirectory=[cdmp_20121016222756], requested by (instance=1, osid=19591 (J004)),summary=[incident=56673].

Tue Oct 16 22:27:58 2012

Sweep [inc][56673]: completed

Sweep [inc2][56673]: completed

3.问题定位

与ORA-7445 相关的错误多与bug相关,一般我们需要关注第一个参数的类型,,这里是evaopn3。 MOS上专门的文章介绍这个,参考:

ORA-7445[evaopn3] (Doc ID 860969.1)

这里与我们的错误:

ORA-07445: exceptionencountered: core dump [evaopn3()+384] [SIGSEGV] [ADDR:0xC00000000][PC:0x400000000631B880] [Address not mapped to object] []

可能与encryptedcolumns, function-based index 和 Xquery 相关。 一些已知的可能的bug如下:

Bug 13369579 - dump on evaopn3 withfunction base index and ORDER BY (Doc ID 13369579.8)

Bug 12724375 - ORA-7445 [evaopn3] fromXQuery with GROUP BY (Doc ID 12724375.8)

Bug 12672969 - Assorted Dumps withaggregate expression in ORDER BY (Doc ID 12672969.8)

Bug 13817586 - Dump on evaopn3 withEncrypted Columns (Doc ID 13817586.8)

通过排除,我这里是bug:12672969。

Bug 12672969 - Assorted Dumps withaggregate expression in ORDER BY (Doc ID )

查看trace,确定了某SQL在order by中使用了aggregation function。执行该SQL时就会触发ORA-7445的错误。

可以通过如下方式验证:

create table test1 ( col1 number, col2number );

 insert into test1 values( 1, 1 );

 commit;

 select count(*)

 from(select col2

      from test1

      group by col2 order by (sum(col2)+1));

Rediscovery Notes:

 1.ORA-7445 in aggregation evaluation function including evaopn3

 2.Order by elimination is performed

 3. Set function exists in the middle of theoperator tree in order by

    clause

 4.The fix for bug 8772028 is present

4.解决方案

MOS 上解决方案是修改参数:

alter sessionset "_optimizer_order_by_elimination_enabled"=false;

但是这个是个隐含参数,修改可能会引起其他的问题,Oracle 争对这个bug 提供了Patch:12672969.

可以在应用Patch 之后,在执行触发bug的SQL,确认bug 修复情况。

linux

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Mar 19, 2025 pm 03:51 PM

Artikel ini membincangkan menggunakan pernyataan jadual Alter MySQL untuk mengubah suai jadual, termasuk menambah/menjatuhkan lajur, menamakan semula jadual/lajur, dan menukar jenis data lajur.

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Mar 18, 2025 pm 12:01 PM

Artikel membincangkan mengkonfigurasi penyulitan SSL/TLS untuk MySQL, termasuk penjanaan sijil dan pengesahan. Isu utama menggunakan implikasi keselamatan sijil yang ditandatangani sendiri. [Kira-kira aksara: 159]

Bagaimana anda mengendalikan dataset besar di MySQL? Bagaimana anda mengendalikan dataset besar di MySQL? Mar 21, 2025 pm 12:15 PM

Artikel membincangkan strategi untuk mengendalikan dataset besar di MySQL, termasuk pembahagian, sharding, pengindeksan, dan pengoptimuman pertanyaan.

Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)? Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)? Mar 21, 2025 pm 06:28 PM

Artikel membincangkan alat MySQL GUI yang popular seperti MySQL Workbench dan PHPMyAdmin, membandingkan ciri dan kesesuaian mereka untuk pemula dan pengguna maju. [159 aksara]

Bagaimana anda menjatuhkan jadual di MySQL menggunakan pernyataan jadual drop? Bagaimana anda menjatuhkan jadual di MySQL menggunakan pernyataan jadual drop? Mar 19, 2025 pm 03:52 PM

Artikel ini membincangkan jadual menjatuhkan di MySQL menggunakan pernyataan Jadual Drop, menekankan langkah berjaga -jaga dan risiko. Ia menyoroti bahawa tindakan itu tidak dapat dipulihkan tanpa sandaran, memperincikan kaedah pemulihan dan bahaya persekitaran pengeluaran yang berpotensi.

Bagaimana anda mewakili hubungan menggunakan kunci asing? Bagaimana anda mewakili hubungan menggunakan kunci asing? Mar 19, 2025 pm 03:48 PM

Artikel membincangkan menggunakan kunci asing untuk mewakili hubungan dalam pangkalan data, memberi tumpuan kepada amalan terbaik, integriti data, dan perangkap umum untuk dielakkan.

Bagaimana anda membuat indeks pada lajur JSON? Bagaimana anda membuat indeks pada lajur JSON? Mar 21, 2025 pm 12:13 PM

Artikel ini membincangkan membuat indeks pada lajur JSON dalam pelbagai pangkalan data seperti PostgreSQL, MySQL, dan MongoDB untuk meningkatkan prestasi pertanyaan. Ia menerangkan sintaks dan faedah mengindeks laluan JSON tertentu, dan menyenaraikan sistem pangkalan data yang disokong.

Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)? Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)? Mar 18, 2025 pm 12:00 PM

Artikel membincangkan mendapatkan MySQL terhadap suntikan SQL dan serangan kekerasan menggunakan pernyataan yang disediakan, pengesahan input, dan dasar kata laluan yang kuat. (159 aksara)

See all articles