2 Replies Latest reply: Nov 19, 2013 2:46 PM by Vesko Jel RSS

    Error ODI-26016 while creating an object version

    Vesko Jel

      Hi Guys,


      I have few ODI objects (packages, interfaces), which give me a nasty error when I try to create an ODI version of them.

      Check the stack trace and the screenshot from a try to create new version of given interface.

      I've already asked this question without luck:


      Error ODI-26016 when exporting and creating a version of a package

      ODI-26016:Error while regerating scenraio



      I couldn't find more into on that topic, so could I ask someone to give/send me the details from the metalink id mentioned in the first thread [ID 1514781.1] ?!




      Thanks in advance!

        • 1. Re: Error ODI-26016 while creating an object version

          Here is the details from the doc id:


          Applies to:

          Oracle Data Integrator - Version to [Release 10gR3 to 11gR1]

          Information in this document applies to any platform.






          When trying to export the Master Repository, or a given Technology from the Oracle Data Integrator (ODI) Topology Manager, the following error is observed:



          ODI-26016: The requested operation cannot be succeed. The object no longer exists

          com.sunopsis.core.SnpsInexistantObjectException: SnpMtxt.getObjectByIdent : SnpMtxt does not exist

          at com.sunopsis.dwg.dbobj.SnpMtxt.getObjectByIdent(SnpMtxt.java:394)

          at com.sunopsis.dwg.dbobj.SnpIndexType.initializeNonPersistantFields(SnpIndexType.java:102)

          at com.sunopsis.dwg.dbobj.generated.GeneratedSnpIndexType.getObjectFieldsFromDb(GeneratedSnpIndexType.java:604)

          at com.sunopsis.dwg.dbobj.generated.GeneratedSnpIndexType.getObjectLst(GeneratedSnpIndexType.java:647)

          at com.sunopsis.dwg.dbobj.SnpLinkTechnoIndexType.getInstanceLstAction(SnpLinkTechnoIndexType.java:31)

          at com.sunopsis.dwg.DwgLink.getInstanceLst(DwgLink.java:110)







          CASE 1 :



          The error occurs because of an invalid entry in the Index Types  section of Technology in question.



          More precisely, the index type (Bitmap, Non-Unique, or Unique) which is causing the problem is defined with a value of I_ITYPE_CLAUSE_TXT and/or I_ITYPE_DESC_TXT missing from the SNP_MTXT table.



          The corruption being most probably due to an ODI defect (unpublished Bug 13252271 - COPYING A TECHNOLOGY DOES NOT DEEP COPY INDEX TYPE MTXTS): ODI does not properly handle the entries in the SNP_MTXT table relative to the Index Types when one Technology is duplicated/copied.



          Due to this, the Index Types records of the duplicated Technology keep the same pointers to the SNP_MTXT records as the original Technology. Normal would have been to duplicate the records in SNP_MTXT.



          Note that the above defect is fixed in version of ODI.



          CASE 2 :



          This issue also could be because of the following Bug.






          For certain case , we can't delete a join and the joined table and save the interface, it gives the exact same error reported in Bug 14538962.



          Bug 14538962 is fixed in ODI but only for new Interfaces, old Interfaces still can't be saved after removing a join.






          The issue can be identified by following the below steps:

          1.From the ODI Topology Manager, try to export the Technologies, one by one.


          2.Observe which of the export fails, and signal a "SnpMtxt does not exist" message.


          3.From the identified Technology above, drill down to check each internal component of it by elaborating them.


          For example:

               - Edit each of the Data Servers, and navigate through the tabs - The navigation should not signal any error message.

               - Edit each of the Datatypes - The edit window should open without error messages.

               - Edit each of the Actions - The edit window should open without error messages.

               - Edit each of the Index types - The edit window should open without error messages. In our case, the Unique Index of "Microsoft SQL Server" technology (internal ID 6999) was not opening at all...



          Now you have a detail on the problem: the "Microsoft SQL Server" technology (internal ID 6999 ) is defined with two Index types (Non-Unique, and Unique), out of which, Unique Index is missing the entries in the SNP_MTXT table.



          To resolve the behavior: (Applies to CASE 1 and CASE 2)

          1.Connect to the database schema containing your ODI Master Repository.


          2.Update the SNP_INDEX_TYPE table, as follows:



          update SNP_INDEX_TYPE

          set I_ITYPE_CLAUSE_TXT = null, I_ITYPE_DESC_TXT = null

          where I_TECHNO = <the internal ID of Technology found above. In our case, 6999>





          3.Start ODI Studio, and go to the Topology navigator.


          4.Export the Technology, or ODI Master Repository - per your own needs.





          • 2. Re: Error ODI-26016 while creating an object version
            Vesko Jel

            Thanks a lot !

            In my case the problem seems to lie in following java method:


            Caused by: com.sunopsis.core.SnpsInexistantObjectException
              at com.sunopsis.dwg.dbobj.SnpOrigTxt.getOrigTxtById(SnpOrigTxt.java:342)


            but unfortunately I don't know how it's working, neither which table it operates on? SNP_ORIG_TXT, maybe?


            Is there any ODI developer here to help me troubleshoot this?

            We have a lot of legacy objects created with Sunopsis, followed by two migrations to ODI  10/11g, so I suppose this will happen a lot and I need it resolved.