Why... Why... Why?
This blog is dedicated to documenting error resolution and other tidbits that I discover while working as a Consultant in the Oracle EPM (Hyperion) field. As much of my job revolves around issue resolution, I see an opportunity to supplement the typical troubleshooting avenues such as the Oracle Knowledgebase and Oracle Forums with more pinpointed information about specific errors as they are encountered. Beware, the information found in this blog is for informational purposes only and comes without any warranty or guarantee of accuracy.

EPMVirt: Create your own Oracle Hyperion Virtual Environment:

Thursday, February 5, 2015

How to get HFM running on 11.1.2.4 Oracle Linux


HFM is only officially supported for 11.1.2.4 on Windows and Exalytics. However, some are looking to get it working on Oracle Linux (OEL). EPMVirt is based on OEL so I was curios if I could get it working. Note: This is a hack and is not supported.

First, you will notice when creating a new application, this error appears:

EPMHFM-66054: The system was unable to find the Datasource process for application.


The corresponding error message in the logs is

==> /u0/Oracle/Middleware/user_projects/epmsystem1/diagnostics/logs/hfm/oracle-epm-fm-hsx-server.log <==
[2015-02-01T13:51:52.457-05:00] [FM] [NOTIFICATION] [] [oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceProcessManager] [tid: 13] [ecid: 0000Kh6SoCBFw000jzwkno1KnTf90000yN,0:4] [SRC_CLASS: oracle.epm.fm.dslm.DatasourceProcessManager] [SRC_METHOD: startDatasourceProcess] Starting a new datasource process for the application HHH
[2015-02-01T13:51:52.463-05:00] [FM] [ERROR] [EPMHFM-66076] [oracle.FM.FMCOMMON.oracle.epm.fm.common.ServiceClientFactory] [tid: 13] [ecid: 0000Kh6SoCBFw000jzwkno1KnTf90000yN,0:4] [SRC_CLASS: oracle.epm.fm.common.ServiceClientFactory] [SRC_METHOD: getClient] Server EPMVirt is unavailable, connection could not be established.[[
org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused
at org.apache.thrift.transport.TSocket.open(TSocket.java:185)
at oracle.epm.fm.common.ServiceClientFactory.getProtocol(ServiceClientFactory.java:171)
at oracle.epm.fm.common.ServiceClientFactory.getClient(ServiceClientFactory.java:71)
at oracle.epm.fm.dslm.DatasourceManagerImpl.pingDatasource(DatasourceManagerImpl.java:1038)
at oracle.epm.fm.dslm.DatasourceManagerImpl.performDataSourceHealthCheckup(DatasourceManagerImpl.java:804)
at oracle.epm.fm.dslm.DatasourceManagerImpl.getDatasourceInfo(DatasourceManagerImpl.java:681)
at oracle.epm.fm.hsxserver.service.HsxServerDelegate.openApplication(HsxServerDelegate.java:117)
at oracle.epm.fm.hsxserver.service.HsxServerImpl.createSession(HsxServerImpl.java:261)
at oracle.epm.fm.hsxserver.service.HsxServerServiceHandler.createSession(HsxServerServiceHandler.java:201)
at oracle.epm.fm.common.service.hsxserver.HsxServerService$Processor$createSession.getResult(HsxServerService.java:3851)
at oracle.epm.fm.common.service.hsxserver.HsxServerService$Processor$createSession.getResult(HsxServerService.java:3835)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:206)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at org.apache.thrift.transport.TSocket.open(TSocket.java:180)
... 16 more
This is a very generic error meaning that the xfmdatasource is not initializing properly. There is not much logging so it is necessary to dive into the weeds to debug.

First you will notice that some of the shared libraries are missing  by running ldd on the exe file,



This coaxes out the openssl library

yum install openssl098e


Finally all the objects resolve:
[oracle@EPMVirt ~]$ export LD_LIBRARY_PATH=/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/:/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/:/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib
[oracle@EPMVirt ~]$
[oracle@EPMVirt ~]$ ldd /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/xfmdatasource.exe
        linux-vdso.so.1 =>  (0x00007fff52f51000)
        libboost_system-gcc41-mt-1_48.so.1.48.0 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_system-gcc41-mt-1_48.so.1.48.0 (0x00007f66bd8af000)
        libxfmsession.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmsession.so (0x00007f66bd672000)
        libxfmjournals.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmjournals.so (0x00007f66bd3ad000)
        libxfmicm.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmicm.so (0x00007f66bd0e1000)
        libxfmdata.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmdata.so (0x00007f66bcc5f000)
        libxfmprocessflow.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmprocessflow.so (0x00007f66bc9b6000)
        libxfmreports.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmreports.so (0x00007f66bc71f000)
        libxfmdatacubes.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmdatacubes.so (0x00007f66bc4f8000)
        libxfmdqi.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmdqi.so (0x00007f66bc25a000)
        libxfmcalculate.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmcalculate.so (0x00007f66bbfe4000)
        libthrift-0.9.0.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libthrift-0.9.0.so (0x00007f66bbd38000)
        libboost_locale-gcc41-mt-1_48.so.1.48.0 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_locale-gcc41-mt-1_48.so.1.48.0 (0x00007f66bba97000)
        libboost_thread-gcc41-mt-1_48.so.1.48.0 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_thread-gcc41-mt-1_48.so.1.48.0 (0x00007f66bb87c000)
        libboost_regex-gcc41-mt-1_48.so.1.48.0 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_regex-gcc41-mt-1_48.so.1.48.0 (0x00007f66bb590000)
        libboost_filesystem-gcc41-mt-1_48.so.1.48.0 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_filesystem-gcc41-mt-1_48.so.1.48.0 (0x00007f66bb371000)
        libxerces-depdom.so.28 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxerces-depdom.so.28 (0x00007f66bb0fd000)
        libxerces-c.so.28 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxerces-c.so.28 (0x00007f66baae1000)
        libboost_date_time-gcc41-mt-1_48.so.1.48.0 => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_date_time-gcc41-mt-1_48.so.1.48.0 (0x00007f66ba8d0000)
        libhfmcassecurity.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhfmcassecurity.so (0x00007f66ba687000)
        libhsxsecurity.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxsecurity.so (0x00007f66ba425000)
        libhsxdssecurity.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxdssecurity.so (0x00007f66ba13b000)
        libhsxsystemconfig.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxsystemconfig.so (0x00007f66b9edf000)
        libhsvdqiinternal.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdqiinternal.so (0x00007f66b9b53000)
        libxfmmetadata.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmmetadata.so (0x00007f66b9749000)
        libhsvdatasourceimpl.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdatasourceimpl.so (0x00007f66b94b7000)
        libxfmsysteminfo.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmsysteminfo.so (0x00007f66b91da000)
        libxfmsecurityaccess.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmsecurityaccess.so (0x00007f66b8f0c000)
        libxfmsystemchange.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmsystemchange.so (0x00007f66b8cf7000)
        libhsvdsjournals.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsjournals.so (0x00007f66b80ff000)
        libhsvdsicm.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsicm.so (0x00007f66b7d4f000)
        libwsock32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libwsock32.so (0x00007f66b7c3e000)
        libhsvdscalculate.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdscalculate.so (0x00007f66b7577000)
        libhsvdsmemberlists.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsmemberlists.so (0x00007f66b71a5000)
        libhsvdsmemberlistscript.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsmemberlistscript.so (0x00007f66b6f51000)
        libhsvdsrulesom.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsrulesom.so (0x00007f66b694a000)
        libhsvdsdata2.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsdata2.so (0x00007f66b624b000)
        libhsvscriptengine.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvscriptengine.so (0x00007f66b5ff3000)
        libhsvmdarraysinternal.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvmdarraysinternal.so (0x00007f66b5d14000)
        libhsvdstransactions.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdstransactions.so (0x00007f66b5aee000)
        libhsvdsdatacubes2.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsdatacubes2.so (0x00007f66b56f0000)
        libhsvdscalcstatus.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdscalcstatus.so (0x00007f66b5300000)
        libhsvdsreports.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsreports.so (0x00007f66b504d000)
        libhsvdsmetadata2_x64.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsmetadata2_x64.so (0x00007f66b4961000)
        libhsvdssysteminfo.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdssysteminfo.so (0x00007f66b45e7000)
        libhfmrulesinfo.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhfmrulesinfo.so (0x00007f66b43cf000)
        libhsvdssystemchange.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdssystemchange.so (0x00007f66b4181000)
        libxfmdssql.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmdssql.so (0x00007f66b3efa000)
        libxfmclustercontroller.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmclustercontroller.so (0x00007f66b3c42000)
        libhsvmetadataapp.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvmetadataapp.so (0x00007f66b3a05000)
        libatl.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libatl.so (0x00007f66b38dd000)
        libhsxodbc.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxodbc.so (0x00007f66b3640000)
        libxfmjhsxserverwrapper.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmjhsxserverwrapper.so (0x00007f66b324d000)
        libcrypt32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libcrypt32.so (0x00007f66b3052000)
        libversion.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libversion.so (0x00007f66b2f46000)
        libshell32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libshell32.so (0x00007f66b2d68000)
        libcomctl32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libcomctl32.so (0x00007f66b2bb9000)
        libshlwapi.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libshlwapi.so (0x00007f66b2a2a000)
        libmwsafe.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libmwsafe.so (0x00007f66b290b000)
        libhsvmetadatadiff.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvmetadatadiff.so (0x00007f66b267d000)
        libhsvmetadataxml.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvmetadataxml.so (0x00007f66b23e1000)
        libxfmcommon.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libxfmcommon.so (0x00007f66b20bc000)
        liboleaut32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/liboleaut32.so (0x00007f66b1e71000)
        libole32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libole32.so (0x00007f66b1bbc000)
        libmfc400su.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libmfc400su.so (0x00007f66b184c000)
        libuuid.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libuuid.so (0x00007f66b1720000)
        libolepro32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libolepro32.so (0x00007f66b161d000)
        librpcrt4.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/librpcrt4.so (0x00007f66b145a000)
        libmsvcrt.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libmsvcrt.so (0x00007f66b1336000)
        libgdiuser32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libgdiuser32.so (0x00007f66b0fb9000)
        libadvapi32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libadvapi32.so (0x00007f66b0e82000)
        libkernel32.so => /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/libkernel32.so (0x00007f66b0c38000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f66b0a11000)
        libodbc.so.1 => /u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/libodbc.so.1 (0x00007f66b0768000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f66b03d4000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f66b01d0000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f66afec9000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f66afc45000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f66afa2f000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f66af818000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f66af610000)
        libssl.so.6 => /usr/lib64/libssl.so.6 (0x00007f66af3be000)
        libcrypto.so.6 => /usr/lib64/libcrypto.so.6 (0x00007f66af062000)
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007f66aed20000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007f66aeb0f000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f66bdab3000)
        libodbcinst.so => /u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/libodbcinst.so (0x00007f66ae8de000)
        libARicu27.so => /u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/libARicu27.so (0x00007f66ad9e7000)
        libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f66ad7a2000)
        libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f66ad4bc000)
        libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f66ad2b8000)
        libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f66ad08b000)
        libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007f66ace6d000)
        libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f66acc61000)
        libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f66aca5e000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f66ac844000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007f66ac640000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f66ac421000)
