oracle死锁父子和孩子索引了FK

oracle死锁父子和孩子索引了FK,第1张

概述我需要有人帮助我找出导致死锁的原因. 涉及的表是父/子,子表已索引FK.  父:PK_FMS_FC_MAIN_FLD_INPUT_LIMIT  智利:FMS_FC_REL_FLD_INPUT_LIMIT Deadlock graph: ---------Blocker(s)-------- ---------Waiter(s)---------Re 我需要有人帮助我找出导致死锁的原因.
涉及的表是父/子,子表已索引FK.
 父:PK_FMS_FC_MAIN_FLD_input_liMIT
 智利:FMS_FC_REL_FLD_input_liMIT

Deadlock graph:                       ---------Blocker(s)--------  ---------Waiter(s)---------Resource name          process session holds waits  process session holds waitsTX-0019000b-0000b486        22    2755     X             57     492           STX-00010019-00061e13        57     492     X             22    2755           Ssession 2755: DID 0001-0016-00000FCE    session 492: DID 0001-0039-00000719 session 492: DID 0001-0039-00000719 session 2755: DID 0001-0016-00000FCE Rows waited on:  Session 2755: obj - rowID = 000DB256 - AADbJWABbAAAYJQAAA  (dictionary objn - 897622,file - 91,block - 98896,slot - 0)  Session 492: no row----- information for the OTHER waiting sessions -----Session 492:  sID: 492 ser: 2757 audsID: 132281277 user: 364/GKS_IM_9990740    flags: (0x41) USR/- flags_IDl: (0x1) BSY/-/-/-/-/-    flags2: (0x40009) -/-/INC  pID: 57 O/S info: user: grID,term: UNKNowN,ospID: 16372    image: oracle@hgksdb01  clIEnt details:    O/S info: user: imart,term: unkNown,ospID: 1234    machine: hgkswa05 program: JDBC Thin ClIEnt    application name: JDBC Thin ClIEnt,hash value=2546894660  current sql:  DELETE FROM FMS_FC_MAIN_FLD_input_liMIT MAIN WHERE MAIN.ID = :B1 ----- End of information for the OTHER waiting sessions -----information for THIS session:----- Current sql Statement for this session (sql_ID=56azrvwd48huf) -----INSERT INTO FMS_FC_REL_FLD_input_liMIT( ID,RELATION_FIELD_MASTER_CD,CREATE_USER_CD,CREATE_DATE,RECORD_USER_CD,RECORD_DATE ) VALUES( :B4,:B3,:B2,SYSDATE,:B1,SYSDATE )----- PL/sql Stack ---------- PL/sql Call Stack -----  object      line  object  handle    number  name0x1f37f7a58       462  package body GKS_IM_9990740.ZPKG_PRJ_FLDREL0x1ed1a9d38         1  anonymous block===================================================CREATE table GKS_IM_9990740.FMS_FC_MAIN_FLD_input_liMIT(ID                             NUMBER(18,0) NOT NulL,COMPANY_CD                     VARCHAR2(100) NOT NulL,MAIN_FIELD_TYPE                VARCHAR2(100) NOT NulL,RELATION_FIELD_TYPE            VARCHAR2(100) NOT NulL,START_DATE                     DATE NOT NulL,MAIN_FIELD_MASTER_CD           VARCHAR2(1000) NOT NulL,MAIN_FIELD_SUB_CD              VARCHAR2(1000),IS_input_ENABLE                VARCHAR2(1) NOT NulL,IS_input_COmpuLSORY            VARCHAR2(1) NOT NulL,DEFAulT_VALUE                  VARCHAR2(1000),IS_input_liMIT                 VARCHAR2(1) NOT NulL,CREATE_USER_CD                 VARCHAR2(100) NOT NulL,CREATE_DATE                    TIMESTAMP(6) NOT NulL,RECORD_USER_CD                 VARCHAR2(100),RECORD_DATE                    TIMESTAMP(6),CONSTRAINT PK_FMS_FC_MAIN_FLD_input_liMIT PRIMARY KEY (ID) USING INDEXPCTFREE 10INITRANS 2MAXTRANS 255tableSPACE FMS_DATASTORAGE(INITIAL 64K NEXT 1M mineXTENTS 1 MAXEXTENTS 2147483645 BUFFER_POol DEFAulT)LOGGING)CREATE table GKS_IM_9990740.FMS_FC_REL_FLD_input_liMIT(ID                             NUMBER(18,RELATION_FIELD_MASTER_CD       VARCHAR2(1000) NOT NulL,CONSTRAINT PK_FMS_FC_REL_FLD_input_liMIT PRIMARY KEY (ID,RELATION_FIELD_MASTER_CD) USING INDEXPCTFREE 10INITRANS 2MAXTRANS 255tableSPACE FMS_DATASTORAGE(INITIAL 64K NEXT 1M mineXTENTS 1 MAXEXTENTS 2147483645 BUFFER_POol DEFAulT)LOGGING,CONSTRAINT FK_FMS_FC_REL_FLD_input_liMIT0 FOREIGN KEY (ID) REFERENCES GKS_IM_9990740.FMS_FC_MAIN_FLD_input_liMIT (ID))PCTFREE 10MAXTRANS 255tableSPACE FMS_DATASTORAGE(INITIAL 64K NEXT 1M mineXTENTS 1 MAXEXTENTS 2147483645 BUFFER_POol DEFAulT)NOCACHELOGGINGCREATE INDEX "GKS_IM_9990740"."FK_FMS_FC_REL_FLD_input_liMIT" ON "GKS_IM_9990740"."FMS_FC_REL_FLD_input_liMIT"("ID")PCTFREE 10 INITRANS 2 MAXTRANS 255 COmpuTE STATISTICS STORAGE(INITIAL 65536 NEXT 1048576 mineXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREEListS 1 FREEList GROUPS 1 BUFFER_POol DEFAulT FLASH_CACHE DEFAulT CELL_FLASH_CACHE DEFAulT)tableSPACE "FMS_DATA" ;
解决方法 一些想法:
1.)由于涉及死锁的队列是TX,而不是TM,这与未编入索引的外键问题无关.
2.)由于会话正在等待TX’S'(共享)模式,这不是行级锁定问题.
3.)由于涉及的一个语句是INSERT,因此ITL插槽短缺不会成为问题.

所以,鉴于上述情况,我最好的猜测是:
对于删除,位图索引或ITL插槽不足.
对于插入,重叠pk / uk.

希望有所帮助….

总结

以上是内存溢出为你收集整理的oracle死锁父/子和孩子索引了FK全部内容,希望文章能够帮你解决oracle死锁父/子和孩子索引了FK所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1160852.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存