12.1版本dg切换导致的部分数据块scn超前

定位对象

根据alert日志的ora600报错trc

[oracle@db01dbadm01 trace]$ vi /u01/app/oracle/diag/rdbms/slyy/slyy1/trace/slyy1_ora_336476.trc

根据报错trc找到incdir的trc,找到具体sql

[oracle@db01dbadm01 trace]$ vi /u01/app/oracle/diag/rdbms/slyy/slyy1/incident/incdir_8091949/slyy1_ora_336476_i8091949.trc

SELECT /* DS_SVC */ /*+ dynamic_sampling(0) no_sql_tune no_monitoring optimizer_features_enable(default) no_parallel result_cache(snapshot=3600) OPT_ESTIMATE(@"innerQuery", TABLE, "P#0", ROWS=38799.805) OPT_ESTIMATE(@"innerQuery", INDEX_FILTER, "P#0", "IDX_DISP_SICK_PRICE_ITEM_TIME", ROWS=67623) OPT_ESTIMATE(@"innerQuery", INDEX_SCAN, "P#0", "IDX_DISP_SICK_PRICE_ITEM_TIME", ROWS=67623) */ SUM(C1) FROM (SELECT /*+ qb_name("innerQuery") NO_INDEX_FFS( "P#0")  */ 1 AS C1 FROM "OUTPSICK"."DISPENSARY_SICK_PRICE_ITEM" SAMPLE BLOCK(0.141753, 8) SEED(3)  "P#0", ( (SELECT "A"."APPLY_NO" "APPLY_NO","A"."SICK_ID" "SICK_ID","A"."NULLAH_NUMBER" "NULLAH_NUMBER","A"."APPLY_CLASS_CODE" "APPLY_CLASS_CODE","A"."ITEM_NAME" "ITEM_NAME","A"."RESULT_STATUS" "RESULT_STATUS","A"."APPLY_TIMES" "APPLY_TIMES","A"."ITEM_CODE" "ITEM_CODE" FROM COMM."APPLY_SHEET_POOL" "A",COMM."SICK_BASIC_INFO" "C","DICT"."BILL_KIND_DICT" "E" WHERE "A"."SICK_ID"="C"."SICK_ID" AND "A"."APPLY_CLASS_CODE"="E"."BILL_CODE" AND ("A"."RESULT_STATUS"=:B1 OR "A"."RESULT_STATUS"=:B2 OR "A"."RESULT_STATUS"=:B3 OR "A"."RESULT_STATUS"=:B4 OR "A"."RESULT_STATUS"=:B5) AND "A"."SICK_ID"=:B6 AND "C"."SICK_ID"=:B6 AND "E"."BILL_CODE"<>:B8 AND "A"."APPLY_CLASS_CODE"<>:B8) UNION ALL  (SELECT "B"."APPLY_NO" "APPLY_NO","B"."SICK_ID" "SICK_ID","B"."NULLAH_NUMBER" "NULLAH_NUMBER","B"."APPLY_CLASS_CODE" "APPLY_CLASS_CODE","B"."ITEM_NAME" "ITEM_NAME","B"."RESULT_STATUS" "RESULT_STATUS","B"."APPLY_TIMES" "APPLY_TIMES","B"."ITEM_CODE" "ITEM_CODE" FROM COMM."APPLY_SHEET" "B",COMM."SICK_BASIC_INFO" "D","DICT"."BILL_KIND_DICT" "E" WHERE "B"."SICK_ID"="D"."SICK_ID" AND "B"."APPLY_CLASS_CODE"="E"."BILL_CODE" AND ("B"."RESULT_STATUS"=:B1 OR "B"."RESULT_STATUS"=:B2 OR "B"."RESULT_STATUS"=:B3 OR "B"."RESULT_STATUS"=:B4 OR "B"."RESULT_STATUS"=:B5) AND "B"."SICK_ID"=:B6 AND "D"."SICK_ID"=:B6 AND "E"."BILL_CODE"<>:B8 AND "B"."APPLY_CLASS_CODE"<>:B8)) "A#1" WHERE ("A#1"."NULLAH_NUMBER"="P#0"."RESIDENCE_NO") AND ("A#1"."APPLY_NO"="P#0"."APPLY_NO") AND ("P#0"."COST_MODE"=:B19) AND ("P#0"."ARCHIVE" IS NULL) AND ("P#0"."OPERATION_TIME">=TRUNC(SYSDATE@!)) AND ("P#0"."OPERATION_TIME"<TRUNC(SYSDATE@!)+:B20)) innerQuery

