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.

Reply via email to