Oracle ORA-07445 [evaopn3()+384] 错误分析
与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 修复情况。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'article discute de l'utilisation de l'instruction ALTER TABLE de MySQL pour modifier les tables, notamment en ajoutant / abandon les colonnes, en renommant des tables / colonnes et en modifiant les types de données de colonne.

L'article discute de la configuration du cryptage SSL / TLS pour MySQL, y compris la génération et la vérification de certificat. Le problème principal est d'utiliser les implications de sécurité des certificats auto-signés. [Compte de caractère: 159]

L'article traite des outils de GUI MySQL populaires comme MySQL Workbench et PhpMyAdmin, en comparant leurs fonctionnalités et leur pertinence pour les débutants et les utilisateurs avancés. [159 caractères]

L'article traite des stratégies pour gérer de grands ensembles de données dans MySQL, y compris le partitionnement, la rupture, l'indexation et l'optimisation des requêtes.

Les capacités de recherche en texte intégral d'InNODB sont très puissantes, ce qui peut considérablement améliorer l'efficacité de la requête de la base de données et la capacité de traiter de grandes quantités de données de texte. 1) INNODB implémente la recherche de texte intégral via l'indexation inversée, prenant en charge les requêtes de recherche de base et avancées. 2) Utilisez la correspondance et contre les mots clés pour rechercher, prendre en charge le mode booléen et la recherche de phrases. 3) Les méthodes d'optimisation incluent l'utilisation de la technologie de segmentation des mots, la reconstruction périodique des index et l'ajustement de la taille du cache pour améliorer les performances et la précision.

L'article discute de la suppression des tables dans MySQL en utilisant l'instruction TABLE DROP, mettant l'accent sur les précautions et les risques. Il souligne que l'action est irréversible sans sauvegardes, détaillant les méthodes de récupération et les risques potentiels de l'environnement de production.

L'article discute de l'utilisation de clés étrangères pour représenter les relations dans les bases de données, en se concentrant sur les meilleures pratiques, l'intégrité des données et les pièges communs à éviter.

L'article discute de la création d'index sur les colonnes JSON dans diverses bases de données comme PostgreSQL, MySQL et MongoDB pour améliorer les performances de la requête. Il explique la syntaxe et les avantages de l'indexation des chemins JSON spécifiques et répertorie les systèmes de base de données pris en charge.
