4 Replies Latest reply: Aug 2, 2013 1:02 PM by BeckieC RSS

    Origination of Notification Message "A Spec Revision Processor error has occurred" ?

    BeckieC

      Our installation is v6.1.0.3 and we have been getting nightly notifications with the subject line "A Spec Revision Processor error has occurred".  There seems to be two distinct message results and I would to know if anyone is familiar with what causes this type of notification.  We are not finding any correlations to user actions when these messages are sent from the servers.  Thank you for any advice.  --BeckieC

       

      ==TradeMaterialSpecRelationship Message==

      Spec Revision Processor [SpecRevisionProcessor: Name=TradeMaterialSpecRelation, SpecRevisionRetrieverFactory=Xeno.Prodika.GSMLib.CustomAssociations.Service.Retrievers.LatestIssueByTagsCommonSpecRetrieverFactory, SpecRevisionReplacerFactory=Xeno.Prodika.GSMLib.CustomAssociations.Service.Replacers.TradeMaterialSpecRelationshipReplacerFactory] error occurred: ORA-01013: user requested cancel of current operation: SELECT DISTINCT(container.PKID)

              FROM

               gsmTradeMaterialSpecRelation container

               INNER JOIN specSummary ss ON container.fkMaterialSpec = ss.SpecID  AND container.IsCustomAssociation = 1

                  INNER JOIN SpecSummary ss2 on ss2.specnum = ss.specnum AND ss2.IssueNum > ss.IssueNum  

                  INNER JOIN gsmWorkflowActivityTemplates act on act.fkProcessTemplate = ss2.fkProcessTemplate and act.fkworkflowstatus = ss2.SpecStatusID

                  INNER JOIN GSMWFExtendedBehaviorJoin behaviorJoin on act.pkid = behaviorJoin.fkGSMWorkflowActivityTemplate

                  INNER JOIN comLWFExtendedBehaviorTemplate behavior on behaviorJoin.fkExtendedBehavior = behavior.pkid            

              WHERE

               behavior.BehaviorID in (4)    at Xeno.Data.XDataQueryIsolated.execute(String statement)

         at Xeno.Prodika.GSMLib.CustomAssociations.Service.Retrievers.LatestIssueByTagsCommonSpecRetriever.RetrieveContainerObjectPKIDs()

         at Xeno.Prodika.GSMLib.CustomAssociations.Service.SpecRevisionUpdateServer.OnTimer(Object state)

       

      ==FormulationInputs Message==

      Spec Revision Processor [SpecRevisionProcessor: Name=FormulationInputs, SpecRevisionRetrieverFactory=Xeno.Prodika.GSMLib.CustomAssociations.Service.Retrievers.LatestIssueByTagsCommonSpecRetrieverFactory, SpecRevisionReplacerFactory=Xeno.Prodika.GSMLib.CustomAssociations.Service.Replacers.FormulationInputReplacerFactory] error occurred: Connection request timed out   at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)

         at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)

         at Oracle.DataAccess.Client.OracleConnection.Open()

         at Xeno.Data.XDataObjectConnection.Open()

         at Xeno.Data.XDbConnectionPool.internal_lock(IXDataObjectConnection connection)

         at Xeno.Data.XDbConnectionPool.getConnection()

         at Xeno.Data.XDbConnectionPool.getConnection(Int32 timeOut)

         at Xeno.Data.XDataQueryIsolated.execute(String statement)

         at Xeno.Prodika.GSMLib.CustomAssociations.Service.Retrievers.LatestIssueByTagsCommonSpecRetriever.RetrieveContainerObjectPKIDs()

         at Xeno.Prodika.GSMLib.CustomAssociations.Service.SpecRevisionUpdateServer.OnTimer(Object state)

        • 1. Re: Origination of Notification Message "A Spec Revision Processor error has occurred" ?
          Kellymayfield-Oracle

          This looks like it has to do with get latest revision functionality.  This service replaces specification relationships when a new approved revision is found.   What gets replaced by this service is controlled by the lock icons next to the specification name. You can find more information about these services on page 1-22 of the configuration guide.  If you aren't using get latest revision you can configure this feature off.  I don't know what is causing the connection request time out, but hopefully this will help out a little. 

          • 2. Re: Origination of Notification Message "A Spec Revision Processor error has occurred" ?
            BeckieC

            Thank you for your help Kelly.  I have passed your information back to our support team so we can review the situation further.  Thanks again.

            • 3. Re: Origination of Notification Message "A Spec Revision Processor error has occurred" ?
              Trey

              Beckie, we had this same issue 5 months ago under 6.1.0.2. If you can open SR SR 3-6865504241 : URGENT! SPecRevisionUpdate Processor giving Unable to Cast error
              gives more detail.

               

              This script Oracle gave us stopped the Event log messages, and emails each time it starts happening. But we had to apply hotfix Patch.16410137 (HF 6.1.0.2.15) to permenantly fix the issue

              Hope this helps!!

              --1. We filed Bug16410137.

              --DEV said this is occurring from a specific Unlocked material substitute item (possibly in formulation spec).
              --If you can't handle the from email, then use the sql below to help find the specific item and lock it down, until the issue is fixed.

              --2. This query should return the list of MaterialSubstituteItems that could have a higher revision (Issue number)

              SELECT SpecNum, IssueNum, * FROM gsmMaterialSubstituteItem subs
              inner join SpecSummary specsum on specsum.PKID = subs.fkMaterial
              where IsCustomAssociation = 1 and specsum.IssueNum < (select Max(ss.IssueNum) from
              SpecSummary ss
              INNER JOIN gsmWorkflowActivityTemplates act on act.fkProcessTemplate = ss.fkProcessTemplate and act.fkworkflowstatus = ss.SpecStatusID
              INNER JOIN GSMWFExtendedBehaviorJoin behaviorJoin on act.pkid = behaviorJoin.fkGSMWorkflowActivityTemplate
              INNER JOIN comLWFExtendedBehaviorTemplate behavior on behaviorJoin.fkExtendedBehavior = behavior.pkid
              INNER JOIN gsmFormulationOutput formOutputs on formoutputs.fkReferencedMaterial = ss.SpecID
              INNER JOIN gsmFormulationSteps formSteps on formOutputs.fkFormulationStep = formSteps.pkid
              INNER JOIN dwbSpecifications dwbSpec on formSteps.fkParent = dwbSpec.pkid
              INNER JOIN DWBSpecificationRoots dwbroots on dwbroots.pkid = dwbSpec.fkWorkingVersionParent
              INNER JOIN formulationSpecification formSpec ON dwbroots.fkOWner = formSpec.pkid
              INNER JOIN specSummary formulationSS ON formulationSS.specid = formSpec.pkid
              WHERE ss.SpecNum = specsum.SpecNum
              and BehaviorID in (4)
              --and OutputType not in ({2})
              )

              --3. You can update those records to be locked by setting the gsmMaterialSubstituteItem table's IsCustomAssociation = 0, until the fix is in, or manually go and update those items in the UI.
              select * from gsmMaterialSubstituteItem
              where pkid in (
              '57771f8a2403-edd9-451f-afe6-bbfe3a9935ca')

              update gsmMaterialSubstituteItem
              set IsCustomAssociation = 0
              where pkid in (
              '57771f8a2403-edd9-451f-afe6-bbfe3a9935ca')

              --4. Another option is that you can turn off MaterialSubstituteItems from getlatestrevision on the remoting container, for the time being.
              --a. Make a backup copy of your remoting container.exe.config file
              --b. In the remoting container.exe.config file, comment out the following node:
              <SpecRevisionProcessor name="MaterialSubstituteItem">
              <envvar name="SpecRetrieverFactoryURL" value="Class:Xeno.Prodika.GSMLib.CustomAssociations.Service.Retrievers.LatestIssueByTagsCommonSpecRetrieverFactory,GSMLib$gsmMaterialSubstituteItem|fkMaterial|PKID|4" />
              <envvar name="SpecReplacerFactoryURL" value="Class:Xeno.Prodika.GSMLib.CustomAssociations.Service.Replacers.MaterialSubstituteItemReplacerFactory,GSMLib"/>
              </SpecRevisionProcessor>

               

              • 4. Re: Origination of Notification Message "A Spec Revision Processor error has occurred" ?
                BeckieC

                Thank you Trey.  We will follow up on your advice looking for the "malformed" data to fix it.  --Beckie