[oracle@EPMVirt ~]$

Also to get one of the libs to resolve I did this hack, not sure if it is needed:
ln -s /usr/lib64/libicuuc.so.42 /usr/lib64/libicuuc.so.36

I tried installing the boost-devel package, but still got a undefined symbol

/home/oracle/app/oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/xfmdatasource.exe: symbol lookup error: /home/oracle/app/oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_locale-gcc41-mt-1_48.so.1.48.0: undefined symbol: _ZTIN7icu_3_68CalendarE

The only way I know to resolve this would be to build from source. I grabbed the boost 1.48 source package
http://sourceforge.net/projects/boost/files/boost/1.48.0/
boost_1_48_0.tar.gz


Then build the package:
cd boost_1_48_0/
./bootstrap.sh --prefix=/u0/Oracle/boost
./b2 install

Now, these classes are registered at the end of the EPM configuration using a regsrv32 variant.  Since the shared libraries were messed up, the classes never got registered correctly. Make sure you have HFM started at this point.


Let's edit the script to use the new libraries. 

First, put them somewhere convenient,
In the boost_1_48_0/ directory
mkdir /u0/Oracle/boost_libs
/bin/cp ./bin.v2/libs/locale/build/gcc-4.4.7/release/threading-multi/libboost_locale.so.1.48.0 /u0/Oracle/boost_libs
/bin/cp ./bin.v2/libs/thread/build/gcc-4.4.7/release/threading-multi/libboost_thread.so.1.48.0 /u0/Oracle/boost_libs
/bin/cp ./bin.v2/libs/date_time/build/gcc-4.4.7/release/threading-multi/libboost_date_time.so.1.48.0 /u0/Oracle/boost_libs
/bin/cp ./bin.v2/libs/filesystem/build/gcc-4.4.7/release/threading-multi/libboost_filesystem.so.1.48.0 /u0/Oracle/boost_libs
/bin/cp ./bin.v2/libs/regex/build/gcc-4.4.7/release/threading-multi/libboost_regex.so.1.48.0 /u0/Oracle/boost_libs
/bin/cp ./bin.v2/libs/system/build/gcc-4.4.7/release/threading-multi/libboost_system.so.1.48.0 /u0/Oracle/boost_libs
Next edit
/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/hfm_post_install_steps.sh

