Endeca Journey begins 1


Let’s just say that I got courageous ๐Ÿ™‚ or someone convinced me to look beyond Essbase and Planning.
Now don’t assume that you are going to see me talking all about Big Data and Data discovery, This is a post which I thought of sharing about my experience while playing with the installation and the issues I found while playing with it. (I could be because of my ignorance, I’m just two days old and there is a lot to learn)
You’ve to follow a certain sequence for installing Endeca Server, Studio and ETL server. This is well described in the installation guides, so I’m not going to cover that.
After following the instructions I installed Endeca Server, ETL Designer, ETL Server, and was happy about it. I started Endeca Server service and to add to the frustration it didn’t start. (Here it comes)

A quick note – None of these are installed as a Windows service, I had to write the scripts to install them as Windows services. If the installer can handle this I would take that any time of the day.

Endeca Server issue

Endeca Server log file just keep growing every minute (or seconds) and the below given message is repeatdly recorded.

<warning> <com.endeca.opmodel.control.ClusterCoordinator> <OES-000056> <OES-000056: ClusterCoordinator process ended. Automatically restarting>   
1994415 [Thread-36-SendThread(localhost:2181)] INFO   [ClientCnxn] Opening socket connection to server localhost/127.0.0.1:2181  
1994416 [Thread-36-SendThread(localhost:2181)] WARN   [ClientCnxn] Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect  
java.net.ConnectException: Connection refused  
  at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)  
  at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:599)  
  at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1143)  
1995685 [Thread-36-SendThread(localhost:2181)] INFO   [ClientCnxn] Opening socket connection to server localhost/127.0.0.1:2181  
1995685 [Thread-36-SendThread(localhost:2181)] WARN   [ClientCnxn] Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect  
java.net.ConnectException: Connection refused  
  at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)  
  at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:599)  
  at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1143)  
<warning> <com.endeca.opmodel.control.ClusterCoordinator> <OES-000056> <OES-000056: ClusterCoordinator process ended. Automatically restarting>   
1997172 [Thread-36-SendThread(localhost:2181)] INFO   [ClientCnxn] Opening socket connection to server localhost/127.0.0.1:2181  
1997172 [Thread-36-SendThread(localhost:2181)] WARN   [ClientCnxn] Session 0x0 for server null, unexpected error, closing socket connection

Mine is not a clustered  environment, and it was still trying to open the port associated with the cluster. After playing with EndecaServer.properties file I gave up and searched for the error in OTN and found that someone else had the exact same issue and the fix was to uninstall and re-install. I’m not a fan of fixing issues with uninstall and re-install, however I had a doubt that this could be something related to the install sequence.

I did uninstall and re-install Endeca server and guess what that solved the issue. 1 issue down.

Endeca Studio issue

Yeahhhhh, I got into Endeca studio and was customizing admin@oracle.com user (this is the default admin user that gets created). I did change the password and the email address. I continued with rest of the installation and guess what I forgot the email address I gave to admin user ๐Ÿ™

For the life of me I cannot figure out what email address I gave. I do remember the password. If you end up in such a situation; here is what you can do.

Navigate to Endeca Studio domain (my domain location is given below)

E:OracleMiddlewareuser_projectsdomainsAzgardEndecaStudioeidstudiodatahsql

There is a file called lportal.script, open this file with a text editor and navigate to the section where it says INSERT INTO USER_VALUES

You can see the username, email address and other details here. 2nd issue down ๐Ÿ™‚

Endeca ETL Server issue

It’s raining issues………. ๐Ÿ™

After installing ETL server, the license file needs to be updated. In order to do this you must create a property file (cloverServer.properties)and add this to the startWeblogic.cmd. I did add this as per install guide.

Tried to start the server and got the below given error.

