Wednesday, 31 October 2012

ODI 11.1.1.6 – Extracting Essbase attribute members bug + fix

Just another really quick update from me today, I have seen a few posts on the issue in the past and noticed there is an actual fix available now so I thought I would go through the problem and the fix.

The issue definitely exists on 11.1.1.6 and I believe it exists in unpatched 11.1.1.5 and 10g.

Say you want to extract the hierarchy from an attribute dimension from an essbase outline it certainly should be possible using the “LKM Hyperion Essbase METADATA to SQL”


In this example I will try and extract the population attribute hierarchy from everybody’s favourite Sample Basic.


If you reverse the Sample Basic database there will be a Datastore created for each attribute dimension with a number of property columns.


I created a simple interface which will extract the parent, child and alias members from the population attribute dimension and write these to a flat file.


Unfortunately when you run the interface it fails at the “Begin Essbase Metadata Extract” step with the following error:

org.apache.bsf.BSFException: exception from Jython:
Traceback (most recent call last):
  File "<string>", line 91, in <module>
    at com.hyperion.odi.essbase.ODIEssbaseMetaReader.validateSourceMetadata(Unknown Source)
    at com.hyperion.odi.essbase.ODIEssbaseMetaReader.validateExtractOptions(Unknown Source)
    at com.hyperion.odi.essbase.AbstractEssbaseReader.beginExtract(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)

So that was the end of the road on 11.1.1.6 until a recent patch was made available


You can get more information and download patch 13093442 here.


Once download the patch can easily be applied using Opatch just make sure none of the ODI components are running before applying.

Basically the patch copies a new version of odihapp_essbase.jar to

\oracledi\client\jdev\extensions\oracle.odi.navigator\lib\
\oracledi.sdk\lib\


After applying the patch the interface can executed again.


This time it is much more promising as the interface complete successfully.


The target flat file is populated with the full attribute hierarchy even if it is in its usual unhelpful order.

3 comments:

Anonymous said...

Hi John,
I use 11.1.1.3 and face the same issue. The patch says it applies to 11.1.1.5 and 11.1.1.6. Does it also apply to 11.1.1.3 ? did you face the same error using 11.1.1.3

John Goodwin said...

Hi,

You could try downloading the patch, I am not sure if it will apply so you could extract odihapp_essbase.jar and backup your existing files and replace to see if it works, if you have problems you can just revert back to the old version.

Cheers

Sailendra Tankala said...

Dear John,

Thank you for the wonderful blog.

We are planning to replace our current ETL tool Informatica with ODI. In the current context, Informatica SAP Adapters are working fine extracting SAP data from SAP Tables (SE16) and SAP ABAP Functions (Called from Informatica Interfaces) in stream mode . With current setup, Informatica is able to extract 2 Million Records in 30 minutes.

We are not sure how ODI SAP Adapters work in this regard.

So would like to have your valuable inputs on ODI SAP Adapters with regard to :

- Data extraction Performance
- Feasibility of Extraction of SAP Data from SAP Tables and SAP Functions (return dataset)
- Feedback on the stability and scalability of the ODI SAP Adapters

Thank you for your patience

Regards,
Sai