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.

Sunday, March 29, 2015

Handling WebLogic Failures


The default behavior when a critical error occurs in a running WebLogic application is to do nothing about the failure condition. This can cause the web server, OHS, to keep routing traffic to the service, even in a highly available situation where there is more than one server available. This situation leaves many with HA setups vulnerable to a single point of failure.

The basic problem is that when you have a WebLogic service running, such as HFM, and it encounters a critical situation such as out of memory (OOM) error, the service comes to a halt and cannot process users requests. End users are left with their requests spinning in the web browser until they eventually timeout. It is important to configure the WebLogic Managed Server to acknowledge the failure and shut itself down quickly so that the other member of the cluster can take over.

Two settings in WebLogic can help with this, under the theme Overload protection. The settings are Failure Action and Panic Action.

  

This can be scripted to set for all managed servers using WLST
connect(....)  
edit() 
startEdit()
servers = cmo.getServers()
for server in servers:
  name=server.getName()
               cd('OverloadProtection/' + name)
      cmo.setPanicAction('system-exit')               
      cmo.setFailureAction('force-shutdown')
    save()
    activate()



More Details about overload protection can be found here:
http://www.dba-oracle.com/t_weblogic_overload_protection.htm

Taking this scenario one step further, rather than just failing, Node Manager can be used automatically restart the failed service. However, Node Manager is most often used as an optional component, so you would need to decide whether to implement Node Manager to use these features.




Wednesday, March 25, 2015

Useful Administrative Tools in Windows

Do you work with Hyperion in Windows and feel like your hands are tied? Like a fish out of water? OK, maybe this is an exaggeration for most admins, but as a former Linux sysadmin it is how I feel most days. I wanted to share some tools that can be used to help bridge the gap and become a Windows power user as it relates to Hyperion. Please feel free to share your own tools and ideas in the comments.

Note: Each of these tools has its own licencing agreement. Please carefully read and adhere to each licence. 

AstroGrep

Unix equivalent: grep
Find strings in files. AstroGrep is much more powerful than windows find utility. The Windows find utility only searches for whole words. For example, "this is an exception" vs. "java.lang.exception". The Windows find utility only finds the first example, yet AstroGrep finds both strings.

If Hyperion throws a weird message or error, you can use AstroGrep to search the file system for the file to help pinpoint where it is coming from and get more context around the error. It can be useful to find specific server names, passwords, usernames, etc in files such as MAXL scripts.

In the example below I am searching the *.log files in the EPM Diagnostics folder for the string "Exception".

WinDiff

Unix equivalent: diff

Diff files, or recursively entire directories for changes. For instance, compare the EPMA accounts from an LCM export taken at two different times to identify the differences in EPMA metadata.

mTAIL

Unix equivalent: tail -f
Windows error log tailer. It is used to monitor logs in real time. Simply drag and drop a file from windows explorer into mTAIL, click the start button and it will start displaying updates to the log file in real time. This is handy when you need to check a file over and over for updates, such as looking for new errors. It is also useful if you are constantly restarting WebLogic to check log for errors during startup.



Process Explorer and Handle

Unix equivalent: lsof
Ever try to rename or delete that certain folder and it keeps saying it is in use, but you do not see anything open? Ever have trouble with Hyperion patches failing to apply because some files in use? Obviously, the first step is to search task manager for Hyperion related processes. However, there are some pesky situations where this alone cannot identify the culprit. Process Explorer has an option to search file handles, and is easier to use. The Handle tool is a command line tool and kind of archaic, but can also find what is using the files you want to get access to.

WinDirStat

Unix equivalent: du -k | sort -n
Out of disk space? Need a quick tool to discover the where the most space is being consumed? WinDirStat gives you an ordered list of disk space consumption and lets you drill through, finding what is using all the disk space on your system.


mRemoteNG

  Sadly, the opensource form of this tool is deprecated. It it a very useful remote desktop/SSH session manager for Windows. Integrates nicely with PuTTY.

