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

Andy Seaborne commented on JENA-330:
------------------------------------

(only a quick scan for the moment)

Thanks for giving a guide to the patch.

This is quite large although much is due to include autogenerated files  - 
should we wait until after the Jena 2.7.4 to integrate?

Re: 3)

ARQ_UPDATE is partial support for old style SPARQL/Update (the submission, not 
SPARQL 1.1) as a migration.  Its been there a while so it's time to start 
removing it.

SPARQL as spec'ed is LL(1) to make sure it's easy to implement - it means it's 
LALR(1) and also friendly to a hand-written parser, but sometime it has to 
recurse when a loop would be better.  TriplesTemplate is an example of this -

SPARQL 1.1 is finished and wrapping up - after the Jena 2.7.4 we can start 
using better versions oft the parser rules.  It would help me if this is done 
with ifdefs in the grammar so that can be easily revered if needbe (e.g. 
producing the SPARQl spec grammar again).  I'm happy to do that work.

Re: transactional property 

Would it be better to introspect on the dataset via supportsTransactions (or 
for DatasetGraph, see if it supports the Transactional interface).

Re: AbstractUpdateSink etc

com.hp.hpl.jena.update is one of the API packages.  Do all these classes need 
to be in the public API?  .modify is the implementation package.



                
> Streaming support for SPARQL Update queries and streaming support for quads 
> in INSERT DATA / DELETE DATA queries
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: JENA-330
>                 URL: https://issues.apache.org/jira/browse/JENA-330
>             Project: Apache Jena
>          Issue Type: Improvement
>          Components: ARQ
>            Reporter: Stephen Allen
>            Assignee: Stephen Allen
>            Priority: Minor
>         Attachments: config-null.ttl, JENA-330_20121016.patch, 
> TestLargeUpdates.java
>
>
> The SPARQL Update parser currently parses all update queries into a single 
> UpdateRequest object which holds them in memory.  Instead the parser should 
> insert queries into something like a Sink<Update>.  Additionally it should 
> put the quads from INSERT_DATA and DELETE_DATA into a Sink<Quad> instead of 
> an ArrayList.
> This should allow the creation of a streaming update parser, which could be 
> combined with JENA-309 to have full streaming into an underlying 
> transactional store and the ability to handle arbitrarily large INSERT_DATA 
> or DELETE_DATA queries (to the limits of the transaction system).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to