[Logo] Terracotta Discussion Forums (LEGACY READ-ONLY ARCHIVE)
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
[Expert]
coldfusion War And Terracotta  XML
Forum Index -> Terracotta for Web Sessions
Author Message
baront

neo

Joined: 07/06/2007 01:58:50
Messages: 4
Offline

Hi,

I have had a good look at your product and am very impressed. With many of our applications we have been able to successfully deploy and configure the HTTP Sessions. We do though have an install of Coldfusion deployed as a War successfully on Jrun,Jboss and Tomcat.

When running the Terracotta Sessions configurator with the coldfusion war as supplied by Adobe it deployed successfully before enabling the Terracotta sessions. When we added the terracotta sessions the load up failed to complete. The application is unavailable with the following errors:

If anyone has any suggestions then I would appreciate your feedback. As the war is as supplied I probably can not alter it much to fix the issue.

INFO: Deploying web application archive cfusion.war
05-Jul-2007 16:50:17 org.apache.catalina.session.StandardManager doLoad
SEVERE: IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.apache.catalina.session.StandardSessionFacade
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.apache.catalina.session.StandardSessionFacade
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.defaultReadObject(Unknown Source)
at coldfusion.runtime.J2eeSessionScopeStub.readObject(J2eeSessionScopeStub.java:86)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1392)
at org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:921)
at org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:393)
at org.apache.catalina.session.StandardManager.load(StandardManager.java:320)
at org.apache.catalina.session.StandardManager.start(StandardManager.java:636)
at org.apache.catalina.core.ContainerBase.setManager(ContainerBase.java:431)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4155)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:809)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:698)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:472)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
Caused by: java.io.NotSerializableException: org.apache.catalina.session.StandardSessionFacade
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteObject(Unknown Source)
at coldfusion.runtime.J2eeSessionScopeStub.writeObject(J2eeSessionScopeStub.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeObject(Unknown Source)
at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1468)
at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:938)
at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:516)
at org.apache.catalina.session.StandardManager.unload(StandardManager.java:462)
at org.apache.catalina.session.StandardManager.stop(StandardManager.java:666)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4358)
at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:892)
at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1164)
at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1135)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:312)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1054)
at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1066)
at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:447)
at org.apache.catalina.core.StandardService.stop(StandardService.java:512)
at org.apache.catalina.core.StandardServer.stop(StandardServer.java:743)
at org.apache.catalina.startup.Catalina.stop(Catalina.java:601)
at org.apache.catalina.startup.Catalina.start(Catalina.java:576)
... 6 more
hhuynh

cherubim

Joined: 06/16/2006 11:54:06
Messages: 761
Offline

Hello,

The stack trace wasn't too obvious where TC code comes into the picture. If it's possible, can you provide us the war file? Or a sample war that might leads to the same problem. It'll be greatly useful.

Thank you,

Hung-
tgautier

seraphim

Joined: 06/05/2006 12:19:26
Messages: 1781
Offline

It seems to have something to do with persisted sessions. You should ensure that you start Tomcat without the session manager persisting sessions to and from disk, which is the default.

You should set, either in your server or context.xml files the Manager to be nothing, use a setting like:
Code:
    <Manager pathname="" />
 


[WWW]
baront

neo

Joined: 07/06/2007 01:58:50
Messages: 4
Offline

Hey

Thanks for the prompt reply. The <Manager/> tag certainly helped. FYI i had to change this is both the tomcat 5.5 sandbox. This now allows both the servers to load the coldfusion.war successfully. Without the Terracotta sessions enabled the war deploys and loads a test coldfusion page.

When the web app is loaded with the terracotta sessions enabled then there are no errors on the start but when the same simple test page is run I get the following:

java.lang.IllegalStateException: Unknown local variable 2 : value Ljava/lang/Object;
at com.tc.asm.commons.LocalVariablesSorter.visitLocalVariable(LocalVariablesSorter.java:156)
at com.tc.asm.ClassReader.accept(ClassReader.java:1429)
at com.tc.asm.ClassReader.accept(ClassReader.java:394)
at com.tc.object.bytecode.hook.impl.DefaultWeavingStrategy.transform(DefaultWeavingStrategy.java:269)
at com.tc.object.bytecode.hook.impl.DSOContextImpl.preProcess(DSOContextImpl.java:137)
at com.tc.object.bytecode.hook.impl.ClassProcessorHelper.defineClass0Pre(ClassProcessorHelper.java:439)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:144)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at coldfusion.runtime.TemplateClassLoader$1.fetch(TemplateClassLoader.java:352)
at coldfusion.util.LruCache.get(LruCache.java:180)
at coldfusion.runtime.TemplateClassLoader$TemplateCache.fetchSerial(TemplateClassLoader.java:256)
at coldfusion.util.AbstractCache.fetch(AbstractCache.java:58)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:477)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:79)
at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:27)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.CfmServlet.service(CfmServlet.java:175)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at com.tc.tomcat55.session.SessionValve55.tcInvoke(SessionValve55.java:61)
at com.tc.tomcat55.session.SessionValve55.invoke(SessionValve55.java:48)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
07/11 10:04:29 Error [http-9081-Processor4] - Unknown local variable 2 : value Ljava/lang/Object; The specific sequence of files included or processed is: C:\environment2\terracotta\terracotta-2.4-stable1\tools\sessions\configurator-sandbox\tomcat5.5\9081\webapps\cfusion.war\test.cfm''
java.lang.IllegalStateException: Unknown local variable 2 : value Ljava/lang/Object;
at com.tc.asm.commons.LocalVariablesSorter.visitLocalVariable(LocalVariablesSorter.java:156)
at com.tc.asm.ClassReader.accept(ClassReader.java:1429)
at com.tc.asm.ClassReader.accept(ClassReader.java:394)
at com.tc.object.bytecode.hook.impl.DefaultWeavingStrategy.transform(DefaultWeavingStrategy.java:269)
at com.tc.object.bytecode.hook.impl.DSOContextImpl.preProcess(DSOContextImpl.java:137)
at com.tc.object.bytecode.hook.impl.ClassProcessorHelper.defineClass0Pre(ClassProcessorHelper.java:439)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:144)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at coldfusion.runtime.TemplateClassLoader$1.fetch(TemplateClassLoader.java:352)
at coldfusion.util.LruCache.get(LruCache.java:180)
at coldfusion.runtime.TemplateClassLoader$TemplateCache.fetchSerial(TemplateClassLoader.java:256)
at coldfusion.util.AbstractCache.fetch(AbstractCache.java:58)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:477)
at coldfusion.runtime.TemplateClassLoader.newInstance(TemplateClassLoader.java:434)
at coldfusion.tagext.lang.IncludeTag.setTemplate(IncludeTag.java:156)
at coldfusion.tagext.lang.IncludeTag.setTemplatePath(IncludeTag.java:91)
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:64)
at coldfusion.filter.CfincludeFilter.include(CfincludeFilter.java:33)
at coldfusion.filter.ExceptionFilter.runBuiltInHandler(ExceptionFilter.java:552)
at coldfusion.filter.ExceptionFilter.handleException(ExceptionFilter.java:329)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:84)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.CfmServlet.service(CfmServlet.java:175)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at com.tc.tomcat55.session.SessionValve55.tcInvoke(SessionValve55.java:61)
at com.tc.tomcat55.session.SessionValve55.invoke(SessionValve55.java:48)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
07/11 10:04:29 Error [http-9081-Processor4] - Exception thrown by error-handling template:
07/11 10:04:29 Error [http-9081-Processor4] - Unknown local variable 2 : value Ljava/lang/Object; The specific sequence of files included or processed is: C:\environment2\terracotta\terracotta-2.4-stable1\tools\sessions\configurator-sandbox\tomcat5.5\9081\webapps\cfusion.war\WEB-INF\exception\java\lang\Exception.cfm''
Exception thrown by error-handling template:
java.lang.IllegalStateException: Unknown local variable 2 : value Ljava/lang/Object;
at com.tc.asm.commons.LocalVariablesSorter.visitLocalVariable(LocalVariablesSorter.java:156)
at com.tc.asm.ClassReader.accept(ClassReader.java:1429)
at com.tc.asm.ClassReader.accept(ClassReader.java:394)
at com.tc.object.bytecode.hook.impl.DefaultWeavingStrategy.transform(DefaultWeavingStrategy.java:269)
at com.tc.object.bytecode.hook.impl.DSOContextImpl.preProcess(DSOContextImpl.java:137)
at com.tc.object.bytecode.hook.impl.ClassProcessorHelper.defineClass0Pre(ClassProcessorHelper.java:439)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:144)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at coldfusion.runtime.TemplateClassLoader$1.fetch(TemplateClassLoader.java:352)
at coldfusion.util.LruCache.get(LruCache.java:180)
at coldfusion.runtime.TemplateClassLoader$TemplateCache.fetchSerial(TemplateClassLoader.java:256)
at coldfusion.util.AbstractCache.fetch(AbstractCache.java:58)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.runtime.TemplateClassLoader.findClass(TemplateClassLoader.java:477)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:79)
at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:27)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.CfmServlet.service(CfmServlet.java:175)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at com.tc.tomcat55.session.SessionValve55.tcInvoke(SessionValve55.java:61)
at com.tc.tomcat55.session.SessionValve55.invoke(SessionValve55.java:48)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
siyer

journeyman

Joined: 06/12/2007 07:42:16
Messages: 22
Offline