At the top of the script, after "#!/bin/sh" add the following lines:

/bin/cp /u0/Oracle/boost_libs/libboost_locale.so.1.48.0 /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_locale-gcc41-mt-1_48.so.1.48.0
/bin/cp /u0/Oracle/boost_libs/libboost_thread.so.1.48.0 /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_thread-gcc41-mt-1_48.so.1.48.0
/bin/cp /u0/Oracle/boost_libslibboost_date_time.so.1.48.0 /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_date_time-gcc41-mt-1_48.so.1.48.0
/bin/cp /u0/Oracle/boost_libslibboost_filesystem.so.1.48.0 /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_filesystem-gcc41-mt-1_48.so.1.48.0
/bin/cp /u0/Oracle/boost_libs/release/threading-multi/libboost_regex.so.1.48.0 /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_regex-gcc41-mt-1_48.so.1.48.0
/bin/cp /u0/Oracle/boost_libslibboost_system.so.1.48.0 /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libboost_system-gcc41-mt-1_48.so.1.48.0

Now execute the script and verify correct registration of the objects:

export LD_LIBRARY_PATH=/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/:/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/lib-amd64_linux_optimized/:/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/
export EPM_ORACLE_HOME=/u0/Oracle/Middleware/EPMSystem11R1
./hfm_post_install_steps.sh 

