incubator-clerezza-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paolo Castagna (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CLEREZZA-280) creating images on the fly: ConcurrentModificationException
Date Sun, 06 Nov 2011 07:00:52 GMT

    [ https://issues.apache.org/jira/browse/CLEREZZA-280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13144948#comment-13144948
] 

Paolo Castagna commented on CLEREZZA-280:
-----------------------------------------

Latest TDB release has a MRSW concurrency policy.

TDB currently checks when someone do not obey to that policy:

    private void checkConcurrency()
    {
        long R, W ;
        synchronized (this)
        {
            R = readCounter.get() ;
            W = writeCounter.get() ;
        }

        if ( R > 0 && W > 0 )
            policyError(R, W) ;
        if ( W > 1 )
            policyError(R, W) ;
    }

and a ConcurrentModificationException is thrown.

Support for transactions has been also added to TDB (not released yet):
http://openjena.org/wiki/TDB/Transactions
                
> creating images on the fly: ConcurrentModificationException
> -----------------------------------------------------------
>
>                 Key: CLEREZZA-280
>                 URL: https://issues.apache.org/jira/browse/CLEREZZA-280
>             Project: Clerezza
>          Issue Type: Bug
>            Reporter: Tsuyoshi Ito
>
> [qtp2107786874-17] WARN org.eclipse.jetty.util.log - /img/original/uruguay_guri_2808-200x187.gif
> java.util.ConcurrentModificationException
>         at com.hp.hpl.jena.tdb.store.GraphTDBBase$MapperIteratorTriples.checkCourrentModification(GraphTDBBase.java:209)
>         at com.hp.hpl.jena.tdb.store.GraphTDBBase$MapperIteratorTriples.hasNext(GraphTDBBase.java:217)
>         at org.apache.clerezza.rdf.jena.storage.JenaGraphAdaptor$1.hasNext(JenaGraphAdaptor.java:80)
>         at org.apache.clerezza.rdf.core.impl.AbstractTripleCollection$1.hasNext(AbstractTripleCollection.java:77)
>         at org.apache.clerezza.rdf.core.access.LockingIterator.hasNext(LockingIterator.java:47)
>         at org.apache.clerezza.rdf.utils.UnionMGraph$1.hasNext(UnionMGraph.java:90)
>         at org.apache.clerezza.rdf.core.impl.AbstractTripleCollection$1.hasNext(AbstractTripleCollection.java:77)
>         at org.apache.clerezza.rdf.utils.GraphNode$5.hasNext(GraphNode.java:269)
>         at org.apache.clerezza.rdf.utils.GraphNode$4.prepareNext(GraphNode.java:223)
>         at org.apache.clerezza.rdf.utils.GraphNode$4.<init>(GraphNode.java:203)
>         at org.apache.clerezza.rdf.utils.GraphNode.getLiterals(GraphNode.java:201)
>         at org.apache.clerezza.platform.content.InfoDiscobit.getContentType(InfoDiscobit.java:61)
>         at org.apache.clerezza.platform.content.InfoDiscobitWriter.writeTo(InfoDiscobitWriter.java:64)
>         at org.apache.clerezza.platform.content.InfoDiscobitWriter.writeTo(InfoDiscobitWriter.java:42)
>         at org.apache.clerezza.triaxrs.ResponseProcessor$1.writeTo(ResponseProcessor.java:326)
>         at org.apache.clerezza.triaxrs.ResponseProcessor$1.access$200(ResponseProcessor.java:273)
>         at org.apache.clerezza.triaxrs.ResponseProcessor$1$3.run(ResponseProcessor.java:306)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAs(Subject.java:396)
>         at org.apache.clerezza.triaxrs.ResponseProcessor$1.writeTo(ResponseProcessor.java:302)
>         at org.wymiwyg.wrhapi.osgi.OsgiWebServerFactory$1.service(OsgiWebServerFactory.java:112)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
>         at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:109)
>         at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:75)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:527)
>         at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:423)
>         at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
>         at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:930)
>         at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358)
>         at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>         at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:866)
>         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>         at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
>         at org.eclipse.jetty.server.Server.handle(Server.java:337)
>         at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:595)
>         at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1038)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:549)
>         at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:211)
>         at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:424)
>         at org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:489)
>         at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
>         at java.lang.Thread.run(Thread.java:619)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message