Process Monitor

Unix equivalent: strace
A very low level tool to see the system calls a process is making while executing. Typically this tool comes out when all of the normal avenues have been tried to solve the problem. Sometimes getting down to the level of system calls can pinpoint things like missing files, bad security, and bugs. This helps figure out why a process is crashing by seeing what unexpected conditions the process encountered while running.

Internet Explorer Developer tools

Similar tools also available in Chrome and Firefox

Network profiling can help find latency in your requests. For instance, you can measure the time it takes to get resources from different geographic regions and pinpoint certain latency issues. From the example below, there are a ton of images and background activity after each click in Hyperion. Sometimes slow performance can be found on the front-end using this method. It is also useful to inspect in detail certain processes for debugging purposes.

Simply go to Tools -> F12 Developer Tools. Select the Network tab, and "start capturing".


Monday, February 23, 2015

HFM 11.1.2.4 Architecture

There seems to be great deal of changes in the 11.1.2.4 HFM release for Linux. I have reviewed the typical Oracle docs for info and did not find anything detailing the architecture. I figure it is worth fleshing out what I have learned. Keep in mind that I do not have any special internal knowledge so this is all just speculation based on observation.




The main tier which the user interacts with is the familiar WebLogic ADF application. This is pretty familiar to prior versions so I will gloss over this.

Moving into the application layer, the primary interface is the Java based HsxServer application. It is involved when you use LCM, create/add/delete or interact with HFM through Workspace. In Oracle terms, this is also referred to as JHsxServer (Java based). The main Java application class is oracle.epm.fm.hsxserver.HsxServer. The server does not perform any of the actual calculations. It spawns another process to act as the main calculation engine.

The HsxServer process kicks off a separate process for each HFM application, called xfmdatasource. The xfmdatasource is written in C and seems to have been ported to Unix via some abstraction layers. There is still a very Windows feel to the process, as you will see.

To start let's begin by investigating xfmdatasource.
Start with a ps listing:
 6483 oracle    20   0 1501m  54m  32m S 14.3  1.1   0:00.58 xfmdatasource.exe

Using the pid we can get the command line and environment variables used to start the process.

[oracle@EPMVirt ~]$ cat /proc/6483/cmdline
/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/xfmdatasource.exe/XDSManagementPort=10005/XDSHandlersPort=10006/JHsxServerPort=9091/AppName=COMMA4DIM/SecKey=¾¼Ã¿Â¢/EpmOracleInstance=/u0/Oracle/Middleware/user_projects/epmsystem1/LogFolder=/u0/Oracle/Middleware/user_projects/epmsystem1/diagnostics/logs/hfm

One thing to note here is the various ports xfmdatasource uses. Also useful is the logging location. To investigate errors during startup you could look in this folder. However this only works if the process starts up enough to initialize the logger.

Taking a look at the environment variables one can see some hints at ODBC and something called MW... 
xargs -n 1 -0 < /proc/6483/environ
...
ODBCINST=/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/odbcinst.ini
EPM_ORACLE_INSTANCE=/u0/Oracle/Middleware/user_projects/epmsystem1
MWHOME=/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw
MWOS=linux

What is the MW? MainWin...

Poking around in the MWHOME folder you can see some utilities to get a better idea. 
 reg - an mwadm command, administers the MainWin System Core (MSC)
         registry services.

Usage: mwadm command [parameters]
Following is the list of commands supported by the mwadm utility:

version displays the version number of the MSC.
help            displays help on using mwadm and its commands.
stop            stops all MSC services in an orderly manner.
start           manually starts all MSC services.
status          provides vital signs of the MSC services.
log             administers the MSC logs.
sec             administers MSC DCOM security settings.
reg             administers the MSC registry service.

export MWREGISTRY=/home/oracle/.mw/hklm_amd64_linux.bin