What version of JDK, Tomcat, Terracotta ?

The stack trace says its an ASM (framework we use for byte code enhancement) bug encountered when trying to instrument coldfusion.util.LruCache. There is a "related" bug at http://jira.terracotta.org/jira/browse/CDV-286 which was fixed earlier and should be in 2.4-stable1.

I created another one for now to track this - http://jira.terracotta.org/jira/browse/CDV-332

Thanks
Sreeni Iyer
Terracotta.
baront

neo

Joined: 07/06/2007 01:58:50
Messages: 4
Offline

siyer wrote:
What version of JDK, Tomcat, Terracotta ?

The stack trace says its an ASM (framework we use for byte code enhancement) bug encountered when trying to instrument coldfusion.util.LruCache. There is a "related" bug at http://jira.terracotta.org/jira/browse/CDV-286 which was fixed earlier and should be in 2.4-stable1.

I created another one for now to track this - http://jira.terracotta.org/jira/browse/CDV-332
 


The Tomcat version is the one used as default by terracotta, Version 5.5. The JDK is again the one provided within terracotta C:\environment2\terracotta\terracotta-2.4-stable1\jre. I am using the terracotta 2.4-stable1

Any suggestions??

Thanks

Nick

ekulesho

master

Joined: 12/04/2006 08:49:08
Messages: 57
Offline

I don't think it is related to CDV-286, because that one wa specific to Java 6.

It sems like our instrumentation is choking on some classes compiled by ColdFusion (probably one compiled from resource \cfusion.war\test.cfm).

Can you please add the following system property to the JVM you are using to start Tomcat:

-Dtc.classloader.writeToDisk.initial=true

It will write all the classes before instrumentation to the folder at <user home>\initial (on windows - "C:\Documents and Settings\<user name>\initial"). Then please find class corresponding to the test.cfm up there and attach it here or on the bug report.
[WWW]
baront

neo

Joined: 07/06/2007 01:58:50
Messages: 4
Offline

Hi,

I have put the whole of the initial file up. The test.cfm is in the root and is called cftest2ecfm700760098.class and the cfException thrown is cfException2ecfm1208463679.class

After looking at the mass of class files produced by the bloat that is coldfusion do you think there will be allot of gotchas within the coldfusion war? Or do you feel that terracotta will be able to provide http session replication ?

Thanks

Nick
 Filename initial.zip [Disk] Download
 Description The output from a coldfusion war on start up
 Filesize 6483 Kbytes
 Downloaded:  459 time(s)

ekulesho

master

Joined: 12/04/2006 08:49:08
Messages: 57
Offline

baront wrote:
I have put the whole of the initial file up. The test.cfm is in the root and is called cftest2ecfm700760098.class and the cfException thrown is cfException2ecfm1208463679.class

After looking at the mass of class files produced by the bloat that is coldfusion do you think there will be allot of gotchas within the coldfusion war? Or do you feel that terracotta will be able to provide http session replication ? 
Thanks Nick. I've reproduced issue using your test case. Apparently CF generate some debug info for variables that aren't being used in the method code and I am pretty sure we can handle this case. Just give us little time. ;-)

regards,
Eugene
[WWW]
teck

seraphim
[Avatar]
Joined: 05/24/2006 15:03:25
Messages: 1128
Offline

I'm not 100% sure, but you might be able to tweak your include/exclude patterns to avoid the issue while you debug on this side.

Unfortunately those problematic classes don't use any package names, and the class name looks like it might be random and/or inconsistent beteween server restarts. Given that, I don't know how we could leverage an exclude pattern in the terracotta config.

From the stack trace it looks like we've already decided that the class should in fact be instrumented by terracotta. Are you using an include pattern of *..*? If so, trimming that down to include those types that will actually be shared might help here (and maybe speed things up).



Tim Eck (terracotta engineer)
zeeiyer

consul

Joined: 05/24/2006 14:28:28
Messages: 493
Offline

Our dev team (Eugene specifically) recently fixed this issue. You should be able to get past this issue, by getting tomorrow evening's nightly build (for the Trunk or 2.4 branch).

Please let us know if that fixes it - but make sure you get tomorrow (July26) or day-after-tomorrow's nightly build.
Thanks

Sreeni Iyer, Terracotta.
Not a member yet - Click here to join the Terracotta Community
teck

seraphim
[Avatar]
Joined: 05/24/2006 15:03:25
Messages: 1128
Offline

The fix was made in revisions 4663 and 4664 in 2.4 and trunk respectively. Thus any 2.4 build at or past rev 4663, or a trunk build at or past 4664 should resolve this issue


Tim Eck (terracotta engineer)
 
Forum Index -> Terracotta for Web Sessions
Go to:   
Powered by JForum 2.1.7 © JForum Team