Hi list
I'm trying to figure out why our Magnolia 3 RC2 application is so
slow. We have already changed from Derby to BerkeleyDB. Now I'm
taking a closer look at the log of the public instance, and I am
seeing two things:
1. java.io.FileNotFoundException:
/Library/magnolia-3.0-rc2_with_tomcat/tomcat/webapps/magnoliaPublic/
cache/ (No such file or directory)
The full stack is below.
Instead of the (No such file or directory), the error message
sometimes says (Is a directory). I have seen the same error message
triggered by java.io.FileInputStream.open and
java.io.FileOutputStream.open.
I have seen the exception in some posts and jira issues (for example,
MAGNOLIA-982), but in each case they don't seem to be the main
problem that is being reported.
2. Two types of info messages, usually in pairs (Streaming from...
and creating file...):
INFO info.magnolia.cms.cache.BaseCacheManager BaseCacheManager.java
(streamFromCache:243) 04.10.2006 17:07:35 Streaming from cache /
mailform/headerImage/header30_1.jpg, not compressed
INFO info.magnolia.cms.cache.simple.CacheImpl CacheImpl.java
(cacheRequest:56) 04.10.2006 17:07:35 creating file /Library/
magnolia-3.0-rc2_with_tomcat/tomcat/webapps/magnoliaPublic/cache/
mailform/headerImage/header30_1.jpg
In our application, I get more than ten of these info messages per
page, mostly from navigation images. It seems that for the .html
resources, the create-message is only printed the first time the
cache is built, but the streaming-message is logged every time. For
the .jpg or .gif resources, both messages are logged every time the
page is called.
As you can see in the error messages, I have also found the two
problems in the Tomcat & Magnolia bundle straight from the Magnolia
website, installed on my Mac. I have made no changes whatsoever.
Did I miss something when setting up our application and the
magnoliaPublic instance from the Magnolia website? There were no
exceptions when starting up Tomcat. Or are these bugs that need to
get fixed still? Do you see the exceptions and info messages in your
logs, too?
I am thinking that all the print statements is what slows our
application down...
Thanks for any insights,
Anne
ERROR info.magnolia.cms.cache.simple.CacheImpl CacheImpl.java
(streamFromCache:184) 04.10.2006 16:15:38 Error while reading cache
for: '/'.
java.io.FileNotFoundException: /Library/magnolia-3.0-rc2_with_tomcat/
tomcat/webapps/magnoliaPublic/cache/ (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at info.magnolia.cms.cache.simple.CacheImpl.streamFromCache
(CacheImpl.java:169)
at
info.magnolia.cms.cache.DefaultCacheManager.doStreamFromCache
(DefaultCacheManager.java:101)
at info.magnolia.cms.cache.BaseCacheManager.streamFromCache
(BaseCacheManager.java:245)
at
info.magnolia.cms.cache.ManageableCacheManager.streamFromCache
(ManageableCacheManager.java:142)
at info.magnolia.cms.cache.CacheFilter.doFilter
(CacheFilter.java:65)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:157)
at info.magnolia.cms.filters.MagnoliaManagedFilter
$CustomFilterChain.doFilter(MagnoliaManagedFilter.java:80)
at info.magnolia.cms.filters.UnsetContextFilter.doFilter
(UnsetContextFilter.java:44)
at info.magnolia.cms.filters.MagnoliaManagedFilter
$CustomFilterChain.doFilter(MagnoliaManagedFilter.java:84)
at info.magnolia.cms.security.SecurityFilter.doFilter
(SecurityFilter.java:96)
at info.magnolia.cms.filters.MagnoliaManagedFilter
$CustomFilterChain.doFilter(MagnoliaManagedFilter.java:84)
at info.magnolia.cms.filters.MultipartRequestFilter.doFilter
(MultipartRequestFilter.java:80)
at info.magnolia.cms.filters.MagnoliaManagedFilter
$CustomFilterChain.doFilter(MagnoliaManagedFilter.java:84)
at info.magnolia.cms.filters.ContentTypeFilter.doFilter
(ContentTypeFilter.java:66)
at info.magnolia.cms.filters.MagnoliaManagedFilter
$CustomFilterChain.doFilter(MagnoliaManagedFilter.java:84)
at info.magnolia.cms.filters.MagnoliaManagedFilter.doFilter
(MagnoliaManagedFilter.java:53)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at
org.apache.catalina.core.StandardContextValve.invokeInternal
(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service
(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:552)
----------------------------------------------------------------
for list details see
http://www.magnolia.info/en/magnolia/developer.html
----------------------------------------------------------------