Clarity

  • 1.  Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Posted Jan 04, 2018 08:01 AM

    From the first day of January 2018 you are giving this error.
    The PPM 15.3 upgrade was made on December 15, 2017, but the error was never reported until January 1.
    We have not made any changes since then.


    We want to give intervention to the DBAs but before we would like you to tell us the possible reasons for this problem.

    Tank you in advance

     

    bg-ca.log:

    ERROR 2018-01-03 20:30:19,134 [Dispatch Fijación de intervalos de tiempo PERIODICO2 : bg2@ARPAPP180 (tenant=clarity)] niku.blobcrack (clarity:admin:25953673__291588CA-0516-4C80-90C2-9E38D616DE14:Fijación de intervalos de tiempo PERIODICO2) Exception during blobcrack process
    com.niku.union.persistence.PersistenceDeadlockException:
    SQL error code: 60
    Error message: [CA Clarity][Oracle JDBC Driver][Oracle]ORA-00060: deadlock detected while waiting for resource
    Executed:
     update prassignment set odf_ss_actcost_curve = 2 where odf_ss_actcost_curve = ?  and rownum <= 1000
    Derived from statement:
    <?xml version="1.0" encoding="UTF-8"?>
    <statement sortColumnPath="/data/header/sortInfo/@sortColumn" sortDirectionPath="/data/header/sortInfo/@sortDirection" slicePath="/data/header/pagination/sliceInfo/@slice" sliceSizePath="/data/header/pagination/sliceInfo/@sliceSize" inputSource="map" xmlns="http://schemas.niku.com/2002/pmd">
      <sql dbVendor="oracle">
        <text>update prassignment set odf_ss_actcost_curve = 2 where odf_ss_actcost_curve = ?  and rownum &lt;= 1000</text>
        <param name="sliceStatusFlag" path="sliceStatusFlag/@value" type="long" direction="IN" expressionListDelimiter=","/>
      </sql>
      <sql dbVendor="mssql">
        <text>SET ROWCOUNT 1000 update prassignment set odf_ss_actcost_curve = 2 where odf_ss_actcost_curve = ?  SET ROWCOUNT 0</text>
        <param name="sliceStatusFlag" path="sliceStatusFlag/@value" type="long" direction="IN" expressionListDelimiter=","/>
      </sql>
    </statement>
    Referenced by:
    <?xml version="1.0" encoding="UTF-8"?>
    <statementRef id="odf-pmd.assignment.select-updated-TSV-actcost_curve.map_nested_1" inputSource="map" inputMapIndex="0" sortColumnPath="/data/header/sortInfo/@sortColumn" sortDirectionPath="/data/header/sortInfo/@sortDirection" slicePath="/data/header/pagination/sliceInfo/@slice" sliceSizePath="/data/header/pagination/sliceInfo/@sliceSize" defaultSliceSize="20" ignoreIfError="false" hideResultSets="false" xmlns="http://schemas.niku.com/2002/pmd"/>
    Using input:
    {sliceStatusFlag=1}
        at com.niku.union.persistence.PersistenceController.createException(PersistenceController.java:2105)
        at com.niku.union.persistence.PersistenceController.handleSQLException(PersistenceController.java:2213)
        at com.niku.union.persistence.PersistenceController.processSql(PersistenceController.java:2847)
        at com.niku.union.persistence.PersistenceController.processStatement(PersistenceController.java:868)
        at com.niku.union.persistence.PersistenceController.processStatements(PersistenceController.java:768)
        at com.niku.union.persistence.PersistenceController.doProcessRequest(PersistenceController.java:576)
        at com.niku.union.persistence.PersistenceController.processRequest(PersistenceController.java:306)
        at com.niku.xql2.pmd.PMDRecordSet.executePMDStatement(PMDRecordSet.java:267)
        at com.niku.xql2.pmd.PMDRecordSet.<init>(PMDRecordSet.java:87)
        at com.niku.xql2.pmd.PMDDataSource.select(PMDDataSource.java:94)
        at com.niku.blobcrack.BlobCrackDB.readCurves(BlobCrackDB.java:2011)
        at com.niku.blobcrack.BlobCrackDB.sliceCurves(BlobCrackDB.java:1738)
        at com.niku.blobcrack.BlobCrackDB.createSlices(BlobCrackDB.java:1245)
        at com.niku.blobcrack.xql2.handlers.BlobCracker.processCurrentRequests(BlobCracker.java:251)
        at com.niku.blobcrack.xql2.handlers.BlobCracker.postProcess(BlobCracker.java:46)
        at com.niku.xql2.XQLVisitor.postProcess(XQLVisitor.java:1419)
        at com.niku.union.xml.dom.DOMWalker.postProcess(DOMWalker.java:210)
        at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:94)
        at com.niku.union.xml.dom.DOMWalker.traverse(DOMWalker.java:51)
        at com.niku.xql2.handlers.TryHandler.preProcess(TryHandler.java:54)
        at com.niku.xql2.XQLVisitor.preProcess(XQLVisitor.java:1385)
        at com.niku.union.xml.dom.DOMWalker.preProcess(DOMWalker.java:194)
        at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:74)
        at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:92)
        at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:92)
        at com.niku.union.xml.dom.DOMWalker.traverse(DOMWalker.java:36)
        at com.niku.xql2.XQLProcessor.process(XQLProcessor.java:257)
        at com.niku.njs.xbl.XBLService.process(XBLService.java:127)
        at com.niku.njs.xbl.XBLService.process(XBLService.java:75)
        at com.niku.njs.listeners.XBLJob.scheduledEventFired(XBLJob.java:44)
        at com.niku.njs.Dispatcher$BGTask.run(Dispatcher.java:652)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    Caused by: java.sql.SQLException: [CA Clarity][Oracle JDBC Driver][Oracle]ORA-00060: deadlock detected while waiting for resource
        at com.ca.clarity.jdbc.oraclebase.ddcr.b(Unknown Source)
        at com.ca.clarity.jdbc.oraclebase.ddcr.a(Unknown Source)
        at com.ca.clarity.jdbc.oraclebase.ddcq.b(Unknown Source)
        at com.ca.clarity.jdbc.oraclebase.ddcq.a(Unknown Source)
        at com.ca.clarity.jdbc.oracle.ddam.t(Unknown Source)
        at com.ca.clarity.jdbc.oraclebase.dde3.y(Unknown Source)
        at com.ca.clarity.jdbc.oraclebase.dde3.u(Unknown Source)
        at com.ca.clarity.jdbc.oraclebase.dddz.execute(Unknown Source)
        at com.niku.union.persistence.PersistenceController.processSql(PersistenceController.java:2809)
        ... 31 more
    ERROR 2018-01-03 20:30:19,149 [Dispatch Fijación de intervalos de tiempo PERIODICO2 : bg2@ARPAPP180 (tenant=clarity)] niku.njs (clarity:admin:25953673__291588CA-0516-4C80-90C2-9E38D616DE14:Fijación de intervalos de tiempo PERIODICO2) Error executing job: 5239384 error The timeslice job has failed.
    ERROR 2018-01-03 20:30:46,780 [ProcessEngineThreadMonitor (tenant=clarity)] niku.union (none:none:none:none) ProcessEngineThreadMonitor: Thread, Process Controller (tenant=clarity) is not Alive. The Service running the ProcessEngine will need to be restarted.


  • 2.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Broadcom Employee
    Posted Jan 04, 2018 08:53 AM

    After a year change there will be time slice roll over and expected to take time, during the same time if any other job had run it can cause dead lock. What all jobs have been set as incompatible to Time slice ?



  • 3.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Posted Jan 05, 2018 02:35 PM

    Thanks for your quick response.
    Excuse me, I did not understand your question.
    Can you ask again in more detail?



  • 4.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Broadcom Employee
    Posted Jan 08, 2018 01:18 AM

    Hi Ricardo,

     

    If you look under Administration --> Jobs and you will see properties to Time slice and there will be compatible tab and thats where you set jobs as incompatible 



  • 5.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Posted Jan 08, 2018 08:44 AM

    ok tank you.

    The incompatibles josbs are Datamart Extraction, Delete Investments and Time Slicing



  • 6.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing
    Best Answer

    Posted Jan 08, 2018 09:38 AM

    Can you check if there is any other job or process running at the time of failure of Time slicing job? If so, there can be chances that the error is because of it.



  • 7.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Posted Jan 08, 2018 09:45 AM

    Thank you very much.
    When I execute it, I will remember your recommendation.



  • 8.  Re: Error "ORA-00060: deadlock detected while waiting for resource" when executing Time Slicing

    Posted Jan 08, 2018 05:52 PM

    Could it be an UI/user intervention during that time?

     

    If all compatibles in Job are fine and found no other process running at that time, further option to check the DB trace files, which may no longer require if this does not happen frequent and the subsequent run is complete successfully.