4 Replies Latest reply on Oct 31, 2011 8:05 PM by Jedi Knight

    "UNICODE_IN_DATA" error in ODI data load interface

    Jedi Knight

      I am sorry, I have again to ask for help with the new issue with ODI This is a multiple-column data load interface. I am loading data from tab-delimited text file into Essbase ASO 11.1.2. The ODI repository database is MS SQL Server. In the target datastore some fields are not mapped to the source but hardcoded with a fixed value, for example, since only budget data is always loaded by default, the mapping for "Scenario" field in the target has an input string 'Budget'. This data load interface has no rules file.

      At "Prepare for loading" step the following error is produced:

      org.apache.bsf.BSFException: exception from Jython:
      Traceback (most recent call last):
      File "<string>", line 86, in <module>
      AttributeError: type object 'com.hyperion.odi.common.ODIConstants' has no attribute 'UNICODE_IN_DATA'

           at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
           at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:346)
           at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2458)
           at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:48)
           at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
           at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2906)
           at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2609)
           at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:540)
           at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:453)
           at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:1740)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:338)
           at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:214)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:272)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:263)
           at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:822)
           at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:123)
           at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:83)
           at java.lang.Thread.run(Thread.java:662)

      I will be very grateful for any hints
        • 1. Re: "UNICODE_IN_DATA" error in ODI data load interface
          Have you changes any of the Hyperion Java Files?
          I have not seen this exact error before but errors like this when the KM is not in sync with the Java Files.
          Also I always suggest using a rules file.

          If you have changed the files, revert back to the original odihapp_common.jar and see if it works, if you have changed the files to get round the issues I described in the blog you should be alright just to have changed odihapp_essbase.jar
          This is the problem now with Oracle and all there different versions and patches of ODI, it seems to me they have put effort into the 10.1.3.x Hyperion modules and then in just given up and totally messed a lot of things up.
          I hope somebody from Oracle read this because they need to get there act together.


          1 person found this helpful
          • 2. Re: "UNICODE_IN_DATA" error in ODI data load interface
            Jedi Knight
            Thanks, John!

            Your advice has actually helped to resolve the above error but another error appeared instead of it. So I copied back the old odihapp_common.jar file and ran the interface again so "Prepare for loading" step went with no errors but I am getting the error at "Load data into essbase" step:
            +com.hyperion.odi.essbase.ODIEssbaseException: com.hyperion.odi.essbase.ODIEssbaseException: Invalid column type specified for Data column [C1_ACCOUNT]+

            What is meant by "column type" here?
            C1_ACCOUNT column of the work table was created of type VARCHAR in Step1 and Account field is of type "String" both in the source and in the target.

            Thank you!
            • 3. Re: "UNICODE_IN_DATA" error in ODI data load interface
              Do you get the same issue if you use a load rule?


              • 4. Re: "UNICODE_IN_DATA" error in ODI data load interface
                Jedi Knight
                John, after I have attached the rules file to the interface, the issue with invalid column type for C1_ACCOUNT disappeared. Thank you so much!

                Actually copying back the older odihapp_common.jar file has resolved the issue to which this thread refers.

                I guess for me to be more correct, I should have posted the column type issue in a new thread...

                Thanks a lot!