成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

子查詢引起的oracle數(shù)據(jù)庫bug分析

IT那活兒 / 3130人閱讀
子查詢引起的oracle數(shù)據(jù)庫bug分析
[
環(huán)境配置
]


操作系統(tǒng):linux7 ,數(shù)據(jù)庫為12.1.0.1.3單機,未應(yīng)用任何補丁。


[
報錯現(xiàn)象
]

現(xiàn)象描述:

使用plsql連接數(shù)據(jù)庫執(zhí)行語句(語句見下圖),并點擊獲取最后一頁后拋出如下截圖報錯,客戶端連接被中斷。

執(zhí)行的語句信息如下,查詢語句含多個子查詢:


[
報錯分析
]


看到上述報錯的第一反應(yīng)是在alert日志中搜索ora-03113和ora-03114關(guān)鍵字,但并未搜索到。于是查看是否有其它ora-類報錯拋出,發(fā)現(xiàn)有ora-07445類報錯如下:

Fri Nov 06 11:10:06 2020

Exception [type: SIGSEGV, Invalid permissions for mapped object] [ADDR:0x7FF39EC1C7FB] [PC:0x5A9A990, __intel_ssse3_rep_memcpy()+8784] [flags: 0x0, count: 1]

Errors in file /home/oracle/app/oracle/diag/rdbms/ems/ems/trace/ems_ora_48178.trc  (incident=112759):

ORA-07445: exception encountered: core dump [__intel_ssse3_rep_memcpy()+8784] [SIGSEGV] [ADDR:0x7FF39EC1C7FB] [PC:0x5A9A990] [Invalid permissions for mapped object] []

Use ADRCI or Support Workbench to package the incident.

See Note 411.1 at My Oracle Support for error and packaging details.

Fri Nov 06 11:10:07 2020

Sweep [inc][112759]: completed

Fri Nov 06 11:12:11 2020

Exception [type: SIGSEGV, Invalid permissions for mapped object] [ADDR:0x7FE493E637FB] [PC:0x5A9A990, __intel_ssse3_rep_memcpy()+8784] [flags: 0x0, count: 1]

Errors in file /home/oracle/app/oracle/diag/rdbms/ems/ems/trace/ems_ora_50919.trc  (incident=112786):

ORA-07445: exception encountered: core dump [__intel_ssse3_rep_memcpy()+8784] [SIGSEGV] [ADDR:0x7FE493E637FB] [PC:0x5A9A990] [Invalid permissions for mapped object] []

Use ADRCI or Support Workbench to package the incident.

See Note 411.1 at My Oracle Support for error and packaging details.

Fri Nov 06 11:12:14 2020

Sweep [inc][112786]: completed

進一步分析trc并查詢mos發(fā)現(xiàn)堆棧信息符合Bug20916723 - Dump/Wrong results with adaptive plan and correlatedsubqueries sharing same correlated column。


主要堆棧信息:

evanvl<- evaopn2 <- subecv <- subsr3 <- evaopn3 <-evaopn2 <- subsr1 <- subsr3 <- evaopn3 <- kpofcr <-qerghFetch <- opifch2 <- opifch <- opiodr <- ttcpip <-opitsk <- opiino <- opiodr <- opidrv <- sou2o <-opimai_real <- ssthrdmain <- main


[
解決方案
]


方案1.升級至12.2.0.1或者更高版本


方案2.使用workaround:


SQL> conn / as sysdba

SQL> alter system set optimizer_adaptive_features=false;


optimizer_adaptive_features即時生效,無需重啟數(shù)據(jù)庫。

本次選擇解決方案2,optimizer_adaptive_features特性關(guān)閉后,再次執(zhí)行上述sql,不再拋出報錯,連接也未中斷,確認解決方案有效。


[
總結(jié)
]


Adaptivestatisticsfeatures優(yōu)化器自適應(yīng)特性默認是打開的,該特性比較適合于一些OLAP類業(yè)務(wù)系統(tǒng),因在這類系統(tǒng)中sql的執(zhí)行時間較長,且sql比較復(fù)雜,優(yōu)化比較麻煩,啟用Adaptivestatistics features 可以帶來好處。但在OLTP系統(tǒng)上建議關(guān)閉該特性,可以規(guī)避該特性引起的很多bug。


在12.1中optimizer_adaptive_features一個參數(shù)控制所有優(yōu)化器自適應(yīng)特性。在12.2中oracle引入了2個獨立參數(shù)來控制optimizeradaptivefeatures(optimizer_adaptive_plans和optimizer_adaptive_statistics),目的應(yīng)該是為了更加靈活的,獨立管理新功能。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/130082.html

相關(guān)文章

  • 記錄平時開發(fā)一些問題(二)

    摘要:在頁面上選擇一個值,確定關(guān)閉窗口后將選擇的這個值返回到父窗口。此時服務(wù)器處于狀態(tài)。 showImg(https://segmentfault.com/img/bVbwG54?w=1440&h=902);1.為了提高用戶體驗,使得點擊單選框圈圈旁邊的文字也能把點選框選中 第一種方式: 測試? 第二種方式: ...

    ddongjian0000 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<