You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Andy Seaborne (JIRA)" <ji...@apache.org> on 2012/04/30 23:03:49 UTC

[jira] [Issue Comment Edited] (JENA-239) Cannot insert a triple into JenaTDB through Fuseki's sparql update functionality.

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

Andy Seaborne edited comment on JENA-239 at 4/30/12 9:03 PM:
-------------------------------------------------------------

jena-fuseki-0.2.2-incubating-20120411.050809-12 is the latest build (11th April) not 20120405-0506 (5th April).  (Also, the version id looks strange - it should date-time and time is 6 numbers, not 4).

It would be helpful if you can provide a complete, minimal example.  You have run the server with multiple datasets with existing data in them - if the situation can be reproduced with just one, especially an empty, fresh dataset that would be useful information in the report.

This looks like a different error - it manifests in a similar way but it is not to the initial report.

That particular error ("not a node") is caused here by "False"^^xsd:boolean.  While the system should not crash, this isn't what you want - "False" is not a legal lexical form for a boolean.  "false" or "0" are.  SPARQL has a keyword false (any case) for this.

Please could you try on an fresh, empty dataset each time, the following:

PREFIX xsd:     <http://www.w3.org/2001/XMLSchema#>
PREFIX : <http://example/>

INSERT DATA { :s :p 'False'^^xsd:boolean }

and

PREFIX xsd:     <http://www.w3.org/2001/XMLSchema#>
PREFIX : <http://example/>

INSERT DATA { :s :p 'false'^^xsd:boolean }

which is the two cases of legal and illegal lexical forms.  Then, we might know if the situation is due to the state of the database or solely the request.

                
      was (Author: andy.seaborne):
    jena-fuseki-0.2.2-incubating-20120411.050809-12 is the latest build (11th April) not 20120405-0506 (5th April).  (Also, the version id looks strange - it should date-time and time is 6 numbers, not 4).

It would be helpful if you can provide a complete, minimal example.  You have run the server with multiple datasets with existing data in them - if the situation can be reproduced with just one, especially an empty, fresh dataset that would be useful information in the report.

This looks like a different error - it manifests in a similar way but it is not to the initial report.

That particular error ("not a node") is caused here by "False"^^xsd:boolean.  While the system should not crash, this isn't what you want - "False" is not a legal lexical form for a boolean.  "false" or "0" are.  SPARQL has a keyword false (any case) for this.

Please could you try on an fresh, empty dataset each time, the following:

REFIX xsd:     <http://www.w3.org/2001/XMLSchema#>
PREFIX : <http://example/>

INSERT DATA { :s :p 'False'^^xsd:boolean }

and

PREFIX xsd:     <http://www.w3.org/2001/XMLSchema#>
PREFIX : <http://example/>

INSERT DATA { :s :p 'false'^^xsd:boolean }

