Oracle 12.2 BUG :分割槽維護導致的 ORA-600 KKPOFPCD3

資料和雲發表於2020-04-03

原文連結: https://www.modb.pro/db/23449?xy 


摘要:在 Oracle 12.2 中,因為線上的分割槽合併、維護等工作導致了一個BUG的引入。

在 Oracle 12.2 中,因為線上的分割槽合併、維護等工作導致了一個BUG的引入。
image.png
錯誤是 ORA-600 錯誤體現出來的,錯誤資訊類似如下:

ORA-00600: internal error code, arguments: [kkpofpcd3], [], [], [], [], [], [], [], [], [], [], []

引發錯誤的SQL類似如下:

----- Current SQL Statement for this session (sql_id=c3zymn7x3k6wy) -----
select obj#, dataobj#, part#, hiboundlen, hiboundval, flags, ts#, file#, block#, pctfree$, initrans, maxtrans, analyzetime, samplesize, rowcnt, blevel, leafcnt, distkey, lblkkey, dblkkey, clufac, pctthres$, length(bhiboundval), bhiboundval from indpart$ where bo# = :1 order by part#
[TOC00005]

關鍵的錯誤資訊如下,核心是 Fetch Partnum DictNum 這部分:

========= Dump for incident 216417 (ORA 600 [kkpofpcd3]) ========
[TOC00003]
----- Beginning of Customized Incident Dump(s) -----
fetched: partnum=0, dictnum=98, objn=63117
  Owner              = 0
  Name               = WRH$_FILESTATXS_PK
  SubName            = WRH$_FILESTATXS_1263135530_266
  objn_kkpacfrag     = 63117
  objd_kkpacfrag     = 63117
  tsn_kkpacfrag      = 1
  dba_kkpacfrag      = 0x00000000
  fragnum_kkpacfrag  = 0
  dictnum_kkpacfrag  = 98
  status_kkpacfrag   = 0x0
  flags_kkpacfrag    = 0x0
  fragtype_kkpacfrag = 0
  hibnd_kkpacfrag    = "MAXVALUE, MAXVALUE"
  bhibnd_kkpacfrag   : len=0, key=
kkpodDumpOcd begin: hd=0
ocd=7000101de49eba0
    parttype_kkpacocd    = 1
    subptype_kkpacocd    = 0
    partcnt_kkpacocd     = 10
    flags_kkpacocd       = 0x3
    mflags_kkpacocd      = 0x0
    status_kkpacocd      = 0x0
    hidPartcnt_kkpacocd  = 0
    hasSageTsn_kkpacocd  = 0
    hasExadoopTsn_kkpaco = 0
    noDMOffload_kkpacocd = 0
    noDIDTSOffload_kkpac = 0
    noXMLOffload_kkpacoc = 0
    noJSONOffload_kkpaco = 0
    noVGBYOffload_kkpaco = 0
    partKCols_kkpacocd:
        colCnt=2
        [0] id=2, knl=2, dty=2, usr=2, csid=0, csform=0
        [1] id=1, knl=1, dty=2, usr=1, csid=0, csform=0
    pcd=7000101de49f080, partnum=1, dictnum=10, objn=62637
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_0
        objn_kkpacfrag     = 62637
        objd_kkpacfrag     = 62637
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c17b12
        fragnum_kkpacfrag  = 1
        dictnum_kkpacfrag  = 10
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 30"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de49f218, partnum=2, dictnum=11, objn=62900
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_30
        objn_kkpacfrag     = 62900
        objd_kkpacfrag     = 62900
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c2489a
        fragnum_kkpacfrag  = 2
        dictnum_kkpacfrag  = 11
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 76"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de49f3b0, partnum=3, dictnum=13, objn=62901
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_76
        objn_kkpacfrag     = 62901
        objd_kkpacfrag     = 62901
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c248a2
        fragnum_kkpacfrag  = 3
        dictnum_kkpacfrag  = 13
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, MAXVALUE"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de49f550, partnum=4, dictnum=22, objn=63066
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_MXDB_MXSN
        objn_kkpacfrag     = 63066
        objd_kkpacfrag     = 63066
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c2806a
        fragnum_kkpacfrag  = 4
        dictnum_kkpacfrag  = 22
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 122"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de49f6e8, partnum=5, dictnum=33, objn=63076
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_122
        objn_kkpacfrag     = 63076
        objd_kkpacfrag     = 63076
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c2807a
        fragnum_kkpacfrag  = 5
        dictnum_kkpacfrag  = 33
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 146"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de49f880, partnum=6, dictnum=44, objn=63080
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_146
        objn_kkpacfrag     = 63080
        objd_kkpacfrag     = 63080
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c2870a
        fragnum_kkpacfrag  = 6
        dictnum_kkpacfrag  = 44
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 170"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de4a1468, partnum=7, dictnum=55, objn=63084
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_170
        objn_kkpacfrag     = 63084
        objd_kkpacfrag     = 63084
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c2871a
        fragnum_kkpacfrag  = 7
        dictnum_kkpacfrag  = 55
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 194"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de4a1600, partnum=8, dictnum=66, objn=63088
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_194
        objn_kkpacfrag     = 63088
        objd_kkpacfrag     = 63088
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c295ba
        fragnum_kkpacfrag  = 8
        dictnum_kkpacfrag  = 66
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 218"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de4a1798, partnum=9, dictnum=77, objn=63112
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_218
        objn_kkpacfrag     = 63112
        objd_kkpacfrag     = 63112
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c299a2
        fragnum_kkpacfrag  = 9
        dictnum_kkpacfrag  = 77
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 242"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
    pcd=7000101de4a1930, partnum=10, dictnum=88, objn=63116
        Owner              = 0
        Name               = WRH$_FILESTATXS_PK
        SubName            = WRH$_FILESTATXS_1263135530_242
        objn_kkpacfrag     = 63116
        objd_kkpacfrag     = 63116
        tsn_kkpacfrag      = 1
        dba_kkpacfrag      = 0x00c299c2
        fragnum_kkpacfrag  = 10
        dictnum_kkpacfrag  = 88
        status_kkpacfrag   = 0x0
        flags_kkpacfrag    = 0x0
        fragtype_kkpacfrag = 1
        hibnd_kkpacfrag    = "1263135530, 266"
        bhibnd_kkpacfrag   : len=0, key=
        subpcnt_kkpacpcd   = 0
        status_kkpacpcd    = 0
kkpodDumpOcd end: hd=0

這個問題對應的 BUG是:
Bug 25583657 ALTER TABLE MERGE PARTITIONS ONLINE MAY FAIL WITH ORA-600: [KKPOFPCD3]

這個 BUG 在 18.1 中被修正,官方的描述如下:
Description

This bug is only relevant when using Partitioned Tables
Brief Description:
If you get ORA-600: [KKPOFPCD3] while doing merge partition online, 
then its likely that you have hit this bug.
 
Rediscovery Notes
If you get ORA-600: [KKPOFPCD3] while doing merge partition online, 
then its likely that you have hit this bug.
 
Workaround
NONE


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31556440/viewspace-2684319/,如需轉載,請註明出處,否則將追究法律責任。

相關文章