国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Oracle 19C錯誤查詢結果及案例

IT那活兒 / 2750人閱讀
Oracle 19C錯誤查詢結果及案例

點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了!!!

基礎環境

  • 操作系統linux7.6
  • 數據庫19.6

問題描述

執行如下sql:
select * from   test
where (from_id=89090909090909 or to_id=89090909090909);

每次新建會話第一次查詢返回的結果集最后一列值出現錯誤的概率很高,當再次執行該sql時結果正確。

發現過程

某天應用突然聯系說查詢出錯誤結果集,因為涉及核心數據庫,這讓我緊張了一下。經過與應用溝通,可以判斷,不管是程序jdbc連接還是plsql客戶端連接都可以復現問題。與應用溝通后,我也拿到sql進行了測試,問題復現的概率很高。
到這里這個問題已經很難進行下去了,sql比較簡單,mos上搜索后未發現相關的bug。于是提交oracle后臺分析,大家都懂的,oracle后臺提供了相應的文檔腳本收集相關日志。但效果并不好,來來回回收集了很多次日志也未能抓到異常信息。
再次與應用溝通,發現最后一列是通過addcloumn方式添加的,且是notnull的。通過mos搜索發現,還真有符合這種情況的bug
可惜沒有符合當前你19.6版本數據庫的。

在溝通過程中已經發現了可能和addcolumn,且是notnull方式添加字段有關。于是按原表表結構新建一張表:

  • 場景一:最后一個字段建表后再添加,問題可以復現;
  • 場景二:最后一個字段建表時一起建上,問題未能復現。
通過以上測試,可以明確是addcolumn且是notnull相關的bug。

解決方案:

  • 當前:按以上場景二方式重建表即可。
  • 遠期:提供相關信息至oracle后臺,由后臺分析并提供相關workground或者開發補丁。
文章首發于2021年4月13日

本文作者:鮑勇慧(上海新炬王翦團隊)

本文來源:“IT那活兒”公眾號

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129234.html

相關文章

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

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