[oracle@EPMVirt bin]$ ./mwadm status
Run-time mode       : professional
Core Services status: running
Core Data Directory : /home/oracle/.mw/core_data/EPMVirt
RPC Port            : dynamic
[oracle@EPMVirt bin]$

Here are the unix processes involved:
[oracle@EPMVirt bin]$ ./mwadm reg -ps
uid:    500     pid:   6553     hkcu: /home/oracle/.mw/core_data/EPMVirt/.mw/hkcu.bin
uid:    500     pid:   6483     hkcu: /home/oracle/.mw/hkcu.bin
[oracle@EPMVirt bin]$

The next question to answer is how is MainWin used by xfmdatasource?

Further investigation uncovers a file, hfm_post_install_steps.sh
"/u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/hfm_post_install_steps.sh"

Towards the end of the script we see some references to MWHOME

echo "Sourcing the mainwin runtime environment required for registration ..."
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$EPM_ORACLE_HOME/products/FinancialManagement/Server
export MWHOME=$EPM_ORACLE_HOME/products/FinancialManagement/Server/mw
source $MWHOME/setmwruntime

echo "Registering COM objects ...."
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhfmcassecurity.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsxdssecurity.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsxsecurity.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsvsystemactivity.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsvsharedappdata.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsxsystemconfig.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsvscriptengine.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsvdsmemberlistscript.so
regsvr32 -c -nodisplay $EPM_ORACLE_HOME/products/FinancialManagement/Server/libhsvdsrulesom.so

What is going on here? Essentially after HFM is installed it registers COM objects using regsvr32. What is regsvr32 and what's it doing on Linux? This is part of the MainWin installation 
located in /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/mw/bin-amd64_linux_optimized/regsvr32

Finally, this reveals the purpose of MainWin - to house the simulated Windows registry components for COM objects required by HFM xfmdatasource process.

Next, let's shift away from MainWin for a bit and focus on the dependencies for xfmdatasource.

the xfmdatasource.exe process has the boost libraries as a prerequisite:
[oracle@EPMVirt ~]$ ldd /u0/Oracle/Middleware/EPMSystem11R1/products/FinancialManagement/Server/xfmdatasource.exe | grep boost
        libboost_system-gcc41-mt-1_48.so.1.48.0
        libboost_locale-gcc41-mt-1_48.so.1.48.0
        libboost_thread-gcc41-mt-1_48.so.1.48.0
        libboost_regex-gcc41-mt-1_48.so.1.48.0
        libboost_filesystem-gcc41-mt-1_48.so.1.48.0
        libboost_date_time-gcc41-mt-1_48.so.1.48.0
[oracle@EPMVirt ~]$

What is libboost?
http://www.boost.org/

Boost is essentially an open source set of C libraries focusing on being portable between different platforms. HFM uses boost to be more platform independent. Specifically, it looks like Boost is used in a lot of low level calls like threading, file system access. Presumably, code written using Boost would work on Linux and Windows, providing portability without having to rewrite code.

One last thing we discover looking at the xfmdatasource environment is the ODBC datasource dependency. Now let's investigate the ODBC piece. We are familiar with ODBC from Essbase drill through. However, this is the first it is being used with HFM. 

The main configuration takes place in a file called odbc.ini

[oracle@EPMVirt Oracle]$ cat ./Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/odbc.ini
[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
[oracle@EPMVirt Oracle]$

The Hyperion configuration actually sets up a new TNS connection named HFMTNS located at /u0/Oracle/Middleware/user_projects/config/dbclient/tnsnames.ora. 


export TNS_ADMIN=/u0/Oracle/Middleware/user_projects/config/dbclient

[oracle@EPMVirt Oracle]$ tnsping HFMTNS

TNS Ping Utility for Linux: Version 12.1.0.1.0 - Production on 23-FEB-2015 01:52:34

Copyright (c) 1997, 2013, Oracle.  All rights reserved.

Used parameter files:


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = HYPDB)))
OK (0 msec)
[oracle@EPMVirt Oracle]$

