removeBridge pass tests
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/bubblemerge/BubbleMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/bubblemerge/BubbleMergeVertex.java
index 4cb6b39..780b277 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/bubblemerge/BubbleMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/bubblemerge/BubbleMergeVertex.java
@@ -88,18 +88,57 @@
posIterator = value.getFRList().iterator();
return posIterator.next();
}
+
+ public PositionWritable getPrevDestVertexId(VertexValueWritable value) {
+ if(value.getRFList().getCountOfPosition() > 0) // #FFList() > 0
+ posIterator = value.getRFList().iterator();
+ else // #FRList() > 0
+ posIterator = value.getRRList().iterator();
+ return posIterator.next();
+ }
/**
+ * check if prev/next destination exists
+ */
+ public boolean hasNextDest(VertexValueWritable value){
+ return value.getFFList().getCountOfPosition() > 0 || value.getFRList().getCountOfPosition() > 0;
+ }
+
+ public boolean hasPrevDest(VertexValueWritable value){
+ return value.getRFList().getCountOfPosition() > 0 || value.getRRList().getCountOfPosition() > 0;
+ }
+
+ /**
* head send message to all next nodes
*/
public void sendMsgToAllNextNodes(VertexValueWritable value) {
posIterator = value.getFFList().iterator(); // FFList
while(posIterator.hasNext()){
+ outgoingMsg.setMessage(AdjMessage.FROMFF);
destVertexId.set(posIterator.next());
sendMsg(destVertexId, outgoingMsg);
}
posIterator = value.getFRList().iterator(); // FRList
while(posIterator.hasNext()){
+ outgoingMsg.setMessage(AdjMessage.FROMFR);
+ destVertexId.set(posIterator.next());
+ sendMsg(destVertexId, outgoingMsg);
+ }
+ }
+
+ /**
+ * head send message to all next nodes
+ */
+ public void sendMsgToAllPrevNodes(VertexValueWritable value) {
+ posIterator = value.getRFList().iterator(); // FFList
+ while(posIterator.hasNext()){
+ outgoingMsg.setMessage(AdjMessage.FROMRF);
+ destVertexId.set(posIterator.next());
+ sendMsg(destVertexId, outgoingMsg);
+ }
+ posIterator = value.getRRList().iterator(); // FRList
+ while(posIterator.hasNext()){
+ outgoingMsg.setMessage(AdjMessage.FROMRR);
destVertexId.set(posIterator.next());
sendMsg(destVertexId, outgoingMsg);
}
@@ -183,20 +222,42 @@
if (getSuperstep() == 1) {
if(VertexUtil.isHeadVertexWithIndegree(getVertexValue())
|| VertexUtil.isHeadWithoutIndegree(getVertexValue())){
- outgoingMsg.setMessage(AdjMessage.NON);
outgoingMsg.setSourceVertexId(getVertexId());
sendMsgToAllNextNodes(getVertexValue());
}
+// if(VertexUtil.isRearVertexWithOutdegree(getVertexValue())
+// || VertexUtil.isRearWithoutOutdegree(getVertexValue())){
+// outgoingMsg.setSourceVertexId(getVertexId());
+// sendMsgToAllPrevNodes(getVertexValue());
+// }
} else if (getSuperstep() == 2){
while (msgIterator.hasNext()) {
incomingMsg = msgIterator.next();
if(VertexUtil.isPathVertex(getVertexValue())){
- outgoingMsg.setMessage(AdjMessage.NON);
- outgoingMsg.setStartVertexId(incomingMsg.getSourceVertexId());
- outgoingMsg.setSourceVertexId(getVertexId());
- outgoingMsg.setChainVertexId(getVertexValue().getKmer());
- destVertexId.set(getNextDestVertexId(getVertexValue()));
- sendMsg(destVertexId, outgoingMsg);
+ switch(incomingMsg.getMessage()){
+ case AdjMessage.FROMFF:
+ case AdjMessage.FROMRF:
+ if(hasNextDest(getVertexValue())){
+ outgoingMsg.setMessage(AdjMessage.NON);
+ outgoingMsg.setStartVertexId(incomingMsg.getSourceVertexId());
+ outgoingMsg.setSourceVertexId(getVertexId());
+ outgoingMsg.setChainVertexId(getVertexValue().getKmer());
+ destVertexId.set(getNextDestVertexId(getVertexValue()));
+ sendMsg(destVertexId, outgoingMsg);
+ }
+ break;
+ case AdjMessage.FROMFR:
+ case AdjMessage.FROMRR:
+ if(hasPrevDest(getVertexValue())){
+ outgoingMsg.setMessage(AdjMessage.NON);
+ outgoingMsg.setStartVertexId(incomingMsg.getSourceVertexId());
+ outgoingMsg.setSourceVertexId(getVertexId());
+ outgoingMsg.setChainVertexId(getVertexValue().getKmer());
+ destVertexId.set(getPrevDestVertexId(getVertexValue()));
+ sendMsg(destVertexId, outgoingMsg);
+ }
+ break;
+ }
}
}
} else if (getSuperstep() == 3){
@@ -273,7 +334,7 @@
}
}
} else if (getSuperstep() == 4){
- while (msgIterator.hasNext()) {
+ if(msgIterator.hasNext()) {
incomingMsg = msgIterator.next();
if(incomingMsg.getMessage() == AdjMessage.KILL){
broadcaseKillself();
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicPathMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicPathMergeVertex.java
index edadc50..c312f81 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicPathMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/BasicPathMergeVertex.java
@@ -60,6 +60,17 @@
}
/**
+ * check if prev/next destination exists
+ */
+ public boolean hasNextDest(VertexValueWritable value){
+ return value.getFFList().getCountOfPosition() > 0 || value.getFRList().getCountOfPosition() > 0;
+ }
+
+ public boolean hasPrevDest(VertexValueWritable value){
+ return value.getRFList().getCountOfPosition() > 0 || value.getRRList().getCountOfPosition() > 0;
+ }
+
+ /**
* get destination vertex
*/
public PositionWritable getNextDestVertexId(VertexValueWritable value) {
@@ -70,9 +81,8 @@
posIterator = value.getFRList().iterator();
return posIterator.next();
} else {
- return null;
+ return null;
}
-
}
public PositionWritable getPreDestVertexId(VertexValueWritable value) {
@@ -222,22 +232,22 @@
*/
public void startSendMsg() {
if (VertexUtil.isHeadVertexWithIndegree(getVertexValue())) {
- outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD | MessageFlag.HEAD_SHOULD_MERGEWITHNEXT));
+ outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD));//| MessageFlag.HEAD_SHOULD_MERGEWITHNEXT
sendMsgToAllNextNodes(getVertexValue());
voteToHalt();
}
if (VertexUtil.isRearVertexWithOutdegree(getVertexValue())) {
- outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD | MessageFlag.HEAD_SHOULD_MERGEWITHPREV));
+ outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD));//| MessageFlag.HEAD_SHOULD_MERGEWITHPREV
sendMsgToAllPreviousNodes(getVertexValue());
voteToHalt();
}
if (VertexUtil.isHeadWithoutIndegree(getVertexValue())){
- outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD | MessageFlag.HEAD_SHOULD_MERGEWITHNEXT));
+ outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD));//| MessageFlag.HEAD_SHOULD_MERGEWITHNEXT
sendMsg(getVertexId(), outgoingMsg); //send to itself
voteToHalt();
}
if (VertexUtil.isRearWithoutOutdegree(getVertexValue())){
- outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD | MessageFlag.HEAD_SHOULD_MERGEWITHPREV));
+ outgoingMsg.setFlag((byte)(MessageFlag.IS_HEAD));//| MessageFlag.HEAD_SHOULD_MERGEWITHPREV
sendMsg(getVertexId(), outgoingMsg); //send to itself
voteToHalt();
}
@@ -421,20 +431,20 @@
getVertexValue().setState(state);
}
- public byte isHeadShouldMergeWithPrev(){
- return (byte) (getVertexValue().getState() & State.HEAD_SHOULD_MERGEWITHPREV);
- }
+// public byte isHeadShouldMergeWithPrev(){
+// return (byte) (getVertexValue().getState() & State.HEAD_SHOULD_MERGEWITHPREV);
+// }
/**
* This vertex tries to merge with next vertex and send update msg to neighber
* @throws IOException
*/
public void sendUpdateMsgToPredecessor(){
setStateAsMergeWithNext();
- if(isHeadShouldMergeWithPrev() == 0){
- if(getVertexValue().getFFList().getLength() > 0)
- getVertexValue().setMergeDest(getVertexValue().getFFList().getPosition(0));
- else
- getVertexValue().setMergeDest(getVertexValue().getFRList().getPosition(0));
+ if(hasNextDest(getVertexValue())){
+// if(getVertexValue().getFFList().getLength() > 0)
+// getVertexValue().setMergeDest(getVertexValue().getFFList().getPosition(0));
+// else
+// getVertexValue().setMergeDest(getVertexValue().getFRList().getPosition(0));
broadcastUpdateMsg();
}
}
@@ -445,20 +455,20 @@
getVertexValue().setState(state);
}
- public byte isHeadShouldMergeWithNext(){
- return (byte) (getVertexValue().getState() & State.HEAD_SHOULD_MERGEWITHNEXT);
- }
+// public byte isHeadShouldMergeWithNext(){
+// return (byte) (getVertexValue().getState() & State.HEAD_SHOULD_MERGEWITHNEXT);
+// }
/**
* This vertex tries to merge with next vertex and send update msg to neighber
* @throws IOException
*/
public void sendUpdateMsgToSuccessor(){
setStateAsMergeWithPrev();
- if(isHeadShouldMergeWithNext() == 0){
- if(getVertexValue().getRFList().getLength() > 0)
- getVertexValue().setMergeDest(getVertexValue().getRFList().getPosition(0));
- else
- getVertexValue().setMergeDest(getVertexValue().getRRList().getPosition(0));
+ if(hasNextDest(getVertexValue())){
+// if(getVertexValue().getRFList().getLength() > 0)
+// getVertexValue().setMergeDest(getVertexValue().getRFList().getPosition(0));
+// else
+// getVertexValue().setMergeDest(getVertexValue().getRRList().getPosition(0));
broadcastUpdateMsg();
}
}
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java
index c66830c..bf53f75 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/operator/pathmerge/P4ForPathMergeVertex.java
@@ -13,6 +13,7 @@
import edu.uci.ics.genomix.pregelix.io.VertexValueWritable;
import edu.uci.ics.genomix.pregelix.io.VertexValueWritable.State;
import edu.uci.ics.genomix.pregelix.type.MessageFlag;
+import edu.uci.ics.genomix.pregelix.util.VertexUtil;
/*
* vertexId: BytesWritable
@@ -122,9 +123,6 @@
*/
protected boolean setPrevInfo(VertexValueWritable value) {
- if(headFlag > 0 && (getVertexValue().getState() & State.HEAD_SHOULD_MERGEWITHNEXT) > 0){
- return false;
- }
if (value.getRRList().getCountOfPosition() > 0) {
prevID.set(value.getRRList().getPosition(0));
prevHead = isNodeRandomHead(prevID);
@@ -146,7 +144,6 @@
else if (getSuperstep() == 2)
initState(msgIterator);
else if (getSuperstep() % 4 == 3){
-
//tailFlag = (byte) (MessageFlag.IS_TAIL & getVertexValue().getState());
//outFlag = (byte) (headFlag | tailFlag);
outFlag |= headFlag;
@@ -166,15 +163,16 @@
hasPrev = setPrevInfo(getVertexValue());//&& headFlag == 0;
if (hasNext || hasPrev) {
if (curHead) {
- if (hasNext && !nextHead && (getNextDestVertexId(getVertexValue()) != null)) {
+ if (hasNext && !nextHead) {
// compress this head to the forward tail
sendUpdateMsgToPredecessor(); //TODO up -> update From -> to
- } else if (hasPrev && !prevHead && (getPreDestVertexId(getVertexValue()) != null)) {
+ } else if (hasPrev && !prevHead) {
// compress this head to the reverse tail
sendUpdateMsgToSuccessor();
} //else
//voteToHalt();
- } else {
+ }
+ }else {
// I'm a tail
if (hasNext && hasPrev) {
if ((!nextHead && !prevHead) && (curID.compareTo(nextID) < 0 && curID.compareTo(prevID) < 0)) {
@@ -200,14 +198,14 @@
} //else
//voteToHalt();
}
- }
}
else if (getSuperstep() % 4 == 0){
//update neighber
while (msgIterator.hasNext()) {
incomingMsg = msgIterator.next();
processUpdate();
- //voteToHalt();
+ if(VertexUtil.isHeadOrRearVertexWithDegree(getVertexValue()))
+ voteToHalt();
}
} else if (getSuperstep() % 4 == 1){
//send message to the merge object and kill self
diff --git a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/util/VertexUtil.java b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/util/VertexUtil.java
index e9197db..c7c96f3 100644
--- a/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/util/VertexUtil.java
+++ b/genomix/genomix-pregelix/src/main/java/edu/uci/ics/genomix/pregelix/util/VertexUtil.java
@@ -22,6 +22,9 @@
return value.outDegree() > 0 && !isPathVertex(value);
}
+ public static boolean isHeadOrRearVertexWithDegree(VertexValueWritable value){
+ return isHeadVertexWithIndegree(value) || isRearVertexWithOutdegree(value);
+ }
/**
* Head Vertex: out-degree > 0, and has indegress
*
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 2c85e42..eae94cb 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
@@ -83,12 +83,12 @@
private static void generateP4ForMergeGraphJob(String jobName, String outputPath) throws IOException {
PregelixJob job = new PregelixJob(jobName);
job.setVertexClass(P4ForPathMergeVertex.class);
- job.setVertexInputFormatClass(NaiveAlgorithmForPathMergeInputFormat.class); //DataCleanInputFormat
+ job.setVertexInputFormatClass(DataCleanInputFormat.class); //NaiveAlgorithmForPathMergeInputFormat //
job.setVertexOutputFormatClass(DataCleanOutputFormat.class);
job.setDynamicVertexValueSize(true);
job.setOutputKeyClass(PositionWritable.class);
job.setOutputValueClass(VertexValueWritable.class);
- job.getConfiguration().setInt(P4ForPathMergeVertex.KMER_SIZE, 3);
+ job.getConfiguration().setInt(P4ForPathMergeVertex.KMER_SIZE, 5);
job.getConfiguration().writeXml(new FileOutputStream(new File(outputPath)));
}
@@ -100,7 +100,7 @@
private static void generateTipAddGraphJob(String jobName, String outputPath) throws IOException {
PregelixJob job = new PregelixJob(jobName);
job.setVertexClass(TipAddVertex.class);
- job.setVertexInputFormatClass(NaiveAlgorithmForPathMergeInputFormat.class);
+ job.setVertexInputFormatClass(DataCleanOutputFormat.class);
job.setVertexOutputFormatClass(DataCleanOutputFormat.class);
job.setDynamicVertexValueSize(true);
job.setOutputKeyClass(PositionWritable.class);
@@ -117,12 +117,12 @@
private static void generateTipRemoveGraphJob(String jobName, String outputPath) throws IOException {
PregelixJob job = new PregelixJob(jobName);
job.setVertexClass(TipRemoveVertex.class);
- job.setVertexInputFormatClass(DataCleanInputFormat.class);
+ job.setVertexInputFormatClass(NaiveAlgorithmForPathMergeInputFormat.class);
job.setVertexOutputFormatClass(DataCleanOutputFormat.class);
job.setDynamicVertexValueSize(true);
job.setOutputKeyClass(PositionWritable.class);
job.setOutputValueClass(VertexValueWritable.class);
- job.getConfiguration().setInt(TipRemoveVertex.KMER_SIZE, 3);
+ job.getConfiguration().setInt(TipRemoveVertex.KMER_SIZE, 5);
job.getConfiguration().writeXml(new FileOutputStream(new File(outputPath)));
}
@@ -156,7 +156,7 @@
job.setDynamicVertexValueSize(true);
job.setOutputKeyClass(PositionWritable.class);
job.setOutputValueClass(VertexValueWritable.class);
- job.getConfiguration().setInt(TipRemoveVertex.KMER_SIZE, 3);
+ job.getConfiguration().setInt(TipRemoveVertex.KMER_SIZE, 5);
job.getConfiguration().writeXml(new FileOutputStream(new File(outputPath)));
}
@@ -185,12 +185,12 @@
private static void generateBubbleMergeGraphJob(String jobName, String outputPath) throws IOException {
PregelixJob job = new PregelixJob(jobName);
job.setVertexClass(BubbleMergeVertex.class);
- job.setVertexInputFormatClass(DataCleanInputFormat.class);
+ job.setVertexInputFormatClass(NaiveAlgorithmForPathMergeInputFormat.class);
job.setVertexOutputFormatClass(DataCleanOutputFormat.class);
job.setDynamicVertexValueSize(true);
job.setOutputKeyClass(PositionWritable.class);
job.setOutputValueClass(VertexValueWritable.class);
- job.getConfiguration().setInt(BubbleMergeVertex.KMER_SIZE, 3);
+ job.getConfiguration().setInt(BubbleMergeVertex.KMER_SIZE, 5);
job.getConfiguration().writeXml(new FileOutputStream(new File(outputPath)));
}
@@ -203,7 +203,7 @@
//genNaiveAlgorithmForMergeGraph();
//genLogAlgorithmForMergeGraph();
//genP3ForMergeGraph();
- genTipAddGraph();
+ //genTipAddGraph();
genTipRemoveGraph();
genBridgeAddGraph();
genBridgeRemoveGraph();
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BridgeRemoveSmallTestSuite.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BridgeRemoveSmallTestSuite.java
index 5b641ff..397c514 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BridgeRemoveSmallTestSuite.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BridgeRemoveSmallTestSuite.java
@@ -43,26 +43,15 @@
public class BridgeRemoveSmallTestSuite extends TestSuite {
private static final Logger LOGGER = Logger.getLogger(BridgeRemoveSmallTestSuite.class.getName());
- public static final String PreFix = "data/input"; //"graphbuildresult";
+ public static final String PreFix = "data/actual"; //"graphbuildresult";
public static final String[] TestDir = { PreFix + File.separator
- + "pathmerge_tip"};/*, PreFix + File.separator
- /*+ "CyclePath"};, PreFix + File.separator
- + "SimplePath", PreFix + File.separator
- + "SinglePath", PreFix + File.separator
- + "TreePath"};*/
- /* + "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", PreFix + File.separator + "TwoKmer", PreFix + File.separator + "ThreeKmer",
- PreFix + File.separator + "SinglePath", PreFix + File.separator + "SimplePath",
- PreFix + File.separator + "Path", PreFix + File.separator + "BridgePath",
- PreFix + File.separator + "CyclePath", PreFix + File.separator + "RingPath",
- PreFix + File.separator + "LongPath", PreFix + File.separator + "TreePath" };*/
- private static final String ACTUAL_RESULT_DIR = "actual";
+ + "pathmerge/P4ForMergeGraph/bin/tworeads"};
+ private static final String ACTUAL_RESULT_DIR = "data/actual/bridgeremove";
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";
private static final String PATH_TO_CLUSTER_PROPERTIES = "src/test/resources/cluster/cluster.properties";
private static final String PATH_TO_JOBS = "src/test/resources/jobs/";
- private static final String PATH_TO_ONLY = "src/test/resources/only.txt";
+ private static final String PATH_TO_ONLY = "src/test/resources/only_bridgeremove.txt";
public static final String HDFS_INPUTPATH = "/PathTestSet";
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BubbleMergeSmallTestSuite.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BubbleMergeSmallTestSuite.java
index 9e98cb6..a94d31c 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BubbleMergeSmallTestSuite.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/BubbleMergeSmallTestSuite.java
@@ -45,24 +45,13 @@
public static final String PreFix = "data/input"; //"graphbuildresult";
public static final String[] TestDir = { PreFix + File.separator
- + "pathmerge"};/*, PreFix + File.separator
- /*+ "CyclePath"};, PreFix + File.separator
- + "SimplePath", PreFix + File.separator
- + "SinglePath", PreFix + File.separator
- + "TreePath"};*/
- /* + "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", PreFix + File.separator + "TwoKmer", PreFix + File.separator + "ThreeKmer",
- PreFix + File.separator + "SinglePath", PreFix + File.separator + "SimplePath",
- PreFix + File.separator + "Path", PreFix + File.separator + "BridgePath",
- PreFix + File.separator + "CyclePath", PreFix + File.separator + "RingPath",
- PreFix + File.separator + "LongPath", PreFix + File.separator + "TreePath" };*/
- private static final String ACTUAL_RESULT_DIR = "actual";
+ + "graphs/bubblemerge/fr_bubble"};
+ private static final String ACTUAL_RESULT_DIR = "data/actual/bubblemerge";
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";
private static final String PATH_TO_CLUSTER_PROPERTIES = "src/test/resources/cluster/cluster.properties";
private static final String PATH_TO_JOBS = "src/test/resources/jobs/";
- private static final String PATH_TO_ONLY = "src/test/resources/only.txt";
+ private static final String PATH_TO_ONLY = "src/test/resources/only_bubblemerge.txt";
public static final String HDFS_INPUTPATH = "/PathTestSet";
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 44d24d6..79a13b3 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
@@ -43,10 +43,13 @@
public class PathMergeSmallTestSuite extends TestSuite {
private static final Logger LOGGER = Logger.getLogger(PathMergeSmallTestSuite.class.getName());
- public static final String PreFix = "data/PathTestSet_bidirection"; //"graphbuildresult";
+ public static final String PreFix = "data/actual"; //"graphbuildresult";
public static final String[] TestDir = { PreFix + File.separator
- + "tworeads_6"};/*
- + "2", PreFix + File.separator
+ + "bubblemerge/BubbleMergeGraph/bin/small_bubble"};
+ //+ "tipremove/TipRemoveGraph/bin/fr_with_tip"};
+ //+ "graphs/pathmerge/singleread"};
+ //+ "bridgeadd/BridgeAddGraph/bin/tworeads"};
+ /*+ "2", PreFix + File.separator
+ "3", PreFix + File.separator
+ "4", PreFix + File.separator
+ "5", PreFix + File.separator
@@ -54,21 +57,8 @@
+ "7", PreFix + File.separator
+ "8", PreFix + File.separator
+ "9", PreFix + File.separator
- + "tworeads"};
- /*+ "tipremove/TipRemoveGraph/bin/tworeads"};
- + "bridgeadd/BridgeAddGraph/bin/tworeads"};, PreFix + File.separator
- + "tipadd/TipAddGraph/bin/read"}, PreFix + File.separator
- /*+ "CyclePath"};, PreFix + File.separator
- + "SimplePath", PreFix + File.separator
- + "SinglePath", PreFix + File.separator
- + "TreePath"};*/
- /* + "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", PreFix + File.separator + "TwoKmer", PreFix + File.separator + "ThreeKmer",
- PreFix + File.separator + "SinglePath", PreFix + File.separator + "SimplePath",
- PreFix + File.separator + "Path", PreFix + File.separator + "BridgePath",
- PreFix + File.separator + "CyclePath", PreFix + File.separator + "RingPath",
- PreFix + File.separator + "LongPath", PreFix + File.separator + "TreePath" };*/
+ + "tworeads3", PreFix + File.separator
+ + "tworeads_6"};*/
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";
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/TipRemoveSmallTestSuite.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/TipRemoveSmallTestSuite.java
index e174bd9..def24e4 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/TipRemoveSmallTestSuite.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/JobRun/TipRemoveSmallTestSuite.java
@@ -43,20 +43,10 @@
public class TipRemoveSmallTestSuite extends TestSuite {
private static final Logger LOGGER = Logger.getLogger(TipRemoveSmallTestSuite.class.getName());
//P4ForMergeGraph/bin/read
- public static final String PreFix = "data/actual"; //"graphbuildresult";
+ public static final String PreFix = "data/input"; //"graphbuildresult";
public static final String[] TestDir = { PreFix + File.separator
- + "bridgeadd/BridgeAddGraph/bin/tworeads"};/*, PreFix + File.separator
- /*+ "CyclePath"};, PreFix + File.separator
- + "SimplePath", PreFix + File.separator
- + "SinglePath", PreFix + File.separator
- + "TreePath"};*/
- /* + "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", PreFix + File.separator + "TwoKmer", PreFix + File.separator + "ThreeKmer",
- PreFix + File.separator + "SinglePath", PreFix + File.separator + "SimplePath",
- PreFix + File.separator + "Path", PreFix + File.separator + "BridgePath",
- PreFix + File.separator + "CyclePath", PreFix + File.separator + "RingPath",
- PreFix + File.separator + "LongPath", PreFix + File.separator + "TreePath" };*/
+ + "graphs/tipremove/fr_with_tip"};
+ //+ "bridgeadd/BridgeAddGraph/bin/tworeads"};
private static final String ACTUAL_RESULT_DIR = "data/actual/tipremove";
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";
diff --git a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/graphbuilding/JobRunStepByStepTest.java b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/graphbuilding/JobRunStepByStepTest.java
index cc9e2d2..3531ec1 100644
--- a/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/graphbuilding/JobRunStepByStepTest.java
+++ b/genomix/genomix-pregelix/src/test/java/edu/uci/ics/genomix/pregelix/graphbuilding/JobRunStepByStepTest.java
@@ -50,7 +50,7 @@
private static final String ACTUAL_RESULT_DIR = "actual";
private static final String PATH_TO_HADOOP_CONF = "src/test/resources/hadoop/conf";
- private static final String DATA_INPUT_PATH = "data/input/singleread";
+ private static final String DATA_INPUT_PATH = "data/graphbuild.test/tworead3.txt";
private static final String HDFS_INPUT_PATH = "/webmap";
private static final String HDFS_OUTPUT_PATH = "/webmap_result";
diff --git a/genomix/genomix-pregelix/src/test/resources/jobs/BridgeRemoveGraph.xml b/genomix/genomix-pregelix/src/test/resources/jobs/BridgeRemoveGraph.xml
index b36258a..f9b801a 100644
--- a/genomix/genomix-pregelix/src/test/resources/jobs/BridgeRemoveGraph.xml
+++ b/genomix/genomix-pregelix/src/test/resources/jobs/BridgeRemoveGraph.xml
@@ -96,7 +96,7 @@
<property><name>io.sort.mb</name><value>100</value></property>
<property><name>mapred.local.dir</name><value>${hadoop.tmp.dir}/mapred/local</value></property>
<property><name>io.sort.factor</name><value>10</value></property>
-<property><name>BasicPathMergeVertex.kmerSize</name><value>3</value></property>
+<property><name>BasicPathMergeVertex.kmerSize</name><value>5</value></property>
<property><name>mapred.task.profile</name><value>false</value></property>
<property><name>job.end.retry.interval</name><value>30000</value></property>
<property><name>mapred.tasktracker.procfsbasedprocesstree.sleeptime-before-sigkill</name><value>5000</value></property>
diff --git a/genomix/genomix-pregelix/src/test/resources/jobs/BubbleMergeGraph.xml b/genomix/genomix-pregelix/src/test/resources/jobs/BubbleMergeGraph.xml
index 1b5cf0c..605a004 100644
--- a/genomix/genomix-pregelix/src/test/resources/jobs/BubbleMergeGraph.xml
+++ b/genomix/genomix-pregelix/src/test/resources/jobs/BubbleMergeGraph.xml
@@ -99,7 +99,7 @@
<property><name>mapred.task.profile</name><value>false</value></property>
<property><name>job.end.retry.interval</name><value>30000</value></property>
<property><name>mapred.tasktracker.procfsbasedprocesstree.sleeptime-before-sigkill</name><value>5000</value></property>
-<property><name>BubbleMergeVertex.kmerSize</name><value>3</value></property>
+<property><name>BubbleMergeVertex.kmerSize</name><value>5</value></property>
<property><name>mapred.jobtracker.completeuserjobs.maximum</name><value>100</value></property>
<property><name>mapred.task.profile.reduces</name><value>0-2</value></property>
<property><name>webinterface.private.actions</name><value>false</value></property>
@@ -122,7 +122,7 @@
<property><name>mapred.map.tasks.speculative.execution</name><value>true</value></property>
<property><name>mapred.inmem.merge.threshold</name><value>1000</value></property>
<property><name>hadoop.logfile.size</name><value>10000000</value></property>
-<property><name>pregelix.vertexInputFormatClass</name><value>edu.uci.ics.genomix.pregelix.format.DataCleanInputFormat</value></property>
+<property><name>pregelix.vertexInputFormatClass</name><value>edu.uci.ics.genomix.pregelix.format.NaiveAlgorithmForPathMergeInputFormat</value></property>
<property><name>mapred.job.queue.name</name><value>default</value></property>
<property><name>mapred.job.tracker.persist.jobstatus.active</name><value>false</value></property>
<property><name>pregelix.incStateLength</name><value>true</value></property>
diff --git a/genomix/genomix-pregelix/src/test/resources/jobs/P4ForMergeGraph.xml b/genomix/genomix-pregelix/src/test/resources/jobs/P4ForMergeGraph.xml
index ae0dc7e..5ef1509 100644
--- a/genomix/genomix-pregelix/src/test/resources/jobs/P4ForMergeGraph.xml
+++ b/genomix/genomix-pregelix/src/test/resources/jobs/P4ForMergeGraph.xml
@@ -96,7 +96,7 @@
<property><name>io.sort.mb</name><value>100</value></property>
<property><name>mapred.local.dir</name><value>${hadoop.tmp.dir}/mapred/local</value></property>
<property><name>io.sort.factor</name><value>10</value></property>
-<property><name>BasicPathMergeVertex.kmerSize</name><value>3</value></property>
+<property><name>BasicPathMergeVertex.kmerSize</name><value>5</value></property>
<property><name>mapred.task.profile</name><value>false</value></property>
<property><name>job.end.retry.interval</name><value>30000</value></property>
<property><name>mapred.tasktracker.procfsbasedprocesstree.sleeptime-before-sigkill</name><value>5000</value></property>
@@ -122,7 +122,7 @@
<property><name>mapred.map.tasks.speculative.execution</name><value>true</value></property>
<property><name>mapred.inmem.merge.threshold</name><value>1000</value></property>
<property><name>hadoop.logfile.size</name><value>10000000</value></property>
-<property><name>pregelix.vertexInputFormatClass</name><value>edu.uci.ics.genomix.pregelix.format.NaiveAlgorithmForPathMergeInputFormat</value></property>
+<property><name>pregelix.vertexInputFormatClass</name><value>edu.uci.ics.genomix.pregelix.format.DataCleanInputFormat</value></property>
<property><name>mapred.job.queue.name</name><value>default</value></property>
<property><name>mapred.job.tracker.persist.jobstatus.active</name><value>false</value></property>
<property><name>pregelix.incStateLength</name><value>true</value></property>
diff --git a/genomix/genomix-pregelix/src/test/resources/jobs/TipRemoveGraph.xml b/genomix/genomix-pregelix/src/test/resources/jobs/TipRemoveGraph.xml
index 1fcacc9..588cc9f 100644
--- a/genomix/genomix-pregelix/src/test/resources/jobs/TipRemoveGraph.xml
+++ b/genomix/genomix-pregelix/src/test/resources/jobs/TipRemoveGraph.xml
@@ -96,7 +96,7 @@
<property><name>io.sort.mb</name><value>100</value></property>
<property><name>mapred.local.dir</name><value>${hadoop.tmp.dir}/mapred/local</value></property>
<property><name>io.sort.factor</name><value>10</value></property>
-<property><name>BasicPathMergeVertex.kmerSize</name><value>3</value></property>
+<property><name>BasicPathMergeVertex.kmerSize</name><value>5</value></property>
<property><name>mapred.task.profile</name><value>false</value></property>
<property><name>job.end.retry.interval</name><value>30000</value></property>
<property><name>mapred.tasktracker.procfsbasedprocesstree.sleeptime-before-sigkill</name><value>5000</value></property>
@@ -122,7 +122,7 @@
<property><name>mapred.map.tasks.speculative.execution</name><value>true</value></property>
<property><name>mapred.inmem.merge.threshold</name><value>1000</value></property>
<property><name>hadoop.logfile.size</name><value>10000000</value></property>
-<property><name>pregelix.vertexInputFormatClass</name><value>edu.uci.ics.genomix.pregelix.format.DataCleanInputFormat</value></property>
+<property><name>pregelix.vertexInputFormatClass</name><value>edu.uci.ics.genomix.pregelix.format.NaiveAlgorithmForPathMergeInputFormat</value></property>
<property><name>mapred.job.queue.name</name><value>default</value></property>
<property><name>mapred.job.tracker.persist.jobstatus.active</name><value>false</value></property>
<property><name>pregelix.incStateLength</name><value>true</value></property>