Send notification not working : Could not determine type of dynamic identity thrown

133 views
Skip to first unread message

Bhaskar Mukherjee

unread,
Sep 9, 2011, 10:16:15 AM9/9/11
to ControlTier
Hi,

We are on the way to host Controltier in production staging. All are working fine except the mailing_service_configuration. 

In DEV env mailing service was working fine but in Prod staging when we create any job with send notification option and run it [by clicking create and run] ControlTier throws an exception like "could not determine type of dynamic entity", however if I omit the send notification, option job is created and executes successfully. The prod stage env is not directly accessible, one has to do ssh-tunnel to the port where jetty is running.

I observed the jetty-log 2 things seems to be coming out.

1. Maling service is running in linux host CENT OS. What else configuration is needed for grail mail plugin?

2. I am getting additional error in log "Could not able to open ObjectInputstream to Socket"[addr=**.*****.***.***/8X.1XX.15X.1XX,port=53365,localport=1055]
This address is a foreign host where our monitoring system (Nagios) is running. Why it is trying to connect there? Is it somehow related with above mentioned problem?

Please help. If you feel the above mentioned information is not sufficient then please give shout. 
Any suggestion highly appreciated.

I have given the  trace of jetty-log :
============================================================================
ERROR - Executing action [saveAndExec] of controller [ScheduledExecutionController]  caused exception: org.springframework.orm.hibernate3.HibernateSystemExc
eption: could not determine type of dynamic entity; nested exception is org.hibernate.HibernateException: could not determine type of dynamic entity
org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Executing action [saveAndExec] of controller [ScheduledExecutionControll
er]  caused exception: org.springframework.orm.hibernate3.HibernateSystemException: could not determine type of dynamic entity; nested exception is org.hibe
rnate.HibernateException: could not determine type of dynamic entity
        at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.executeAction(SimpleGrailsControllerHelper.java:250)
        at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.handleURI(SimpleGrailsControllerHelper.java:202)
        at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.handleURI(SimpleGrailsControllerHelper.java:137)
        at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsController.handleRequest(SimpleGrailsController.java:88)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet.doDispatch(GrailsDispatcherServlet.java:255)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:563)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
        at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
        at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)
        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
        at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(WebUtils.java:301)
        at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(WebUtils.java:277)
        at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(WebUtils.java:269)
        at org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.doFilterInternal(UrlMappingsFilter.java:187)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.obtainContent(GrailsPageFilter.java:249)
        at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.doFilter(GrailsPageFilter.java:140)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequestFilter.doFilterInternal(GrailsWebRequestFilter.java:65)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.codehaus.groovy.grails.web.filters.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:63)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
        at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
        at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
        at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
        at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
        at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:536)
        at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:930)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:405)
        at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
        at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:451)
Caused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.springframework.orm.hibernate3.HibernateSystemException: could not determine type of dynamic entity; nested exception is org.hibernate.HibernateException: could not determine type of dynamic entity
        at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:92)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1049)
        at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:923)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:880)
        at groovy.lang.Closure.call(Closure.java:279)
        at groovy.lang.Closure.call(Closure.java:274)
        at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.handleAction(SimpleGrailsControllerHelper.java:377)
        at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.executeAction(SimpleGrailsControllerHelper.java:244)
        ... 61 more
Caused by: org.springframework.orm.hibernate3.HibernateSystemException: could not determine type of dynamic entity; nested exception is org.hibernate.HibernateException: could not determine type of dynamic entity
        at ExecutionService.createExecution(ExecutionService.groovy:920)
        at ExecutionService$$FastClassByCGLIB$$38316c9d.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
        at ExecutionService$$EnhancerByCGLIB$$604309e4.createExecution(<generated>)
        at ExecutionService$createExecution.call(Unknown Source)
        at ScheduledExecutionController$_closure38.doCall(ScheduledExecutionController.groovy:2024)
        at ScheduledExecutionController$_closure38.call(ScheduledExecutionController.groovy)
        at ScheduledExecutionController.invokeMethod(ScheduledExecutionController.groovy)
        at ScheduledExecutionController$_closure37.doCall(ScheduledExecutionController.groovy:1961)
        at ScheduledExecutionController$_closure37.doCall(ScheduledExecutionController.groovy)
        at ScheduledExecutionController.invokeMethod(ScheduledExecutionController.groovy)
        at ScheduledExecutionController$_closure24.doCall(ScheduledExecutionController.groovy:995)
        at ScheduledExecutionController$_closure24.doCall(ScheduledExecutionController.groovy)
