[
http://jira.magnolia-cms.com/browse/MAGNOLIA-2695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jan Haderka updated MAGNOLIA-2695:
----------------------------------
Summary: Activation fails for nodes with long names when name is
longer then max filename length of underlying file system (was: Activation
fails for nodes with a name that is longer than about 220 characters)
Component/s: activation
Fix Version/s: 3.6.x
4.0.2
4.1
Affects Version/s: 3.6.5
4.0.1
Assignee: Jan Haderka (was: Philipp Bärfuss)
> Activation fails for nodes with long names when name is longer then max
> filename length of underlying file system
> -----------------------------------------------------------------------------------------------------------------
>
> Key: MAGNOLIA-2695
> URL: http://jira.magnolia-cms.com/browse/MAGNOLIA-2695
> Project: Magnolia
> Issue Type: Bug
> Components: activation
> Affects Versions: 4.0.1, 3.6.5
> Environment: OpenJDK 1.6.0 on CentOS 5.3 64bit with ext3 filesystem,
> Magnolia OnAir 4.0.1
> Reporter: Manfred Stock
> Assignee: Jan Haderka
> Priority: Minor
> Fix For: 3.6.x, 4.0.2, 4.1
>
>
> We've got a case where we automatically generate node names that can become
> longer than about 220 characters. This seems to be no problem in the author
> instance, but the activation of such a node fails with the following
> exception:
> {noformat}
> 2009-04-21 10:55:33,826 ERROR
> .magnolia.module.exchangesimple.BaseSyndicatorImpl: Exchange: activation
> failed for
> path:/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> java.io.IOException: File name too long
> at java.io.UnixFileSystem.createFileExclusively(Native Method)
> at java.io.File.checkAndCreate(File.java:1716)
> at java.io.File.createTempFile(File.java:1804)
> at
> info.magnolia.module.exchangesimple.BaseSyndicatorImpl.addResources(BaseSyndicatorImpl.java:568)
> at
> info.magnolia.module.exchangesimple.BaseSyndicatorImpl.collect(BaseSyndicatorImpl.java:529)
> at
> info.magnolia.module.exchangesimple.BaseSyndicatorImpl.activate(BaseSyndicatorImpl.java:293)
> at
> info.magnolia.module.exchangesimple.BaseSyndicatorImpl.activate(BaseSyndicatorImpl.java:262)
> at
> info.magnolia.module.admininterface.commands.ActivationCommand.execute(ActivationCommand.java:103)
> at
> info.magnolia.commands.MgnlCommand.executePooledOrSynchronized(MgnlCommand.java:173)
> at info.magnolia.commands.MgnlCommand.execute(MgnlCommand.java:160)
> at
> info.magnolia.cms.servlets.CommandBasedMVCServletHandler.execute(CommandBasedMVCServletHandler.java:99)
> at info.magnolia.cms.servlets.MVCServlet.doPost(MVCServlet.java:122)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at
> info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:164)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:115)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:75)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:57)
> at
> info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:118)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:82)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:88)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:84)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.enterprise.registration.RegistrationFilter.doFilter(RegistrationFilter.java:50)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:84)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:87)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96)
> at
> info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
> at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
> at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
> at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
> at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
> at
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
> at java.lang.Thread.run(Thread.java:636)
> 2009-04-21 10:55:33,831 WARN
> .magnolia.module.exchangesimple.BaseSyndicatorImpl: moving files from failed
> activation to *.failed1240304133831
> 2009-04-21 10:55:33,832 DEBUG
> .magnolia.module.exchangesimple.BaseSyndicatorImpl: Cleaning temporary files
> 2009-04-21 10:55:33,832 DEBUG
> .magnolia.module.exchangesimple.BaseSyndicatorImpl: Clean temporary store -
> nothing to do
> 2009-04-21 10:55:33,832 ERROR
> a.module.admininterface.commands.ActivationCommand: can't activate
> java.lang.NullPointerException
> at
> info.magnolia.module.exchangesimple.BaseSyndicatorImpl.activate(BaseSyndicatorImpl.java:308)
> at
> info.magnolia.module.exchangesimple.BaseSyndicatorImpl.activate(BaseSyndicatorImpl.java:262)
> at
> info.magnolia.module.admininterface.commands.ActivationCommand.execute(ActivationCommand.java:103)
> at
> info.magnolia.commands.MgnlCommand.executePooledOrSynchronized(MgnlCommand.java:173)
> at info.magnolia.commands.MgnlCommand.execute(MgnlCommand.java:160)
> at
> info.magnolia.cms.servlets.CommandBasedMVCServletHandler.execute(CommandBasedMVCServletHandler.java:99)
> at info.magnolia.cms.servlets.MVCServlet.doPost(MVCServlet.java:122)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at
> info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:164)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:115)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:75)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:57)
> at
> info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:118)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:82)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:88)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:84)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.enterprise.registration.RegistrationFilter.doFilter(RegistrationFilter.java:50)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:84)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:87)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96)
> at
> info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
> at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
> at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
> at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
> at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
> at
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
> at java.lang.Thread.run(Thread.java:636)
> {noformat}
> One can reproduce the issue in the JCR browser of the author instance by
> creating e.g. a datafolder with a name that is at least 221 characters long.
> A subsequent activation will fail.
> The problem seems to be that some temporary file names that get created in
> {{BaseSyndicatorImpl}} contain the node name, but there is no check which
> ensures that the complete filename is shorter than the maximum of 255
> characters supported by most filesystems.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.magnolia-cms.com/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
----------------------------------------------------------------
For list details see
http://www.magnolia-cms.com/home/community/mailing-lists.html
To unsubscribe, E-mail to: <[email protected]>
----------------------------------------------------------------