• ORA-07445 [evaopn3()+135] [SIGSEGV] [ADDR:0x4] [PC:0x96A535B] [Address not mapp ed to object]


    环境
    Linux: x86_64
    DB: Oracle 单机 11.2.0.4

    开发反映执行如下查询时报异常:无法从套接字获取更多数据。

    select count(0)
    from table_xxx
    where col1='123'
    and col2 in (select abc from test where test.a=table_xxx.a)
    and starttime>sysdate-10
    and starttime<sysdate;
    

    检查数据库日志,存在如下报错
    ORA-07445 [evaopn3()+135] [SIGSEGV] [ADDR:0x4] [PC:0x96A535B] [Address not mapp ed to object]

    在Mos ORA-7445 [evaopn3] (文档 ID 860969.1) 找了下该报错的原因,在11.2.0.4中可能有如下Bug导致该问题

    NB Prob Bug Fixed Description
    III 13973434 12.1.0.2, 12.2.0.1 ORA-7445 [evaopn3] from SYS_CONNECT_BY_PATH
    II 22611354 12.2.0.1 query with table, xmlsequence, extract, with fails with ORA-7445 [evaopn3()+135
    III 21602931 12.2.0.1 ORA-7445[evaopn3] / ORA-7445 [evaopn3rset] using "_fix_control" = '14008590:off' or optimizer_features_enable<=11.2.0.3 in 11.2.0.4 or 12.1
    I 20366844 12.2.0.1 ORA-07445 [evaopn3] Error on Query With Viirtual Column Based on Conversion Operators (TO_NUMBER(), TO_CHAR(), TO_DATE(), etc.)
    III 19583063 12.2.0.1 ORA-7445 [evaopn3] from sub-query coalescing
    III 19372080 12.2.0.1 ORA-7445 [evaopn3] from query with XMLTable evaluation
    IIII 19031341 11.2.0.4.BP16, 12.1.0.2.DBBP07, 12.2.0.1 Wrong results / ORA-7445 [evaopn3] / ORA-600 from query with windows function with PARTITION BY and functional index
    IIII 18621513 12.2.0.1 ORA-7445 [evaopn3()+125] running SELECT statement using REGEXP_REPLACE
    III 17780863 12.2.0.1 ORA-7445 [evaopn3] from query with index join and functional index
    II 17414008 12.1.0.2.160719, 12.2.0.1 Wrong results/ORA-7445 for functions returning object types
    IIII 16520547 12.1.0.2, 12.2.0.1 A query with a table expression, GROUP BY and WITH fails with ORA-7445 [evaopn3]
    IIII 14275161 11.2.0.4.BP16, 12.1.0.1 ORA-600 [rwoirw: check ret val] on CTAS with predicate move around
    III 14174467 12.1.0.1 ORA-600 / ORA-7445 from query on hash clustered table with FGA
    II 18453926 12.1.0.2, 12.2.0.1 ORA-7445 [evaopn3] with fix for bug 17935420 (affects CONNECT BY)
    I 13391200 12.1.0.1 Queries with ANSI join using lateral view may fail with ora-7445 [evaopn3] or ora-7445 [kkoppjt]

    经过测试发现只有在执行count(),且条件包含starttime列时才报错。
    检查建表语句该字段的所以显示为函数索引 FUNCTION-BASED NORMAL
    语句如下:

    CREATE INDEX IDX_XXX_STARTTIME ON TABLE_XXX(STARTTIME,STARTTIME DESC);
    

    很奇怪的建索引语句,删除重建后问题就解决了。
    DROP INDEX IDX_XXX_STARTTIME;
    CREATE INDEX IDX_XXX_STARTTIME ON TABLE_XXX(STARTTIME);
    这是一个特别的案例,平时很难遇到。但上述的可能的Bug触发方式倒是可以借鉴。

    学习如茶,需细细品味。
  • 相关阅读:
    Exchange 2013学习笔记七:邮箱导入导出
    Exchange 2013学习笔记六:邮件归档
    Exchange 2013学习笔记五:资源邮箱
    Exchange 2013学习笔记四:新建用户邮箱
    Exchange 2013学习笔记三:创建邮箱数据库
    Exchange 2013学习笔记二:邮箱访问
    Exchange 2013学习笔记一:Exchange Server 2013安装
    域学习笔记十五:在活动目录中清除彻底失败的域控制器信息
    域学习笔记十四:迁移操作主控
    域学习笔记十三:将域控制器迁移到新买的服务器
  • 原文地址:https://www.cnblogs.com/plluoye/p/15166148.html
Copyright © 2020-2023  润新知