从sql的hint部分,找到使用的索引

IDX_DISP_SICK_PRICE_ITEM_TIME

再次确认

因为ora600报错很宽泛,为了定位是索引块超前,需要使用dbv工具确认

SQL> alter session set container=SLYYHIS;                                                                                                                                                                  

Session altered.

Elapsed: 00:00:00.01

SQL> select index_name,tablespace_name from dba_indexes where index_name='IDX_DISP_SICK_PRICE_ITEM_TIME';                                                                                                  

                                                                                                                                                                                                           

INDEX_NAME                                                                                                   TABLESPACE_NAME

-------------------------------------------------------------------------------------------------------------------------------- -------------------------

IDX_DISP_SICK_PRICE_ITEM_TIME                                                                                          OUTPSICK_PRICE_LONG_IDX

Elapsed: 00:00:00.31

找到该索引的表空间

SQL> select RELATIVE_FNO,file_name from dba_data_files where tablespace_name='OUTPSICK_PRICE_LONG_IDX';                                                                                                   

RELATIVE_FNO

------------

FILE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

         96

+DATAC1/SLYY/3AF713CA266E9482E05301D2140A9EF8/DATAFILE/outpsick_price_long_idx01.ora

Elapsed: 00:00:00.03

找到该表空间的数据文件

Dbv检查数据文件

[oracle@db01dbadm01 trace]$ dbv file=+DATAC1/SLYY/3AF713CA266E9482E05301D2140A9EF8/DATAFILE/outpsick_price_long_idx01.ora

DBVERIFY: Release 12.1.0.2.0 - Production on Tue Nov 3 18:46:19 2020

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

DBVERIFY - Verification starting : FILE = +DATAC1/SLYY/3AF713CA266E9482E05301D2140A9EF8/DATAFILE/outpsick_price_long_idx01.ora

itl[2] has higher commit scn(0x0ddf.9ed48224) than block scn (0x0ddf.5fe10989)

Page 1705413 failed with check code 6056

DBVERIFY - Verification complete

Total Pages Examined         : 2621440

Total Pages Processed (Data) : 0

Total Pages Failing   (Data) : 0

Total Pages Processed (Index): 1907697

Total Pages Failing   (Index): 1

Total Pages Processed (Other): 4406

Total Pages Processed (Seg)  : 0

Total Pages Failing   (Seg)  : 0

Total Pages Empty            : 709337

Total Pages Marked Corrupt   : 0

Total Pages Influx           : 0

Total Pages Encrypted        : 0

Highest block SCN            : 0 (0.0)

根据提示的page号最后定位对象

SQL> select * from dba_extents where relative_fno=96 and 1705413 between block_id and block_id+blocks;                                                                                                    

                                                                                                                                                                                                          

OWNER

--------------------------------------------------------------------------------------------------------------------------------

SEGMENT_NAME

--------------------------------------------------------------------------------------------------------------------------------

PARTITION_NAME                                                                                                  SEGMENT_TYPE      TABLESPACE_NAME            EXTENT_ID    FILE_ID

-------------------------------------------------------------------------------------------------------------------------------- ------------------ ------------------------- ---------- ----------

  BLOCK_ID  BYTES       BLOCKS RELATIVE_FNO

---------- ---------- ---------- ------------

OUTPSICK

IDX_DISP_SICK_PRICE_ITEM_AN

                                                                                                                 INDEX                OUTPSICK_PRICE_LONG_IDX           157       96

   1704448   67108864        8192          96