which is the two cases of legal and illegal lexical forms.  Then, we might know if the situation is due to the state of the database or solely the request.

                  
> Cannot insert a triple into JenaTDB through Fuseki's sparql update functionality.
> ---------------------------------------------------------------------------------
>
>                 Key: JENA-239
>                 URL: https://issues.apache.org/jira/browse/JENA-239
>             Project: Apache Jena
>          Issue Type: Bug
>            Reporter: Rahul Sharma
>
> Created a TDB database using bulkloader (using Jena-TDB-0.8.10 libraries). Trying to insert a triple using fuseki's sparql update functionality and keeps getting error:
> Different ids for http://xxxxxx.xxxx.xxx.xx/xx/company/99999999: allocated: ex
> pected [000000000007E5ED], got [000000000007DEF4]
> >>>>>>>>>>
> label = nodes
> txn = Transaction: 1 : Mode=WRITE : State=PREPARING : E:\Rahul\fuseki\Dataset\
> offset = 517613
> journalStartOffset = 1785
> journal = nodes.dat-jrnl
> 12:49:05 WARN  SPARQL_Update$HttpActionUpdate :: Transaction still active in end
> Writer - no commit or abort seen (forced abort)
> 12:49:05 WARN  SPARQL_Update$HttpActionUpdate :: Exception in forced abort (tryi
> ng to continue)
> com.hp.hpl.jena.tdb.transaction.TDBTransactionException: Transaction has already
>  committed or aborted
>         at com.hp.hpl.jena.tdb.transaction.Transaction.abort(Transaction.java:14
> 6)
>         at com.hp.hpl.jena.tdb.transaction.DatasetGraphTxn.abort(DatasetGraphTxn
> .java:45)
>         at com.hp.hpl.jena.tdb.transaction.DatasetGraphTransaction._abort(Datase
> tGraphTransaction.java:113)
>         at com.hp.hpl.jena.tdb.migrate.DatasetGraphTrackActive.abort(DatasetGrap
> hTrackActive.java:68)
>         at org.apache.jena.fuseki.servlets.HttpAction.endWrite(HttpAction.java:1
> 20)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.execute(SPARQL_Update.j
> ava:238)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.executeForm(SPARQL_Upda
> te.java:225)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.perform(SPARQL_Update.j
> ava:122)
>         at org.apache.jena.fuseki.servlets.SPARQL_ServletBase.doCommon(SPARQL_Se
> rvletBase.java:92)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.doPost(SPARQL_Update.ja
> va:78)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547
> )
>         at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java
> :480)
>         at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl
> er.java:225)
>         at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl
> er.java:941)
>         at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:
> 409)
>         at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle
> r.java:186)
>         at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle
> r.java:875)
>         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j
> ava:117)
>         at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper
> .java:110)
>         at org.eclipse.jetty.server.Server.handle(Server.java:349)
>         at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.
> java:441)
>         at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpCo
> nnection.java:936)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:801)
>         at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:224)
>         at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpCo
> nnection.java:50)
>         at org.eclipse.jetty.server.nio.BlockingChannelConnector$BlockingChannel
> EndPoint.run(BlockingChannelConnector.java:293)
>         at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo
> l.java:598)
>         at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool
> .java:533)
>         at java.lang.Thread.run(Thread.java:722)
> 12:49:05 WARN  Fuseki               :: [1] RC = 500 : Different ids for http://x
> xxxxx.xxxx.xxx.xx/xx/company/99999999: allocated: expected [000000000007E5ED],
>  got [000000000007DEF4]
> com.hp.hpl.jena.tdb.TDBException: Different ids for http://xxxxxx.xxxx.xxx.xx/
> xx/company/99999999: allocated: expected [000000000007E5ED], got [000000000007DE
> F4]
>         at com.hp.hpl.jena.tdb.transaction.NodeTableTrans.inconsistent(NodeTable
> Trans.java:212)
>         at com.hp.hpl.jena.tdb.transaction.NodeTableTrans.append(NodeTableTrans.
> java:200)
>         at com.hp.hpl.jena.tdb.transaction.NodeTableTrans.writeNodeJournal(NodeT
> ableTrans.java:306)
>         at com.hp.hpl.jena.tdb.transaction.NodeTableTrans.commitPrepare(NodeTabl
> eTrans.java:266)
>         at com.hp.hpl.jena.tdb.transaction.Transaction.prepare(Transaction.java:
> 131)
>         at com.hp.hpl.jena.tdb.transaction.Transaction.commit(Transaction.java:1
> 12)
>         at com.hp.hpl.jena.tdb.transaction.DatasetGraphTxn.commit(DatasetGraphTx
> n.java:40)
>         at com.hp.hpl.jena.tdb.transaction.DatasetGraphTransaction._commit(Datas
> etGraphTransaction.java:107)
>         at com.hp.hpl.jena.tdb.migrate.DatasetGraphTrackActive.commit(DatasetGra
> phTrackActive.java:60)
>         at org.apache.jena.fuseki.servlets.HttpAction.commit(HttpAction.java:105
> )
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.execute(SPARQL_Update.j
> ava:235)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.executeForm(SPARQL_Upda
> te.java:225)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.perform(SPARQL_Update.j
> ava:122)
>         at org.apache.jena.fuseki.servlets.SPARQL_ServletBase.doCommon(SPARQL_Se
> rvletBase.java:92)
>         at org.apache.jena.fuseki.servlets.SPARQL_Update.doPost(SPARQL_Update.ja
> va:78)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547
> )
>         at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java
> :480)
>         at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl
> er.java:225)
>         at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl
> er.java:941)
>         at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:
> 409)
>         at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle
> r.java:186)
>         at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle
> r.java:875)
>         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j
> ava:117)
>         at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper
> .java:110)
>         at org.eclipse.jetty.server.Server.handle(Server.java:349)
>         at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.
> java:441)
>         at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpCo
> nnection.java:936)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:801)
>         at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:224)
>         at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpCo
> nnection.java:50)
>         at org.eclipse.jetty.server.nio.BlockingChannelConnector$BlockingChannel
> EndPoint.run(BlockingChannelConnector.java:293)
>         at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo
> l.java:598)
>         at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool
> .java:533)
>         at java.lang.Thread.run(Thread.java:722)
> 12:49:05 INFO  Fuseki               :: [1] 500 Different ids for http://xxxxxxxx
> /xx/company/99999999: allocated: expected [000000000007E5ED], got [0
> 00000000007DEF4]

--
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