Hadoop TestSuite is completed and P2 pass test
diff --git a/genomix/genomix-data/src/main/java/edu/uci/ics/genomix/type/VKmerBytesWritable.java b/genomix/genomix-data/src/main/java/edu/uci/ics/genomix/type/VKmerBytesWritable.java
index f6061fd..f9ebd15 100644
--- a/genomix/genomix-data/src/main/java/edu/uci/ics/genomix/type/VKmerBytesWritable.java
+++ b/genomix/genomix-data/src/main/java/edu/uci/ics/genomix/type/VKmerBytesWritable.java
@@ -639,6 +639,7 @@
KmerBytesWritable.appendOneByteAtPosition(preKmer.lettersInKmer - initialKmerSize + k - 4 + 1, cacheByte,
bytes, kmerStartOffset, bytesUsed);
clearLeadBit();
+ saveHeader(lettersInKmer);
}
public void mergeWithRRKmer(int kmerSize, KmerBytesWritable kmer) {
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/2 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/2
deleted file mode 100644
index 0f501fe..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/2
+++ /dev/null
@@ -1 +0,0 @@
-1 AATA
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/3 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/3
deleted file mode 100644
index b90246c..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/3
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAG
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/4 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/4
deleted file mode 100644
index 3f1cd5c..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/4
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAGA
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/5 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/5
deleted file mode 100644
index a720dc4..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/5
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAGAA
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/6 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/6
deleted file mode 100644
index 7a95b7c..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/6
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAGAAC
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/7 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/7
deleted file mode 100644
index ce4b8a8..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/7
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAGAACT
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/8 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/8
deleted file mode 100644
index 3959d4d..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/8
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAGAACTT
diff --git a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/9 b/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/9
deleted file mode 100644
index 89ead1e..0000000
--- a/genomix/genomix-hadoop/data/webmap/pathmerge_TestSet/9
+++ /dev/null
@@ -1 +0,0 @@
-1 AATAGAACTTA
diff --git a/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestCase.java b/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestCase.java
index cb163a7..1916fc2 100644
--- a/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestCase.java
+++ b/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestCase.java
@@ -2,45 +2,53 @@
import java.io.DataOutputStream;
import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
import junit.framework.TestCase;
-import org.apache.commons.io.FileUtils;
-import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.hdfs.MiniDFSCluster;
import org.apache.hadoop.mapred.JobConf;
-import org.apache.hadoop.mapred.MiniMRCluster;
import org.junit.Test;
import edu.uci.ics.genomix.hadoop.pmcommon.HadoopMiniClusterTest;
-@SuppressWarnings("deprecation")
+
+@SuppressWarnings({ "deprecation", "unused" })
public class GraphBuildingTestCase extends TestCase{
private final String RESULT_PATH;
private final String HADOOP_CONF_PATH;
private final String HDFS_INPUTPATH;
private FileSystem dfs;
+ private JobConf conf;
private static final int COUNT_REDUCER = 1;
private final int SIZE_KMER;
public GraphBuildingTestCase(String resultFileDir, String hadoopConfPath,
- String hdfsInputPath, int kmerSize, FileSystem dfs){
+ String hdfsInputPath, int kmerSize, FileSystem dfs, JobConf conf){
+ super("test");
this.RESULT_PATH = resultFileDir;
this.HADOOP_CONF_PATH = hadoopConfPath;
this.HDFS_INPUTPATH = hdfsInputPath;
this.SIZE_KMER = kmerSize;
this.dfs = dfs;
+ this.conf = conf;
+ }
+
+ private void waitawhile() throws InterruptedException {
+ synchronized (this) {
+ this.wait(20);
+ }
}
@Test
public void test() throws Exception {
+ setUp();
TestMapKmerToNode();
+ tearDown();
+ waitawhile();
}
public void TestMapKmerToNode() throws Exception {
@@ -52,9 +60,9 @@
private void dumpResult() throws IOException {
- Path src = new Path(RESULT_PATH);
- Path dest = new Path(RESULT_PATH);
- dfs.copyToLocalFile(src, dest);
-// HadoopMiniClusterTest.copyResultsToLocal(RESULT_PATH, "actual/test.txt", false, conf, true, dfs);
+// Path src = new Path(RESULT_PATH);
+// Path dest = new Path(RESULT_PATH);
+// dfs.copyToLocalFile(src, dest);
+ HadoopMiniClusterTest.copyResultsToLocal(RESULT_PATH, RESULT_PATH + "/test.txt", false, conf, true, dfs);
}
}
diff --git a/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestSuite.java b/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestSuite.java
index 67a6e3b..dd9c05f 100644
--- a/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestSuite.java
+++ b/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTestSuite.java
@@ -17,6 +17,7 @@
import org.apache.hadoop.mapred.JobConf;
import org.apache.hadoop.mapred.MiniMRCluster;
+
@SuppressWarnings("deprecation")
public class GraphBuildingTestSuite extends TestSuite{
@@ -24,9 +25,15 @@
public static final String PreFix = "data/webmap/pathmerge_TestSet";
public static final String[] TestDir = { PreFix + File.separator
+ "2", PreFix + File.separator
- + "3"};
+ + "3", PreFix + File.separator
+ + "4", PreFix + File.separator
+ + "5", PreFix + File.separator
+ + "6", PreFix + File.separator
+ + "7", PreFix + File.separator
+ + "8", PreFix + File.separator
+ + "9"};
- private JobConf conf = new JobConf();
+ private static JobConf conf = new JobConf();
private static final String ACTUAL_RESULT_DIR = "actual";
private static final String HADOOP_CONF_PATH = ACTUAL_RESULT_DIR + File.separator + "conf.xml";
private static final String HDFS_INPUTPATH = "/webmap";
@@ -35,7 +42,7 @@
private MiniMRCluster mrCluster;
private static FileSystem dfs;
- public void setup() throws Exception{
+ public void setUp() throws Exception{
FileUtils.forceMkdir(new File(ACTUAL_RESULT_DIR));
FileUtils.cleanDirectory(new File(ACTUAL_RESULT_DIR));
startHadoop();
@@ -80,12 +87,14 @@
public static Test suite() throws Exception {
GraphBuildingTestSuite testSuite = new GraphBuildingTestSuite();
+ testSuite.setUp();
+// FileSystem dfs = FileSystem.get(testSuite.conf);
for (String testPathStr : TestDir) {
File testDir = new File(testPathStr);
String resultFileName = ACTUAL_RESULT_DIR + File.separator +
"bin" + File.separator + testDir.getName();
testSuite.addTest(new GraphBuildingTestCase(resultFileName, HADOOP_CONF_PATH,
- HDFS_INPUTPATH + File.separator + testDir.getName(), SIZE_KMER, dfs));
+ HDFS_INPUTPATH + File.separator + testDir.getName(), SIZE_KMER, dfs, conf));
}
return testSuite;
}
diff --git a/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTest.java b/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/SingleGraphBuildingTest.java
similarity index 98%
rename from genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTest.java
rename to genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/SingleGraphBuildingTest.java
index f16e0a5..ed601ec 100644
--- a/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/GraphBuildingTest.java
+++ b/genomix/genomix-hadoop/src/test/java/edu/uci/ics/genomix/hadoop/contrailgraphbuilding/SingleGraphBuildingTest.java
@@ -17,7 +17,7 @@
import edu.uci.ics.genomix.hadoop.pmcommon.HadoopMiniClusterTest;
@SuppressWarnings("deprecation")
-public class GraphBuildingTest {
+public class SingleGraphBuildingTest {
private JobConf conf = new JobConf();
private static final String ACTUAL_RESULT_DIR = "actual";
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/2/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/2/part-00000
index 6be54c5..dc6250b 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/2/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/2/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/3/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/3/part-00000
index 6f2b1d8..a672f70 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/3/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/3/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/4/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/4/part-00000
index 7fbe1a4..b47312f 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/4/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/4/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/5/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/5/part-00000
index d369b61..3b06e4c 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/5/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/5/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/6/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/6/part-00000
index 72b4009..330821c 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/6/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/6/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/7/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/7/part-00000
index 394c8c9..a7be3db 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/7/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/7/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/8/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/8/part-00000
index db653a7..50bf862 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/8/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/8/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/data/PathMergeTestSet/9/part-00000 b/genomix/genomix-pregelix/data/PathMergeTestSet/9/part-00000
index b7760c2..1b8024d 100755
--- a/genomix/genomix-pregelix/data/PathMergeTestSet/9/part-00000
+++ b/genomix/genomix-pregelix/data/PathMergeTestSet/9/part-00000
Binary files differ
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/format/InitialGraphCleanInputFormat.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/format/InitialGraphCleanInputFormat.java
index 5662da6..edb305f 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/format/InitialGraphCleanInputFormat.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/format/InitialGraphCleanInputFormat.java
@@ -76,7 +76,7 @@
vertexValue.setRFList(node.getRFList());
vertexValue.setRRList(node.getRRList());
// TODO make this more efficient (don't use toString)
- vertexValue.setActualKmer(new VKmerBytesWritable(getRecordReader().getCurrentKey().toString()));
+ vertexValue.setActualKmer(new VKmerBytesWritable(vertexId));
vertexValue.setState(State.IS_NON);
vertex.setVertexValue(vertexValue);
}
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/graph/GenerateGraphViz.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/graph/GenerateGraphViz.java
index bb20797..0b89769 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/graph/GenerateGraphViz.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/graph/GenerateGraphViz.java
@@ -81,6 +81,9 @@
VKmerBytesWritable edge = kmerIterator.next();
outputEdge += outputNode + " -> " + edge.toString() + "[color = \"red\" label =\"RR\"]\n";
}
+ //TODO should output actualKmer instead of kmer
+ if(outputEdge == "")
+ outputEdge += outputNode;
return outputEdge;
}
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/io/VertexValueWritable.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/io/VertexValueWritable.java
index 3a37794..f67ff6b 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/io/VertexValueWritable.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/io/VertexValueWritable.java
@@ -6,8 +6,6 @@
import edu.uci.ics.genomix.type.PositionListWritable;
import edu.uci.ics.genomix.pregelix.type.MessageFlag;
-import edu.uci.ics.genomix.type.KmerBytesWritable;
-import edu.uci.ics.genomix.type.NodeWritable;
import edu.uci.ics.genomix.type.VKmerBytesWritable;
import edu.uci.ics.genomix.type.VKmerListWritable;
@@ -323,7 +321,6 @@
*/
public void processMerges(byte neighborToDeleteDir, VKmerBytesWritable nodeToDelete,
byte neighborToMergeDir, VKmerBytesWritable nodeToAdd,
-
int kmerSize, VKmerBytesWritable kmer){
switch (neighborToDeleteDir & MessageFlag.DIR_MASK) {
case MessageFlag.DIR_FF:
@@ -345,20 +342,21 @@
}
// TODO: remove switch below and replace with general direction merge
// this.getKmer().mergeWithDirKmer(neighborToMergeDir);
-
- switch (neighborToMergeDir & MessageFlag.DIR_MASK) {
- case MessageFlag.DIR_FF:
- this.getFFList().append(nodeToAdd);
- break;
- case MessageFlag.DIR_FR:
- this.getFRList().append(nodeToAdd);
- break;
- case MessageFlag.DIR_RF:
- this.getRFList().append(nodeToAdd);
- break;
- case MessageFlag.DIR_RR:
- this.getRRList().append(nodeToAdd);
- break;
+ if(nodeToAdd != null){ //if null, nodeToAdd is empty and so another node may be head or tail
+ switch (neighborToMergeDir & MessageFlag.DIR_MASK) {
+ case MessageFlag.DIR_FF:
+ this.getFFList().append(nodeToAdd);
+ break;
+ case MessageFlag.DIR_FR:
+ this.getFRList().append(nodeToAdd);
+ break;
+ case MessageFlag.DIR_RF:
+ this.getRFList().append(nodeToAdd);
+ break;
+ case MessageFlag.DIR_RR:
+ this.getRRList().append(nodeToAdd);
+ break;
+ }
}
}
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicGraphCleanVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicGraphCleanVertex.java
index 58ef4d6..4936d17 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicGraphCleanVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicGraphCleanVertex.java
@@ -283,7 +283,7 @@
* check if A need to be flipped with successor
*/
public boolean ifFilpWithSuccessor(){
- if(getVertexValue().getFRList().getLength() > 0)
+ if(getVertexValue().getFRList().getCountOfPosition() > 0)
return true;
else
return false;
@@ -293,7 +293,7 @@
* check if A need to be filpped with predecessor
*/
public boolean ifFlipWithPredecessor(){
- if(getVertexValue().getRFList().getLength() > 0)
+ if(getVertexValue().getRFList().getCountOfPosition() > 0)
return true;
else
return false;
@@ -304,9 +304,9 @@
*/
public void setSuccessorAdjMsg(){
outFlag &= MessageFlag.DIR_CLEAR;
- if(getVertexValue().getFFList().getLength() > 0)
+ if(getVertexValue().getFFList().getCountOfPosition() > 0)
outFlag |= MessageFlag.DIR_FF;
- else if(getVertexValue().getFRList().getLength() > 0)
+ else if(getVertexValue().getFRList().getCountOfPosition() > 0)
outFlag |= MessageFlag.DIR_FR;
else
outFlag |= MessageFlag.DIR_NO;
@@ -317,9 +317,9 @@
*/
public void setPredecessorAdjMsg(){
outFlag &= MessageFlag.DIR_CLEAR;
- if(getVertexValue().getRFList().getLength() > 0)
+ if(getVertexValue().getRFList().getCountOfPosition() > 0)
outFlag |= MessageFlag.DIR_RF;
- else if(getVertexValue().getRRList().getLength() > 0)
+ else if(getVertexValue().getRRList().getCountOfPosition() > 0)
outFlag |= MessageFlag.DIR_RR;
else
outFlag |= MessageFlag.DIR_NO;
@@ -664,14 +664,14 @@
break;
case MessageFlag.DIR_RF:
selfString = getVertexValue().getActualKmer().toString();
- match = selfString.substring(0,kmerSize - 1);
+ match = selfString.substring(0, kmerSize - 1);
msgString = GeneCode.reverseComplement(msg.getActualKmer().toString());
index = msgString.lastIndexOf(match) + kmerSize - 2;
tmpKmer.setByReadReverse(index + 1, msgString.substring(0, index + 1).getBytes(), 0);
break;
case MessageFlag.DIR_RR:
selfString = getVertexValue().getActualKmer().toString();
- match = selfString.substring(0,kmerSize - 1);
+ match = selfString.substring(0, kmerSize - 1);
msgString = msg.getActualKmer().toString();
index = msgString.lastIndexOf(match) + kmerSize - 2;
tmpKmer.setByRead(index + 1, msgString.substring(0, index + 1).getBytes(), 0);
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java
index c042f49..d16e6d5 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P2ForPathMergeVertex.java
@@ -46,7 +46,6 @@
MapReduceVertex {
private ArrayList<MessageWritable> receivedMsgList = new ArrayList<MessageWritable>();
- VKmerBytesWritable tmpKmer = new VKmerBytesWritable();
private boolean isFakeVertex = false;
/**
@@ -60,11 +59,11 @@
headFlag = (byte)(getVertexValue().getState() & State.IS_HEAD);
selfFlag = (byte)(getVertexValue().getState() & State.VERTEX_MASK);
if(incomingMsg == null)
- incomingMsg = new MessageWritable(kmerSize);
+ incomingMsg = new MessageWritable();
if(outgoingMsg == null)
- outgoingMsg = new MessageWritable(kmerSize);
+ outgoingMsg = new MessageWritable();
else
- outgoingMsg.reset(kmerSize);
+ outgoingMsg.reset();
receivedMsgList.clear();
if(reverseKmer == null)
reverseKmer = new VKmerBytesWritable();
@@ -80,7 +79,9 @@
}
isFakeVertex = ((byte)getVertexValue().getState() & State.FAKEFLAG_MASK) > 0 ? true : false;
if(destVertexId == null)
- destVertexId = new VKmerBytesWritable(kmerSize);
+ destVertexId = new VKmerBytesWritable();
+ if(tmpKmer == null)
+ tmpKmer = new VKmerBytesWritable();
}
/**
@@ -182,13 +183,13 @@
incomingMsg = msgIterator.next();
/** final Vertex Responses To FakeVertex **/
if((byte)(incomingMsg.getFlag() & MessageFlag.KILL_MASK) == MessageFlag.KILL){
- if((byte)(incomingMsg.getFlag() & MessageFlag.DIR_MASK) == MessageFlag.DIR_FROM_DEADVERTEX){
+ if((byte)(incomingMsg.getFlag() & MessageFlag.DEAD_MASK) == MessageFlag.DIR_FROM_DEADVERTEX){
responseToDeadVertex();
} else{
broadcaseKillself();
}
} else {
- /** for final processing **/
+ /** for final processing (2) **/
if(getMsgFlag() == MessageFlag.IS_FINAL){
sendFinalMergeMsg();
break;
@@ -241,7 +242,7 @@
}
else if (getSuperstep() % 3 == 0 && getSuperstep() <= maxIteration) {
if(!isFakeVertex){
- /** for processing final merge **/
+ /** for processing final merge (1) **/
if(msgIterator.hasNext()){
incomingMsg = msgIterator.next();
if(getMsgFlag() == MessageFlag.IS_FINAL){
@@ -260,7 +261,7 @@
voteToHalt();
}
}
- /** Fake vertex agregates message and group them by actual kmer **/
+ /** Fake vertex agregates message and group them by actual kmer (2) **/
else{
kmerMapper.clear();
/** Mapper **/
@@ -275,7 +276,7 @@
if(selfFlag != State.IS_HEAD)
voteToHalt();
}
- /** Fake vertex agregates message and group them by actual kmer **/
+ /** Fake vertex agregates message and group them by actual kmer (1) **/
else{
kmerMapper.clear();
/** Mapper **/
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobGen/JobGenerator.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobGen/JobGenerator.java
index de2fcd3..4f0f39b 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobGen/JobGenerator.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobGen/JobGenerator.java
@@ -15,6 +15,7 @@
import edu.uci.ics.genomix.pregelix.operator.bubblemerge.BubbleMergeVertex;
import edu.uci.ics.genomix.pregelix.operator.pathmerge.P2ForPathMergeVertex;
import edu.uci.ics.genomix.pregelix.operator.pathmerge.MapReduceVertex;
+import edu.uci.ics.genomix.pregelix.operator.pathmerge.P4ForPathMergeVertex;
import edu.uci.ics.genomix.pregelix.operator.splitrepeat.SplitRepeatVertex;
import edu.uci.ics.genomix.pregelix.operator.tipremove.TipAddVertex;
import edu.uci.ics.genomix.pregelix.operator.tipremove.TipRemoveVertex;
@@ -77,22 +78,22 @@
// + "P3ForMergeGraph.xml");
// }
-// private static void generateP4ForMergeGraphJob(String jobName, String outputPath) throws IOException {
-// PregelixJob job = new PregelixJob(jobName);
-// job.setVertexClass(P4ForPathMergeVertex.class);
-// job.setVertexInputFormatClass(InitialGraphCleanInputFormat.class);
-// job.setVertexOutputFormatClass(GraphCleanOutputFormat.class);
-// job.setDynamicVertexValueSize(true);
-// job.setOutputKeyClass(KmerBytesWritable.class);
-// job.setOutputValueClass(VertexValueWritable.class);
-// job.getConfiguration().setInt(P4ForPathMergeVertex.KMER_SIZE, 3);
-// job.getConfiguration().writeXml(new FileOutputStream(new File(outputPath)));
-// }
-//
-// private static void genP4ForMergeGraph() throws IOException {
-// generateP4ForMergeGraphJob("P4ForMergeGraph", outputBase
-// + "P4ForMergeGraph.xml");
-// }
+ private static void generateP4ForMergeGraphJob(String jobName, String outputPath) throws IOException {
+ PregelixJob job = new PregelixJob(jobName);
+ job.setVertexClass(P4ForPathMergeVertex.class);
+ job.setVertexInputFormatClass(InitialGraphCleanInputFormat.class);
+ job.setVertexOutputFormatClass(GraphCleanOutputFormat.class);
+ job.setDynamicVertexValueSize(true);
+ job.setOutputKeyClass(VKmerBytesWritable.class);
+ job.setOutputValueClass(VertexValueWritable.class);
+ job.getConfiguration().setInt(P4ForPathMergeVertex.KMER_SIZE, 3);
+ job.getConfiguration().writeXml(new FileOutputStream(new File(outputPath)));
+ }
+
+ private static void genP4ForMergeGraph() throws IOException {
+ generateP4ForMergeGraphJob("P4ForMergeGraph", outputBase
+ + "P4ForMergeGraph.xml");
+ }
private static void generateMapReduceGraphJob(String jobName, String outputPath) throws IOException {
PregelixJob job = new PregelixJob(jobName);
@@ -228,13 +229,16 @@
}
public static void main(String[] args) throws IOException {
- genSplitRepeatGraph();
+ genMapReduceGraph();
+ genLogAlgorithmForMergeGraph();
+ genP4ForMergeGraph();
genTipAddGraph();
- genBridgeAddGraph();
genTipRemoveGraph();
+ genBridgeAddGraph();
genBridgeRemoveGraph();
genBubbleAddGraph();
genBubbleMergeGraph();
+ genSplitRepeatGraph();
}
}
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/PathMergeSmallTestSuite.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/PathMergeSmallTestSuite.java
index 7b937c8..b1b0fc0 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/PathMergeSmallTestSuite.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/PathMergeSmallTestSuite.java
@@ -45,14 +45,14 @@
public static final String PreFix = "data/PathMergeTestSet"; //"graphbuildresult";
public static final String[] TestDir = { PreFix + File.separator
- + "2", PreFix + File.separator
- + "3", PreFix + File.separator
- + "4", PreFix + File.separator
- + "5", PreFix + File.separator
- + "6", PreFix + File.separator
- + "7", PreFix + File.separator
- + "8", PreFix + File.separator
- + "9"};
+// + "2", PreFix + File.separator
+// + "3", PreFix + File.separator
+// + "4", PreFix + File.separator
+// + "5", PreFix + File.separator
+// + "6", PreFix + File.separator
+// + "7", PreFix + File.separator
+// + "8", PreFix + File.separator
+ + "2"};
private static final String ACTUAL_RESULT_DIR = "data/actual/pathmerge";
private static final String PATH_TO_HADOOP_CONF = "src/test/resources/hadoop/conf";
private static final String PATH_TO_CLUSTER_STORE = "src/test/resources/cluster/stores.properties";