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

Stephen Allen commented on JENA-76:
-----------------------------------

Also alternatively you could replace the interleaved delete/add triple bit of 
the patch with something that might be more efficient (or use the BulkUpdater):


for ( Triple t : triples )
{
    rawGraph.delete(t) ;
}

for ( Triple t : triples )
{
    Node oldS = t.getSubject(), oldO = t.getObject() ;
    Node newS = oldS.equals(resAsNode) ? newResAsNode : oldS ;
    Node newO = oldO.equals(resAsNode) ? newResAsNode : oldO ;
    
    rawGraph.add(Triple.create(newS, t.getPredicate(), newO));
}
triples.clear();

                
> Resourceutils.renameResource uses Iterator.remove() to make changes - not all 
> iterators support .remove.
> --------------------------------------------------------------------------------------------------------
>
>                 Key: JENA-76
>                 URL: https://issues.apache.org/jira/browse/JENA-76
>             Project: Jena
>          Issue Type: Bug
>          Components: Jena
>            Reporter: Andy Seaborne
>         Attachments: JENA-76-r1185803.patch, JENA-76-r1185845.patch
>
>
> Resourceutils.renameResource uses Iterator.remove() to make changes. TDB does 
> not support Iterator.remove 
> Instead, renameResource could grab a block (say, 1000) items, rename them and 
> loop on blocks of 1000.  This way, the iterator is terminated before updates 
> are done.  The nature of the rename operation means that the find iterator is 
> executed until no resources are found so this batching mechanism does not 
> need to need to track what has and has not been found - just repeat until 
> less than 1000 items found.

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

        

Reply via email to