Caused by: org.hibernate.HibernateException: could not determine type of dynamic entity
        ... 13 more
ERROR - Could not open ObjectInputStream to Socket[addr=**.*****.***.***/8X.1XX.15X.1XX,port=53365,localport=1055]
java.io.EOFException
        at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2280)
        at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2749)
        at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:779)
        at java.io.ObjectInputStream.<init>(ObjectInputStream.java:279)
        at org.apache.log4j.net.SocketNode.<init>(SocketNode.java:55)
        at com.controltier.ctlcenter.services.InputServer$worker.run(InputServer.java:83)
        at java.lang.Thread.run(Thread.java:662)
=================================================================

:

--

With warm regards,

Bhaskar Mukherjee
Slough, United Kingdom


Bhaskar Mukherjee

unread,
Sep 15, 2011, 11:22:25 AM9/15/11
to ControlTier
Hi Gents,

Any ideas on this? Not able to resolve till now.

Need your help.

Regards,
Bhaskar

Bhaskar Mukherjee

unread,
Sep 29, 2011, 11:00:32 AM9/29/11
to ControlTier
Hi Moses/Anthony,

Could you please help us regarding the below mentioned issue? Any suggestions/ideas will be very much appreciated.

Thanks,
Bhaskar

Charles Scott

unread,
Sep 29, 2011, 12:12:07 PM9/29/11
to contr...@googlegroups.com

that entity error appears to be a database issue, specifically hibernate.
In fact I have never seen:  "Could not determine type of dynamic identity" accept in hibernate software tutorials .

the method of installation is the 1st thing to wonder about.   


you mentioned ssh tunnels, i hope that is only for accessing the server via a web browser and is not relevant to anything else.

i see that you are having trouble reaching port 1055, the logging port.    

This error:

2. I am getting additional error in log "Could not able to open ObjectInputstream to Socket"[addr=**.*****.***.***/8X.1XX.15X.1XX,port=53365,localport=1055]
This address is a foreign host where our monitoring system (Nagios) is running. Why it is trying to connect there? Is it somehow related with above mentioned problem?

Check within $CTL_BASE/etc (e.g. /opt/ctier/ctl/etc/ directory) directory, see if that address is configured in log4j.properties  

and for ctlcenter may have a reference to such a logging host, /opt/ctier/ctlcenter/ctlcenter-config.properties.

Given your logging host  you may not be able to reach port 1055 on that address you have masked out.  

using this information here:
Socket"[addr=**.*****.***.***/8X.1XX.15X.1XX,port=53365,localport=1055

can you telnet to port 1055 for that address from the ctier server you have censored above?   


If you cannot, then you need to open that port or use an address that is reachable.



Are you running a local smtp service on the controltier server?   E.g sendmail, postfix, etc that binds to port 25? 

A fresh installation might be best here, not sure.
--
You received this message because you are subscribed to the Google Groups "ControlTier" group.
To post to this group, send email to contr...@googlegroups.com
To unsubscribe from this group, send email to controltier...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/controltier?hl=en
http://wiki.controltier.org

Bhaskar Mukherjee

unread,
Sep 30, 2011, 6:20:14 AM9/30/11
to contr...@googlegroups.com
Hi Charles,

Thanks a lot for replying.

We have used zip based installation here. Then customized according to our environment, defining different roles and custom workflows. Even I am also not sure about this as we have been running exact same configuration in 3 different envs,only prod it is giving error. Multiple time I have reintalled but it resolves same.

Coming to your points:

1. "you mentioned ssh tunnels, i hope that is only for accessing the server via a web browser and is not relevant to anything else."
--Exactly that is , eventhough I mentioned it could add some value.

2. "Check within $CTL_BASE/etc (e.g. /opt/ctier/ctl/etc/ directory) directory, see if that address is configured in log4j.properties and for ctlcenter may have a reference to such a logging host, /opt/ctier/ctlcenter/ctlcenter-config.properties."
-- This address is not configured in log4j.properties, neither ctlcenter refers to this logging host. However, the property grails.serverURL has got the full URL of ctlcenter web-app. No trace of the logging host. Even I executed a search command covering the entire directory of ControlTier for that logging host entry, that also resulted null (except log files quoting errors)

3. "can you telnet to port 1055 for that address from the ctier server you have censored above?"
-- NO I can not. I think that is the reason it is getting that error, but I was trying to find out why it was referring to that host   which has no connection.

Regards,
Bhaskar
Reply all
Reply to author
Forward
0 new messages