####<dec 8, 2014 8:00:16 PM CST> <error> <org.springframework.web.context.ContextLoader> <azgard> <adminserver> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <bbc212af5fc51658:-270cb377:14a2cc65f2e:-8000-0000000000000002> <1418090416239> <BEA-000000> <context initialization failed
org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name 'quartzScheduler' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Could not resolve placeholder 'quartz.driverDelegateClass'
 at org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.processProperties(PropertyPlaceholderConfigurer.java:268)
 at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:75)
 at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:553)
 at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:527)
 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:362)
 at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
 at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
 at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:46)
 at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
 at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
 at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1870)
 at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3155)
 at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1518)
 at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:487)

####<Dec 8, 2014 8:00:16 PM CST> <warning> <http> <azgard> <adminserver> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<wls Kernel>> <> <bbc212af5fc51658:-270cb377:14a2cc65f2e:-8000-0000000000000002> <1418090416239> <BEA-101162> <user defined listener org.springframework.web.context.ContextLoaderListener failed: org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name 'quartzScheduler' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Could not resolve placeholder 'quartz.driverDelegateClass'.
org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name 'quartzScheduler' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Could not resolve placeholder 'quartz.driverDelegateClass'
 at org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.processProperties(PropertyPlaceholderConfigurer.java:268)
 at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:75)
 at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:553)
 at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:527)
 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:362)
 at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
 at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
 at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:46)
 at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)

Demi God Google has an answer to this.

It is not filed against Endeca. However if you see that error, it just means that something is wrong. Well at-least this is similar to Cannot send data, Receive data error in Essbase ๐Ÿ˜‰

I went back and looked at the properties file and realized the mistake. I was using instead of /.
is considered as an escape character.

File corrected and started again. This time it complaining about DB connection!!!!

java.sql.SQLException: Cannot get working DB connection!

What!!! It never asked me to create one and it is complaining about a working DB connection. This one drove me crazy, however the answer was there in DataIntegratorServer.pdf

If you look under Examples of DB Connection Configuration, it says if you are using a properties file you should add the following entry. 

jdbc.driverClassName=org.apache.derby.jdbc.EmbeddedDriver
jdbc.url=jdbc:derby:databases/cloverDb;create=true
jdbc.username=clover
jdbc.password=clover
jdbc.dialect=org.hibernate.dialect.DerbyDialect

Well that should be there in the install guide.

Look under E:OracleMiddlewareuser_projectsdomainsAzgardEndecaETLServerdatabases and use the name of the Derby database (instead of cloverDb)created there. (This one is created by default)

Issues 3 and 4 down ๐Ÿ™‚

Endeca IAS issue

If you are installing Integrator Acquisition System (IAS) then you’ll see that ias-setup.bat went away after sometime, I was under an impression that it configured the domain. However it didn’t. When I tried to start IAS using startWeblogic.cmd it complained about the usage of wrong garbage collection.

Unknown option or illegal argument: -XX:+UseParallelGC.
Please check for incorrect spelling or review documentation of startup options.

ias-setup.bat uses jrockit as the JDK and for jrockit you must use -Xgc:genpar instead of XX:+UseParallelOldGC

This can be changed in setIasEnv.cmd under E:OracleMiddlewareEndecaIAS3.1.0bin

Issue 5 down.

Success!!!! I got my first ETL graph created, Sample data loaded to a data domain.

Hope it helps someone


About Celvin Kattookaran

Iโ€™m an EPM Consultant, my primary focus is on Hyperion Planning and Essbase. Some of you from Hyperion Support team might recognize me or have seen my support articles, I was with the WebAnalysis Support Team. I'm an Independent Consultant with โ€œIntekgrate Corporationโ€ based out of Aurora office. Iโ€™m from Godโ€™s Own Country (Kerala, India), lived in all southern states of India, Istanbul and Johannesburg (and of course United States). Iโ€™m core gamer :) and an avid reader. I was awarded Oracle ACE Director for my contributions towards EPM community.


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

One thought on “Endeca Journey begins