Sometimes it may be necessary to test the ODBC connection to ensure connectivity and help with troubleshooting. You can use the unix utility isql for basic connectivity.

First, setup the utility:
yum install -y unixODBC
ln -fs /u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/odbc.ini ~/.odbc.ini
export LD_LIBRARY_PATH=/u0/Oracle/Middleware/EPMSystem11R1/common/ODBC-64/Merant/7.1/lib/

Next, try to connect:
[oracle@EPMVirt ~]$ isql -v "Oracle Wire Protocol" EPM_HSS PWD
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+

Trying apparently one step to far! Not able to perform any queries due to licencing restrictions. 
SQL> select max(starttime) from SMA_AUDIT_FACT;
Warning:
[DataDirect][ODBC Oracle Wire Protocol driver]The DataDirect product you are attempting to access has been provided to you by Oracle for exclusive use with Oracle products.  You are not licensed to use this product with any application other than Oracle products.   If you would like to purchase this product for some other use, please call 800-876-3101 or visit DataDirect at www.datadirect.com
+---------------------------+
| MAX(STARTTIME)            |
+---------------------------+
|                           |
+---------------------------+
SQLRowCount returns -1
1 rows fetched
SQL>

Bummer.. 


In conclusion, the post describes how HsxServer depends on xfmdatasource.exe. Some of the dependencies of xfmdatasource are Boost, MWHOME, and ODBC. Knowing more about these dependencies can greatly help in understanding the architecture.


Saturday, February 21, 2015

EPMVirt 11.1.2.4 now with HFM

It has taken a bit longer than expected, but I am now releasing EPMVirt which includes HFM 11.1.2.4. The two main issues were getting the correct Linux boost libraries and some proper tuning for such a small sized environment. The default HFM tuning parameters are setup for a 16G system, which is far too much for this tiny environment.

http://epm-errors.blogspot.com/2015/01/epmvirt-get-your-new-hyperion-11124.html
Enjoy...

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>



Saturday, January 31, 2015

EPMVirt: Get Your New Hyperion 11.1.2.4 Virtual Environment

I have finished putting together the latest EPMVirt release for automating the new Hyperion 11.1.2.4 Installation/Configuration. Check it out:
What is EPMVirt?
  • Prerequisites completed for Oracle RDBMS/EPM
  • Automated Linux Install
  • Automated Oracle DB Installation
  • Database configuration for EPM
  • Automated EPM Installation
  • Automated EPM Configuration
  • Automated Configuration of Sample Planning App
Don't spend time fussing around with the install, try EPMVirt and immediately start evaluating Hyperion 11.1.2.4!

Thursday, January 29, 2015

Having trouble starting MAXL on 11.1.2.4 (and Essbase Server)?



Having trouble starting MAXL on 11.1.2.4 (and Essbase Server)?

[oracle@EPMVirt bin]$ ./startMaxl.sh
/u0/Oracle/Middleware/EPMSystem11R1/products/Essbase/EssbaseServer/bin/essmsh: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory



[oracle@EPMVirt bin]$ yum whatprovides libnuma.so.1
numactl-2.0.7-6.el6.i686 : Library for tuning for Non Uniform Memory Access machines
Repo        : public_ol6_latest
Matched from:
Other       : libnuma.so.1



(As root install...)
[root@EPMVirt ~]# yum install numactl

Installed:
  numactl.x86_64 0:2.0.9-2.el6


Works now...
[oracle@EPMVirt bin]$ /u0/Oracle/Middleware/user_projects/epmsystem1/EssbaseServer/essbaseserver1/bin/startMaxl.sh

 Essbase MaxL Shell 64-bit - Release 11.1.2 (ESB11.1.2.4.000B193)
 Copyright (c) 2000, 2015, Oracle and/or its affiliates.
 All rights reserved.

MAXL>