Details
-
Bug
-
Resolution: Fixed
-
Major
-
5.3
-
FreeBSD 11.2, Jetty 9.4.12.
-
Unknown
-
N/A
-
N/A
-
Description
I got an ArrayIndexOutOfBoundsException while doing some heavy XAR importing (and there might have been more than one import running in parallel by accident).
It looks very similar to https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6231579 i.e. incorrectly using a java.text.SimpleDateFormat from multiple threads without synchronization in com.xpn.xwiki.objects.DateProperty.toText().
Here is the backtrace:
2019-05-29 12:24:21,015 [http://xwikitest:8080/xwiki/rest/wikis/xwiki] ERROR .o.i.DefaultObservationManager - Failed to send event [org.xwiki.bridge.event.DocumentUpdatedEvent@1abfb2c4] to listener [com.xpn.xwiki.internal.event.XObjectEventGeneratorListener@492ce4c7] }} {{java.lang.ArrayIndexOutOfBoundsException: 98}} {{ at sun.util.calendar.BaseCalendar.getCalendarDateFromFixedDate(BaseCalendar.java:453)}} {{ at java.util.GregorianCalendar.computeFields(GregorianCalendar.java:2397)}} {{ at java.util.GregorianCalendar.computeFields(GregorianCalendar.java:2312)}} {{ at java.util.Calendar.complete(Calendar.java:2268)}} {{ at java.util.Calendar.get(Calendar.java:1826)}} {{ at java.text.SimpleDateFormat.subFormat(SimpleDateFormat.java:1119)}} {{ at java.text.SimpleDateFormat.format(SimpleDateFormat.java:966)}} {{ at java.text.SimpleDateFormat.format(SimpleDateFormat.java:936)}} {{ at java.text.DateFormat.format(DateFormat.java:305)}} {{ at java.text.Format.format(Format.java:157)}} {{ at com.xpn.xwiki.objects.DateProperty.toText(DateProperty.java:63)}} {{ at com.xpn.xwiki.objects.BaseObject.getDiff(BaseObject.java:272)}} {{ at com.xpn.xwiki.doc.XWikiDocument.getObjectDiff(XWikiDocument.java:6303)}} {{ at com.xpn.xwiki.internal.event.XObjectEventGeneratorListener.onDocumentUpdatedEvent(XObjectEventGeneratorListener.java:137)}} {{ at com.xpn.xwiki.internal.event.XObjectEventGeneratorListener.onEvent(XObjectEventGeneratorListener.java:84)}} {{ at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:304)}} {{ at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:269)}} {{ at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1812)}} {{ at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1718)}} {{ at com.xpn.xwiki.plugin.packaging.Package.installDocument(Package.java:911)}} {{ at com.xpn.xwiki.plugin.packaging.Package.install(Package.java:704)}} {{ at com.xpn.xwiki.plugin.packaging.PackageAPI.install(PackageAPI.java:314)}} {{ at org.xwiki.rest.internal.resources.wikis.WikiResourceImpl.importXAR(WikiResourceImpl.java:129)}} {{ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)}} {{ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)}} {{ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)}} {{ at java.lang.reflect.Method.invoke(Method.java:498)}} {{ at org.restlet.ext.jaxrs.internal.wrappers.AbstractMethodWrapper.internalInvoke(AbstractMethodWrapper.java:162)}} {{ at org.restlet.ext.jaxrs.internal.wrappers.ResourceMethod.invoke(ResourceMethod.java:283)}} {{ at org.restlet.ext.jaxrs.JaxRsRestlet.invokeMethod(JaxRsRestlet.java:997)}} {{ at org.restlet.ext.jaxrs.JaxRsRestlet.handle(JaxRsRestlet.java:746)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Router.doHandle(Router.java:422)}} {{ at org.restlet.routing.Router.handle(Router.java:641)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.engine.application.StatusFilter.doHandle(StatusFilter.java:140)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)}} {{ at org.restlet.engine.application.ApplicationHelper.handle(ApplicationHelper.java:77)}} {{ at org.restlet.Application.handle(Application.java:385)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Router.doHandle(Router.java:422)}} {{ at org.restlet.routing.Router.handle(Router.java:641)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.routing.Router.doHandle(Router.java:422)}} {{ at org.restlet.routing.Router.handle(Router.java:641)}} {{ at org.restlet.routing.Filter.doHandle(Filter.java:150)}} {{ at org.restlet.routing.Filter.handle(Filter.java:197)}} {{ at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)}} {{ at org.restlet.Component.handle(Component.java:408)}} {{ at org.restlet.Server.handle(Server.java:507)}} {{ at org.restlet.engine.connector.ServerHelper.handle(ServerHelper.java:63)}} {{ at org.restlet.engine.adapter.HttpServerHelper.handle(HttpServerHelper.java:143)}} {{ at org.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:1117)}} {{ at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)}} {{ at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)}} {{ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)}} {{ at org.xwiki.wysiwyg.filter.XWikiContextInitializationFilter.doFilter(XWikiContextInitializationFilter.java:85)}} {{ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)}} {{ at org.xwiki.container.servlet.filters.internal.SetHTTPHeaderFilter.doFilter(SetHTTPHeaderFilter.java:63)}} {{ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)}} {{ at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208)}} {{ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)}} {{ at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111)}} {{ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)}} {{ at org.xwiki.resource.servlet.RoutingFilter.doFilter(RoutingFilter.java:134)}} {{ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)}} {{ at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)}} {{ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)}} {{ at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)}} {{ at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)}} {{ at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)}} {{ at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)}} {{ at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)}} {{ at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)}} {{ at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)}} {{ at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)}} {{ at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)}} {{ at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)}} {{ at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)}} {{ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)}} {{ at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)}} {{ at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)}} {{ at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)}} {{ at org.eclipse.jetty.server.Server.handle(Server.java:503)}} {{ at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)}} {{ at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)}} {{ at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)}} {{ at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)}} {{ at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)}} {{ at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)}} {{ at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)}} {{ at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)}} {{ at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)}} {{ at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)}} {{ at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)}} {{ at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)}} {{ at java.lang.Thread.run(Thread.java:748)
Attachments
Issue Links
- is related to
-
XWIKI-9845 WikiStream XAR module fail to parse/serialize StaticListClass object property
- Closed