/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/hfm_post_install_steps.sh
Sourcing the mainwin runtime environment required for registration ...Registering COM objects ....RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhfmcassecurity.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxdssecurity.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxsecurity.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvsystemactivity.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvsharedappdata.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsxsystemconfig.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvscriptengine.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsmemberlistscript.so succeeded.RegSvr32: DllRegisterServer in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/libhsvdsrulesom.so succeeded.Completed post install steps.[oracle@EPMVirt ~]$

Next, I added the data source to DataDirect odbc configuration:
I changed the "/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/odbc.ini"
file to read:
[ODBC Data Sources]
Oracle Wire Protocol=DataDirect 7.1 Oracle Wire Protocol
[ODBC]
IANAAppCodePage=4
InstallDir=/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1
Trace=0
TraceFile=odbctrace.out
TraceDll=/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/ARtrc27.so
[Oracle Wire Protocol]
ServerName=HFMTNS
Driver=/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/ARora27.so
Description=DataDirect 7.1 Oracle Wire Protocol
TNSNamesFile=/u0/app/oracle/product/12.1.0/dbhome_1/network/admin/HYPDB/tnsnames.ora
Host=EPMVirt

also making sure to add HFMTNS as part of the tnsnames.ora config:

HFMTNS =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = HYPDB)
    )
  )


