GadgetFeatureRegistry access to features map is not correctly synzchronized
---------------------------------------------------------------------------
Key: SHINDIG-840
URL: https://issues.apache.org/jira/browse/SHINDIG-840
Project: Shindig
Issue Type: Bug
Affects Versions: 1.0.0-rc1, 1.0.x-incubating
Reporter: Vjekoslav Nesek
Priority: Minor
GadgetFeatureRegistry access to features map instance is not correctly
synzchronized. It is easy to
fix by synchronizing either on methods or instance.
HTTP ERROR: 500
INTERNAL_SERVER_ERROR
RequestURI=/homepage/ifr
Caused by:
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
at java.util.HashMap$KeyIterator.next(HashMap.java:828)
at java.util.AbstractCollection.containsAll(AbstractCollection.java:278)
at java.util.AbstractSet.equals(AbstractSet.java:78)
at
java.util.concurrent.ConcurrentHashMap$Segment.get(ConcurrentHashMap.java:338)
at
java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:769)
at
org.apache.shindig.gadgets.GadgetFeatureRegistry.getFeatures(GadgetFeatureRegistry.java:133)
at
org.apache.shindig.gadgets.GadgetFeatureRegistry.getFeatures(GadgetFeatureRegistry.java:116)
at
org.apache.shindig.gadgets.render.RenderingContentRewriter.injectFeatureLibraries(RenderingContentRewriter.java:185)
at
org.apache.shindig.gadgets.render.RenderingContentRewriter.rewrite(RenderingContentRewriter.java:127)
at
org.apache.shindig.gadgets.rewrite.DefaultContentRewriterRegistry.rewriteGadget(DefaultContentRewriterRegistry.java:75)
at
org.apache.shindig.gadgets.render.HtmlRenderer.render(HtmlRenderer.java:77)
at org.apache.shindig.gadgets.render.Renderer.render(Renderer.java:93)
at
org.apache.shindig.gadgets.servlet.GadgetRenderingServlet.render(GadgetRenderingServlet.java:58)
at
org.apache.shindig.gadgets.servlet.GadgetRenderingServlet.doGet(GadgetRenderingServlet.java:93)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1124)
at
org.apache.shindig.auth.AuthenticationServletFilter.doFilter(AuthenticationServletFilter.java:66)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1115)
at
com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:221)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1115)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:361)
at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:757)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:416)
at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
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:324)
at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:502)
at
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:826)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:523)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:377)
at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at
org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:497)
Powered by Jetty://
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.