Elapsed: 00:00:04.65

SQL>       

解决方法    

定位到问题块是在一个索引上,与bug22241601现象吻合。

删除,再创建索引   OUTPSICK_PRICE_LONG_IDX   

学习原理,积累工具;孵化思路,下笔有道                                       

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/143941.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

分布式搜索引擎Elasticsearch

一、Elasticsearch介绍 1.Elasticsearch产生背景 大数据量的检索NoSql: not only sql,泛指非关系型的数据库Nginx的7层负载均衡和4层负载均衡2.Elasticsearch是什么 一个基于Lucene的分布式搜索和分析引擎,一个开源的高扩展的分布式全文检索引擎 Elasticsearch使用Java开发…

stack和queue

&#x1f493;博主个人主页:不是笨小孩&#x1f440; ⏩专栏分类:数据结构与算法&#x1f440; C&#x1f440; 刷题专栏&#x1f440; C语言&#x1f440; &#x1f69a;代码仓库:笨小孩的代码库&#x1f440; ⏩社区&#xff1a;不是笨小孩&#x1f440; &#x1f339;欢迎大…

油猴(篡改猴)学习记录

第一个Hello World 注意点:默认只匹配了http网站,如果需要https网站,需要自己添加match https://*/*代码如下 这样子访问任意网站就可以输出Hello World // UserScript // name 第一个脚本 // namespace http://tampermonkey.net/ // version 0.1 // descri…

K8S-存储卷,pv,pvc

pv&#xff0c;pvc 一、emptyDir存储卷1.概述2.示例 二、hostPath存储卷1.概述 三、nfs共享存储卷1.在stor01节点上安装nfs&#xff0c;并配置nfs服务2.master节点操作3.在nfs服务器上创建index.html4.master节点操作 四、PVC 和 PV1.概述2.PV和PVC之间的相互作用遵循的生命周期…

HDLBits-Edgedetect

刚开始写的代码如下&#xff1a; module top_module (input clk,input [7:0] in,output [7:0] pedge );reg [7:0] in_pre;always (posedge clk)begin in_pre < in;endassign pedge in & ~in_pre; endmodule但是提交结果是错误的。猜想原因如下&#xff1a; assign p…

Android widget 小部件使用指南强化版

Android widget 小部件使用指南强化版 一、简单UI的小部件二、含集合的小部件三、可配置的小部件四、可控制的小部件五、Android 12 Widget 更新 小部件是主屏幕定制的一个重要方面。您可以将它们视为应用程序最重要的数据和功能的“概览”视图&#xff0c;这些数据和功能可以直…

第十章_祖冲之_圆周率

倒数1又2/3章&#xff0c;keep_writting的一天&#xff1a; 第十章10.1.7 运行程序资源下载网站为何打不开呢&#xff1f;

Linux socket 字节序

socket介绍 字节序 验证什么字节序 #include<stdio.h> int main() {union {short value;char btypes[sizeof(short)];} test;test.value 0x0102;if(test.btypes[0] 1 && test.btypes[1] 2) {printf("大端字节序\n");}else{printf("小端字节序…

JVM111

JVM1 字节码与多语言混合编程 字节码 我们平时说的java字节码&#xff0c; 指的是用java语言编译成的字节码。准确的说任何能在jvm平台上执行的字节码格式都是一样的。所以应该统称为:jvm字节码。不同的编译器&#xff0c;可以编译出相同的字节码文件&#xff0c;字节码文件…

DataExcel控件读取和保存excel xlsx 格式文件

需要引用NPOI库 https://github.com/dotnetcore/NPOI 调用Read 函数将excel读取到dataexcel控件 调用Save 函数将dataexcel控件文件保存为excel文件 using NPOI.HSSF.UserModel; using NPOI.HSSF.Util; using NPOI.SS.UserModel; using NPOI.SS.Util; using System; using …

canvas-绘图库fabric.js简介

