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

Hudson commented on JENA-59:
----------------------------

Integrated in Jena__Development_Test #338 (See 
[https://builds.apache.org/job/Jena__Development_Test/338/])
    Clearing up and handling JENA-59 (Revision 1422902)

     Result = SUCCESS
andy : 
Files : 
* /jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/graph/compose/Delta.java
* 
/jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/graph/compose/Difference.java
* 
/jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/graph/compose/Intersection.java
* 
/jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/graph/compose/test/TestCaseBasic.java
* 
/jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/graph/compose/test/TestDelta.java
* 
/jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/graph/compose/test/TestDifference.java
* 
/jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/graph/compose/test/TestIntersection.java
* 
/jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/graph/compose/test/TestPackage.java

                
> Couple bugs in Delta
> --------------------
>
>                 Key: JENA-59
>                 URL: https://issues.apache.org/jira/browse/JENA-59
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: Jena
>            Reporter: Andy Seaborne
>            Assignee: Andy Seaborne
>
> Transferred from 
> http://sourceforge.net/tracker/?func=detail&aid=3284907&group_id=40417&atid=537167
> re: com.hp.hpl.jena.graph.compose.Delta
> - Delta remove() should not modify base graph.
> - Delta.performAdd(t) and performDelete(t) should not fill up L and R with 
> redundant statements because graphBaseSize() will return the wrong answer.
> Here are fixed versions of these methods (sorry I don't have a patch file; I 
> don't know which directory to checkout and checking out everything takes too 
> long and I'm still waiting for Ctrl-C to finish)
> @Override public void performAdd(Triple t) {
> if (!base.contains(t))
> L.add(t);
> R.delete(t);
> }
> @Override public void performDelete(Triple t) {
> L.delete(t);
> if (base.contains(t))
> R.add(t);
> }
> public class RemoveAppendsToDeletionsIterator extends TrackingTripleIterator {
> public RemoveAppendsToDeletionsIterator(Iterator<Triple> it) { super(it); }
> @Override
> public void remove() {
> if (null == current)
> throw new IllegalStateException();
> getDeletions().add(current);
> current = null;
> }
> }
> @Override
> public ExtendedIterator<Triple> graphBaseFind(TripleMatch tm) {
> return new 
> RemoveAppendsToDeletionsIterator(base.find(tm)).filterDrop(ifIn(GraphUtil.findAll(R))).andThen(L.find(tm));
> }

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