fix HashSet in SplitRepeat
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/splitrepeat/SplitRepeatVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/splitrepeat/SplitRepeatVertex.java
index f019fb0..158104f 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/splitrepeat/SplitRepeatVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/splitrepeat/SplitRepeatVertex.java
@@ -91,7 +91,7 @@
             {"FR", "RR"}
     };
     public static Set<String> existKmerString = new HashSet<String>();
-    private Set<Long> readIdSet = new HashSet<Long>();
+    private Set<Long> readIdSet;
     private Set<Long> incomingReadIdSet = new HashSet<Long>();
     private Set<Long> outgoingReadIdSet = new HashSet<Long>();
     private Set<Long> selfReadIdSet = new HashSet<Long>();
@@ -172,7 +172,7 @@
             createdVertexSet.clear();
             while(msgIterator.hasNext()){
                 incomingMsg = msgIterator.next();
-                readIdSet.clear();
+                readIdSet = new HashSet<Long>();
                 for(PositionWritable nodeId : incomingMsg.getNodeIdList()){
                     readIdSet.add(nodeId.getReadId());
                 }
@@ -210,15 +210,15 @@
                         incomingReadIdSet = kmerMap.get(incomingEdge);
                         
                         //set all neighberEdge readId intersection
-                        neighborEdgeIntersection = selfReadIdSet;
+                        neighborEdgeIntersection.addAll(selfReadIdSet);
                         neighborEdgeIntersection.retainAll(outgoingReadIdSet);
                         neighborEdgeIntersection.retainAll(incomingReadIdSet);
                         //set outgoingEdge readId intersection
-                        outgoingEdgeIntersection = selfReadIdSet;
+                        outgoingEdgeIntersection.addAll(selfReadIdSet);
                         outgoingEdgeIntersection.retainAll(outgoingReadIdSet);
                         outgoingEdgeIntersection.removeAll(neighborEdgeIntersection); 
                         //set incomingEdge readId intersection
-                        incomingEdgeIntersection = selfReadIdSet;
+                        incomingEdgeIntersection.addAll(selfReadIdSet);
                         incomingEdgeIntersection.retainAll(incomingReadIdSet);
                         incomingEdgeIntersection.removeAll(neighborEdgeIntersection);
                         
@@ -274,7 +274,9 @@
             while(msgIterator.hasNext()){
                 incomingMsg = msgIterator.next();
                 /** update edgelist to new/created vertex **/
-                switch(incomingMsg.getFlag()){
+                byte meToNeighborDir = incomingMsg.getFlag();
+                byte neighborToMeDir = mirrorDirection(meToNeighborDir);
+                switch(neighborToMeDir){
                     case MessageFlag.DIR_FF:
                         getVertexValue().getFFList().remove(incomingMsg.getSourceVertexId());
                         getVertexValue().getFFList().append(incomingMsg.getCreatedVertexId());
@@ -317,6 +319,7 @@
                     vertex.setVertexId(v.getCreatedVertexId());
                     vertex.setVertexValue(vertexValue);
                 }
+                createdVertexSet.clear();
             }
         }
     }
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/SplitRepeatmallTestSuite.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/SplitRepeatSmallTestSuite.java
similarity index 97%
rename from genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/SplitRepeatmallTestSuite.java
rename to genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/SplitRepeatSmallTestSuite.java
index d87281d..21ffe34 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/SplitRepeatmallTestSuite.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/SplitRepeatSmallTestSuite.java
@@ -40,8 +40,8 @@
 import edu.uci.ics.pregelix.core.util.PregelixHyracksIntegrationUtil;
 
 @SuppressWarnings("deprecation")
-public class SplitRepeatmallTestSuite extends TestSuite {
-    private static final Logger LOGGER = Logger.getLogger(SplitRepeatmallTestSuite.class.getName());
+public class SplitRepeatSmallTestSuite extends TestSuite {
+    private static final Logger LOGGER = Logger.getLogger(SplitRepeatSmallTestSuite.class.getName());
     //P4ForMergeGraph/bin/read
     public static final String PreFix = "data/SplitRepeat"; //"graphbuildresult";
     public static final String[] TestDir = { PreFix + File.separator
@@ -123,7 +123,7 @@
         List<String> onlys = getFileList(PATH_TO_ONLY);
         File testData = new File(PATH_TO_JOBS);
         File[] queries = testData.listFiles();
-        SplitRepeatmallTestSuite testSuite = new SplitRepeatmallTestSuite();
+        SplitRepeatSmallTestSuite testSuite = new SplitRepeatSmallTestSuite();
         testSuite.setUp();
         boolean onlyEnabled = false;
         FileSystem dfs = FileSystem.get(testSuite.conf);
diff --git a/genomix/genomix-pregelix/src/test/resources/only_splitrepeat.txt b/genomix/genomix-pregelix/src/test/resources/only_splitrepeat.txt
new file mode 100644
index 0000000..41cba34
--- /dev/null
+++ b/genomix/genomix-pregelix/src/test/resources/only_splitrepeat.txt
@@ -0,0 +1 @@
+SplitRepeatGraph.xml
\ No newline at end of file