一般情况下简单的绘制&#xff0c;其实canvas原生方法也可以满足&#xff0c;比如画个线&#xff0c;绘制个圆形、正方形、加个文案。 let canvas document.getElementById(canvas);canvas.width 1200;canvas.height 600;canvas.style.width 1200px;canvas.style.height 6…

【算法基础】栈和队列及常见变种与使用,双栈、动态栈、栈的迭代器,双端队列、优先队列、并发队列、延迟队列的使用

目录 一、栈&#xff08;Stack&#xff09; 二、 队列&#xff08;Queue&#xff09; 三、栈和队列的常见变种与使用 3.1 栈的常见的变种与使用 3.1.1 最小栈&#xff08;Min Stack&#xff09; 3.1.2 双栈&#xff08;Two Stacks&#xff09; 3.1.3 固定大小栈&#xf…

eclipse svn插件安装

1.进入eclipse的help->Eclipse Marketplace,如下图所示&#xff1a; 2.输入“svn”,再按回车&#xff0c;如下图&#xff1a; 3.这我选择的是 Subversive,点击后面的“install”按钮&#xff0c;如下图 Eclipse 下连接 SVN 库有两种插件 —— Subclipse 与 Subversive &…

开源C# Winform Scada 上位机系统

开源Winform Scada系统 功能展示C#源码程序说明下载程序源码获取 功能展示 本软件目前包含: 常用PLC通讯控件, 常用IO读写控件, 权限过滤, 用户管理, 日志记录, 报警记录. 使用方式: 在VS2022里面拖放控件, 填写控件属性,完成组态.即可成为一个完整的上位机. C#源码 程序说明…

弱信号的采样与频谱分析(修订中...)

1.频谱混叠效应 - 波形数据抽样 这是一组经过抽样的数据的频谱&#xff0c;红圈圈出的两条谱线&#xff0c;是我们需要关注的特征谱线。这个信号与右侧的临近信号比较&#xff0c;求频率比值&#xff0c;比值恒定与理论推导相符。再5取1降低采样率后&#xff0c;大致相同的频率…

宝塔nginx搭建Ftp文件服务器

一&#xff1a;创建FTP 填入账号密码后&#xff0c;选择根目录&#xff0c;这个根目录就是nginx要代理的目录 二&#xff1a;配置nginx root的地址就是上面填的FTP根目录 三&#xff1a;http访问 服务器ip端口号加图片 例如我放了一个320.jp 我服务器ip是110.120.120.120 那…

使用MySQL聚合函数来聚合数据,结果发现有刺客...

问题&#xff1a; 使用MySQL聚合函数 group_concat 的坑&#xff01; 现象&#xff1a; 我有个业务&#xff0c;需要将表中符合条件的数据行的id聚合成一个字符串&#xff0c;以供另外一张表的查询过滤。 SELECTx FROMt_A WHEREFIND_IN_SET(guan_lian,(SELECTgroup_concat( i…

iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程

文章目录 一、环境准备二、基础软件三、扩展&#xff1a;usb拓展插件 一、环境准备 1、下载VMware虚拟机的壳子&#xff0c;安装并注册软件(可以百度注册码)&#xff0c;最新版本&#xff1a;v17 2、下MacOS系统iOS镜像文件&#xff0c;用于vmware虚拟机安装&#xff0c;当前镜…

Unity WebSocket-Server

&#x1f33c;WebSocket-Server &#x1f96a;效果展示&#x1f32d;启动Server&#x1f371;连接Server &#x1f96a;效果展示 在Unity中创建WebSocket服务器&#xff0c;从网页连接到该服务器进行消息通信&#xff0c;在Unity中接收到的消息都在主线程中 &#x1f32d;启…

RK3588 VDD_NPU电源PCB设计注意事项

1、VDD_NPU的覆铜宽度需满足芯片的电流需求&#xff0c;连接到芯片电源管脚的覆铜足够宽&#xff0c;路径不能被过孔分割太严重&#xff0c;必须计算有效线宽&#xff0c;确认连接到CPU每个电源PIN脚的路径都足够。 2、VDD_NPU的电源在外围换层时&#xff0c;要尽可能的多打电…