Kill your Hsx server process, and retry creating the application:

ps -wwef | grep -i hsx | awk '{ print $2 }' | xargs kill -9

/u0/Oracle/Middleware/user_projects/epmsystem1/bin/startHFMJavaServer.sh


You should see:
/u0/Oracle/Middleware/user_projects/epmsystem1/diagnostics/logs/starter/startHsxServer.sh.log
<Feb 5, 2015 2:14:08 AM EST> <Info> <oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceManagerImpl> <BEA-000000> <Waiting for Data Source to start for application NICK1...>
XDS: ping request received. App name: NICK1 State: INITIALIZING DS LAYER
<Feb 5, 2015 2:14:08 AM EST> <Info> <oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceManagerImpl> <BEA-000000> <DataSource Process status for the application : NICK1 , Status : INITIALIZING_DS >
XDS: ping request received. App name: NICK1 State: INITIALIZING DS LAYER
<Feb 5, 2015 2:14:11 AM EST> <Info> <oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceManagerImpl> <BEA-000000> <DataSource Process status for the application : NICK1 , Status : INITIALIZING_DS >
<Feb 5, 2015 2:14:14 AM EST> <Info> <oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceManagerImpl> <BEA-000000> <Waiting for Data Source to start for application NICK1...>
XDS: ping request received. App name: NICK1 State: INITIALIZING DS LAYER
<Feb 5, 2015 2:14:14 AM EST> <Info> <oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceManagerImpl> <BEA-000000> <DataSource Process status for the application : NICK1 , Status : INITIALIZING_DS >
XDS: HsvDatasourceImpl successfully initialized.
XDS: *** XfmDatasource for NICK1 successfully started. ***
XDS: ping request received. App name: NICK1 State: RUNNING
XDS: There are 0 session(s) in the session map for NICK1
<Feb 5, 2015 2:14:17 AM EST> <Info> <oracle.FM.HSXDSLM.oracle.epm.fm.dslm.DatasourceManagerImpl> <BEA-000000> <The datasource process with PID -  4018 for the application NICK1 is started successfully.>
<Feb 5, 2015 2:14:45 AM EST> <Info> <oracle.FM.HSXDATAACCESS.oracle.epm.fm.dal.dao.application.ParametersDAOImpl> <BEA-000000> < return value : StandardConsol>



5 comments:

  1. Great instructions. I have HFM now running on OEL 6.4. The boost 1.48 source package was what I was missing. I appreciate the detailed instruction

    ReplyDelete
  2. Hi Nicholas, I have this error and am not a Linux expert by any means. I would love to get HFM working, could you do a more step by step on these instructions to get this working. As I tried to follow the above to the best of my ability but it doesn't work. It would be really appreciated. Wayne

    ReplyDelete
  3. This post might help you get a leg up on the details of the architecture,
    http://epm-errors.blogspot.com/2015/02/hfm-11124-architecture.html

    Also, check out the automated EPMVirt image, which now includes HFM:
    http://epm-errors.blogspot.com/p/epmvirt-11124-oracle-hyperion-virtual.html

    ReplyDelete
  4. Hi Nick, I need help in building the boost 1.48 package. I am unable to go past this.

    ReplyDelete