Details
diff --git a/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateComparator.java b/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateComparator.java
index 8ff86eb..9239bf5 100644
--- a/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateComparator.java
+++ b/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateComparator.java
@@ -18,7 +18,6 @@ package azkaban.executor.dispatcher;
import java.util.Collection;
import java.util.Comparator;
-import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -43,25 +42,22 @@ public abstract class CandidateComparator<T> implements Comparator<T> {
* */
public abstract String getName();
- /** differentiate method which will kick in when the comparator list generated an equality result for
- * both sides. the differentiate method will try best to make sure a stable result is returned.
+ /** tieBreak method which will kick in when the comparator list generated an equality result for
+ * both sides. the tieBreak method will try best to make sure a stable result is returned.
* */
- protected boolean differentiate(T object1, T object2){
- if (object2 == null) return true;
- if (object1 == null) return false;
-
+ protected boolean tieBreak(T object1, T object2){
return object1.hashCode() >= object2.hashCode();
}
/** function to register a factorComparator to the internal Map for future reference.
* @param factorComparator : the comparator object to be registered.
+ * @throws IllegalArgumentException
* */
protected void registerFactorComparator(FactorComparator<T> comparator){
if (null == comparator ||
Integer.MAX_VALUE - this.getTotalWeight() < comparator.getWeight() ) {
- logger.info(
- "skipping registerFactorComparator as the comaractor is null or has an invalid weight value.");
- return;
+ throw new IllegalArgumentException("unable to register comparator."+
+ " The passed comparator is null or has an invalid weight value.");
}
// add or replace the Comparator.
@@ -73,28 +69,25 @@ public abstract class CandidateComparator<T> implements Comparator<T> {
/** function update the weight of a specific registered factorCompartor.
* @param factorName : the name of the registered factorComparator to adjust.
* @param weight: the new weight value to be adjusted to.
- * @return -1 if the factor doesn't exist or the weight value specified is invalid,
- * the original value before update otherwise.
+ * @return the original value before update.
+ * @throws IllegalArgumentException
* */
public int adjustFactorWeight(String factorName, int weight){
// shortcut if the input is invalid.
if (factorName == null ||
- factorName == "" ||
+ factorName.length() == 0||
weight < 0 ||
Integer.MAX_VALUE - this.getTotalWeight() < weight){
- logger.info(
- "skipping adjustFactorWeight as one or more of the input parameters are invalid");
- return -1;
+ throw new IllegalArgumentException("unable to adjust factor weight as one or more of the input parameters are invalid");
}
FactorComparator<T> value = this.factorComparatorList.get(factorName);
// shortcut if the key doesn't exist.
if (null == value){
- logger.info(String.format(
+ throw new IllegalArgumentException(String.format(
"unable to udpate weight as the specified factorName %s doesn't exist",
factorName));
- return -1;
}
int returnVal = value.getWeight();
@@ -129,13 +122,16 @@ public abstract class CandidateComparator<T> implements Comparator<T> {
* 4. final result will be returned in a Pair container.
*
* */
- public Pair<Integer,Integer> getReult(T object1, T object2){
+ public Pair<Integer,Integer> getComparisonScore(T object1, T object2){
logger.info(String.format("start comparing '%s' with '%s', total weight = %s ",
object1 == null ? "(null)" : object1.toString(),
object2 == null ? "(null)" : object2.toString(),
this.getTotalWeight()));
// short cut if object equals.
+ // Note if: objects are reference equals, there is no need to call
+ // TieBreaker as returning either side actually doesn't matter,
+ // because they are the same.
if (object1 == object2){
logger.info("Result : 0 vs 0 (equal)");
return new Pair<Integer,Integer>(0,0);
@@ -157,9 +153,7 @@ public abstract class CandidateComparator<T> implements Comparator<T> {
int result1 = 0 ;
int result2 = 0 ;
Collection<FactorComparator<T>> comparatorList = this.factorComparatorList.values();
- Iterator<FactorComparator<T>> mapItr = comparatorList.iterator();
- while (mapItr.hasNext()){
- FactorComparator<T> comparator = (FactorComparator<T>) mapItr.next();
+ for (FactorComparator<T> comparator :comparatorList){
int result = comparator.compare(object1, object2);
result1 = result1 + (result > 0 ? comparator.getWeight() : 0);
result2 = result2 + (result < 0 ? comparator.getWeight() : 0);
@@ -167,10 +161,10 @@ public abstract class CandidateComparator<T> implements Comparator<T> {
comparator.getFactorName(), result, result1, result2));
}
- // in case of same score, user differentiator to stabilize the result.
+ // in case of same score, use tie-breaker to stabilize the result.
if (result1 == result2){
- boolean result = this.differentiate(object1, object2);
- logger.info("[Differentiator] differentiator chose " + (result? object1.toString(): object2.toString()));
+ boolean result = this.tieBreak(object1, object2);
+ logger.info("[TieBreaker] TieBreaker chose " + (result? object1.toString(): object2.toString()));
if (result) result1++; else result2++;
}
@@ -180,7 +174,7 @@ public abstract class CandidateComparator<T> implements Comparator<T> {
@Override
public int compare(T o1, T o2) {
- Pair<Integer,Integer> result = this.getReult(o1,o2);
+ Pair<Integer,Integer> result = this.getComparisonScore(o1,o2);
return result.getFirst() == result.getSecond() ? 0 :
result.getFirst() > result.getSecond() ? 1 : -1;
}
diff --git a/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateFilter.java b/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateFilter.java
index dac8fcd..2823582 100644
--- a/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateFilter.java
+++ b/azkaban-common/src/main/java/azkaban/executor/dispatcher/CandidateFilter.java
@@ -27,7 +27,6 @@ import org.apache.log4j.Logger;
/** Abstract class for a candidate filter.
* this class contains implementation of most of the core logics. Implementing classes is expected only to
* register filters using the provided register function.
- *
*/
public abstract class CandidateFilter<T,V> {
private static Logger logger = Logger.getLogger(CandidateFilter.class);
@@ -43,11 +42,12 @@ public abstract class CandidateFilter<T,V> {
/** function to register a factorFilter to the internal Map for future reference.
* @param factorfilter : the Filter object to be registered.
+ * @throws IllegalArgumentException
* */
protected void registerFactorFilter(FactorFilter<T,V> filter){
if (null == filter ) {
- logger.info("skipping registerFactorFilter as the comaractor is null or has an invalid weight value.");
- return;
+ throw new IllegalArgumentException("unable to register factor filter. " +
+ "The passed comaractor is null or has an invalid weight value.");
}
// add or replace the filter.
@@ -56,11 +56,15 @@ public abstract class CandidateFilter<T,V> {
filter.getFactorName()));
}
- /** function to get the filtering result.
+ /** function to analyze the target item according to the reference object to decide whether the item should be filtered.
+ * @param filteringTarget: object to be checked.
+ * @param referencingObject: object which contains statistics based on which a decision is made whether
+ * the object being checked need to be filtered or not.
+ * @return true if the check passed, false if check failed, which means the item need to be filtered.
* */
- public boolean check(T item, V object){
+ public boolean analyzeTarget(T filteringTarget, V referencingObject){
logger.info(String.format("start checking '%s' with factor filter for '%s'",
- item == null ? "(null)" : item.toString(),
+ filteringTarget == null ? "(null)" : filteringTarget.toString(),
this.getName()));
Collection<FactorFilter<T,V>> filterList = this.factorFilterList.values();
@@ -68,7 +72,7 @@ public abstract class CandidateFilter<T,V> {
boolean result = true;
while (mapItr.hasNext()){
FactorFilter<T,V> filter = (FactorFilter<T,V>) mapItr.next();
- result &= filter.check(item,object);
+ result &= filter.check(filteringTarget,referencingObject);
logger.info(String.format("[Factor: %s] filter result : %s ",
filter.getFactorName(), result));
if (!result){
diff --git a/azkaban-common/src/main/java/azkaban/executor/dispatcher/ExecutorDispatcher.java b/azkaban-common/src/main/java/azkaban/executor/dispatcher/ExecutorDispatcher.java
index 9ed3be0..1045fc8 100644
--- a/azkaban-common/src/main/java/azkaban/executor/dispatcher/ExecutorDispatcher.java
+++ b/azkaban-common/src/main/java/azkaban/executor/dispatcher/ExecutorDispatcher.java
@@ -83,7 +83,7 @@ public class ExecutorDispatcher<K,V> implements Dispatcher<K, V> {
if (null != this.filter){
for (K candidateInfo : candidateList){
- if (filter.check(candidateInfo,dispatchingObject)){
+ if (filter.analyzeTarget(candidateInfo,dispatchingObject)){
filteredList.add(candidateInfo);
}
}
diff --git a/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorComparator.java b/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorComparator.java
index cb99f9d..37229ca 100644
--- a/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorComparator.java
+++ b/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorComparator.java
@@ -46,7 +46,7 @@ public final class FactorComparator<T>{
* */
public static <T> FactorComparator<T> create(String factorName, int weight, Comparator<T> comparator){
- if (null == factorName || factorName == "" || weight < 0 || null == comparator){
+ if (null == factorName || factorName.length() == 0 || weight < 0 || null == comparator){
logger.error("failed to create instance of FactorComparator, at least one of the input paramters are invalid");
return null;
}
diff --git a/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorFilter.java b/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorFilter.java
index 6d57413..f944c25 100644
--- a/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorFilter.java
+++ b/azkaban-common/src/main/java/azkaban/executor/dispatcher/FactorFilter.java
@@ -43,7 +43,7 @@ public final class FactorFilter<T,V>{
* */
public static <T,V> FactorFilter<T,V> create(String factorName, Filter<T,V> filter){
- if (null == factorName || factorName == "" || null == filter){
+ if (null == factorName || factorName.length() == 0 || null == filter){
logger.error("failed to create instance of FactorFilter, at least one of the input paramters are invalid");
return null;
}
@@ -58,19 +58,19 @@ public final class FactorFilter<T,V>{
// the actual check function, which will leverage the logic defined by user.
public boolean check(T itemToCheck, V sourceObject){
- return this.filter.check(itemToCheck, sourceObject);
+ return this.filter.analyzeTarget(itemToCheck, sourceObject);
}
// interface of the filter.
public interface Filter<K,V>{
- /**check function for the filter.
- * @param itemToCheck: object to be checked.
- * @param sourceObject: object which contains statistics based on which a decision is made whether
+ /**function to analyze the target item according to the reference object to decide whether the item should be filtered.
+ * @param filteringTarget: object to be checked.
+ * @param referencingObject: object which contains statistics based on which a decision is made whether
* the object being checked need to be filtered or not.
* @return true if the check passed, false if check failed, which means the item need to be filtered.
* */
- public boolean check(K itemToCheck, V sourceObject);
+ public boolean analyzeTarget(K filteringTarget, V referencingObject);
}
diff --git a/azkaban-common/src/main/java/azkaban/executor/ExecutorApiClient.java b/azkaban-common/src/main/java/azkaban/executor/ExecutorApiClient.java
index bf74b95..4d77897 100644
--- a/azkaban-common/src/main/java/azkaban/executor/ExecutorApiClient.java
+++ b/azkaban-common/src/main/java/azkaban/executor/ExecutorApiClient.java
@@ -17,7 +17,7 @@
package azkaban.executor;
import java.io.IOException;
-import java.net.URI;
+import java.util.HashMap;
import java.util.Map;
import org.apache.http.HttpEntity;
@@ -27,47 +27,38 @@ import org.apache.http.client.HttpResponseException;
import org.apache.http.util.EntityUtils;
import azkaban.utils.JSONUtils;
-import azkaban.utils.Pair;
import azkaban.utils.RestfulApiClient;
/** Client class that will be used to handle all Restful API calls between Executor and the host application.
* */
public class ExecutorApiClient extends RestfulApiClient<Map<String, Object>> {
-
- // hide the constructor. we what this class to be in singleton.
private ExecutorApiClient(){}
+ private static ExecutorApiClient instance = new ExecutorApiClient();
- // international cache for the object instance.
- private static ExecutorApiClient instance = null;
-
- /**Singleton creator of the class.
+ /** Function to return the instance of the ExecutorApiClient class.
* */
public static ExecutorApiClient getInstance() {
- if (null == instance) {
- synchronized (ExecutorApiClient.class) {
- if (null == instance) {
- instance = new ExecutorApiClient();
- }
- }
- }
return instance;
}
/**Implementing the parseResponse function to return de-serialized Json object.
* @param response the returned response from the HttpClient.
+ * @return de-serialized object from Json or empty object if the response doesn't have a body.
* */
@SuppressWarnings("unchecked")
@Override
protected Map<String, Object> parseResponse(HttpResponse response)
throws HttpResponseException, IOException {
final StatusLine statusLine = response.getStatusLine();
+ String responseBody = response.getEntity() != null ?
+ EntityUtils.toString(response.getEntity()) : "";
+
if (statusLine.getStatusCode() >= 300) {
logger.error(String.format("unable to parse response as the response status is %s",
statusLine.getStatusCode()));
- throw new HttpResponseException(statusLine.getStatusCode(),
- statusLine.getReasonPhrase());
+ throw new HttpResponseException(statusLine.getStatusCode(),responseBody);
}
final HttpEntity entity = response.getEntity();
@@ -77,25 +68,7 @@ public class ExecutorApiClient extends RestfulApiClient<Map<String, Object>> {
return (Map<String, Object>) returnVal;
}
}
- return null;
- }
-
- /**function to get executor status .
- * @param executorHost Host name of the executor.
- * @param executorPort Host port.
- * @param action query action.
- * @param param extra query parameters
- * @return the de-serialized JSON object in Map<String, Object> format.
- * */
- @SuppressWarnings("unchecked")
- public Map<String, Object> callExecutorStats(String executorHost, int executorPort,
- String action, Pair<String, String>... params) throws IOException {
-
- // form up the URI.
- URI uri = ExecutorApiClient.BuildUri(executorHost, executorPort, "/stats", true,params);
- uri = ExecutorApiClient.BuildUri(uri, new Pair<String, String>(ConnectorParams.ACTION_PARAM, action));
- return this.httpGet(uri, null);
- }
- // TO-DO reflector other API call functions out from the ExecutorManager.
+ return new HashMap<String, Object>() ;
+ }
}
diff --git a/azkaban-common/src/main/java/azkaban/utils/RestfulApiClient.java b/azkaban-common/src/main/java/azkaban/utils/RestfulApiClient.java
index 0b39a7d..ef0ef46 100644
--- a/azkaban-common/src/main/java/azkaban/utils/RestfulApiClient.java
+++ b/azkaban-common/src/main/java/azkaban/utils/RestfulApiClient.java
@@ -153,7 +153,7 @@ public abstract class RestfulApiClient<T> {
* @return the URI built from the inputs.
* @throws IOException
* */
- public static URI BuildUri(String host, int port, String path,
+ public static URI buildUri(String host, int port, String path,
boolean isHttp, Pair<String, String>... params) throws IOException{
URIBuilder builder = new URIBuilder();
builder.setScheme(isHttp? "http" : "https").setHost(host).setPort(port);
diff --git a/azkaban-common/src/test/java/azkaban/executor/DispatcherTest.java b/azkaban-common/src/test/java/azkaban/executor/DispatcherTest.java
index a5a5cf8..dc1af73 100644
--- a/azkaban-common/src/test/java/azkaban/executor/DispatcherTest.java
+++ b/azkaban-common/src/test/java/azkaban/executor/DispatcherTest.java
@@ -112,7 +112,7 @@ public class DispatcherTest {
public void registerFilterforTotalMemory(){
this.registerFactorFilter(FactorFilter.create("requiredTotalMemory",
new FactorFilter.Filter<MockExecutorObject,MockFlowObject>() {
- public boolean check(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
+ public boolean analyzeTarget(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
// REAL LOGIC COMES HERE -
if (null == itemToCheck || null == sourceObject){
return false;
@@ -131,7 +131,7 @@ public class DispatcherTest {
public void registerFilterforRemainingMemory(){
this.registerFactorFilter(FactorFilter.create("requiredRemainingMemory",
new FactorFilter.Filter<MockExecutorObject,MockFlowObject>() {
- public boolean check(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
+ public boolean analyzeTarget(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
// REAL LOGIC COMES HERE -
if (null == itemToCheck || null == sourceObject){
return false;
@@ -143,7 +143,7 @@ public class DispatcherTest {
public void registerFilterforPriority(){
this.registerFactorFilter(FactorFilter.create("requiredProprity",
new FactorFilter.Filter<MockExecutorObject,MockFlowObject>() {
- public boolean check(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
+ public boolean analyzeTarget(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
// REAL LOGIC COMES HERE -
if (null == itemToCheck || null == sourceObject){
return false;
@@ -157,7 +157,7 @@ public class DispatcherTest {
public void registerFilterforRemainingTmpSpace(){
this.registerFactorFilter(FactorFilter.create("requiredRemainingTmpSpace",
new FactorFilter.Filter<MockExecutorObject,MockFlowObject>() {
- public boolean check(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
+ public boolean analyzeTarget(MockExecutorObject itemToCheck, MockFlowObject sourceObject) {
// REAL LOGIC COMES HERE -
if (null == itemToCheck || null == sourceObject){
return false;
@@ -179,9 +179,7 @@ public class DispatcherTest {
}
@Override
- protected boolean differentiate(MockExecutorObject object1, MockExecutorObject object2){
- if (object2 == null) return true;
- if (object1 == null) return false;
+ protected boolean tieBreak(MockExecutorObject object1, MockExecutorObject object2){
return object1.name.compareTo(object2.name) >= 0;
}
@@ -282,16 +280,11 @@ public class DispatcherTest {
mFilter.registerFilterforRemainingMemory();
// expect true.
- boolean result = mFilter.check(this.getExecutorByName("Executor1"), dispatchingObj);
- /*
- 1 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor1' with factor filter for 'Mockfilter'
- 1 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 1 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : true
- * */
+ boolean result = mFilter.analyzeTarget(this.getExecutorByName("Executor1"), dispatchingObj);
Assert.assertTrue(result);
//expect true.
- result = mFilter.check(this.getExecutorByName("Executor3"), dispatchingObj);
+ result = mFilter.analyzeTarget(this.getExecutorByName("Executor3"), dispatchingObj);
/*
1 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor3' with factor filter for 'Mockfilter'
2 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
@@ -301,7 +294,7 @@ public class DispatcherTest {
// add the priority filter.
mFilter.registerFilterforPriority();
- result = mFilter.check(this.getExecutorByName("Executor3"), dispatchingObj);
+ result = mFilter.analyzeTarget(this.getExecutorByName("Executor3"), dispatchingObj);
// expect false, for priority.
/*
2 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor3' with factor filter for 'Mockfilter'
@@ -315,7 +308,7 @@ public class DispatcherTest {
mFilter.registerFilterforRemainingTmpSpace();
// expect pass.
- result = mFilter.check(this.getExecutorByName("Executor2"), dispatchingObj);
+ result = mFilter.analyzeTarget(this.getExecutorByName("Executor2"), dispatchingObj);
/*
3 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor2' with factor filter for 'Mockfilter'
3 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
@@ -326,7 +319,7 @@ public class DispatcherTest {
Assert.assertTrue(result);
// expect false, remaining tmp, priority will also fail but the logic shortcuts when the Tmp size check Fails.
- result = mFilter.check(this.getExecutorByName("Executor8"), dispatchingObj);
+ result = mFilter.analyzeTarget(this.getExecutorByName("Executor8"), dispatchingObj);
/*
4 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor8' with factor filter for 'Mockfilter'
4 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
@@ -351,150 +344,12 @@ public class DispatcherTest {
// expect again the #9 item to be selected.
comparator.registerComparerForPriority(6);
nextExecutor = Collections.max(this.executorList, comparator);
- /*
- 2 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor8' with 'Executor2', total weight = 5
- 2 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 2 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Differentiator] differentiator chose Executor8
- 3 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 1 vs 0
- 3 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor3' with 'Executor8', total weight = 5
- 4 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 4 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 4 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor9' with 'Executor8', total weight = 5
- 5 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 5 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 0
- 5 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor11' with 'Executor9', total weight = 5
- 6 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 6 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 0
- 6 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor12' with 'Executor11', total weight = 5
- 6 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 7 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 7 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor10' with 'Executor11', total weight = 5
- 7 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 8 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 8 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor1' with 'Executor11', total weight = 5
- 8 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 9 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 9 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor7' with 'Executor11', total weight = 5
- 9 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 9 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 10 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor6' with 'Executor11', total weight = 5
- 10 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 10 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 11 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor5' with 'Executor11', total weight = 5
- 11 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 11 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 12 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor4' with 'Executor11', total weight = 5
- 12 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 12 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 14 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Factor comparator added for 'Priority'. Weight = '6'
- 14 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor8' with 'Executor2', total weight = 11
- 14 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 14 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 6)
- 14 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 6
- 15 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor3' with 'Executor2', total weight = 11
- 15 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 15 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 11)
- 15 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 11
- 15 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor9' with 'Executor2', total weight = 11
- 15 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 1 (current score 11 vs 0)
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 11 vs 0
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor11' with 'Executor9', total weight = 11
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 5 vs 6)
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 6
- 16 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor12' with 'Executor9', total weight = 11
- 17 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 17 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 5 vs 0)
- 17 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 0
- 17 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor10' with 'Executor12', total weight = 11
- 17 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 17 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 11)
- 18 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 11
- 18 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor1' with 'Executor12', total weight = 11
- 18 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 18 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 18 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 18 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor7' with 'Executor12', total weight = 11
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor6' with 'Executor12', total weight = 11
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 19 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 20 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor5' with 'Executor12', total weight = 11
- 20 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 20 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 20 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 20 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor4' with 'Executor12', total weight = 11
- 20 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 21 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 11)
- 21 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 11
- * */
Assert.assertEquals(this.getExecutorByName("Executor12"),nextExecutor);
// add the remaining space factor.
// expect the #12 item to be returned.
comparator.registerComparerForRemainingSpace(3);
nextExecutor = Collections.max(this.executorList, comparator);
- /*
- 21 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor2' with 'Executor1', total weight = 14
- 22 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 22 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 6)
- 22 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 0 (current score 0 vs 6)
- 22 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 6
- 22 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor3' with 'Executor1', total weight = 14
- 23 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 23 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 11)
- 23 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 0 (current score 0 vs 11)
- 23 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 11
- 24 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor4' with 'Executor1', total weight = 14
- 24 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 24 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 6)
- 25 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 0 (current score 0 vs 6)
- 25 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 6
- 25 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor5' with 'Executor1', total weight = 14
- 25 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 25 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 26 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 0 (current score 0 vs 5)
- 26 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 26 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor6' with 'Executor1', total weight = 14
- 26 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 27 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 27 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : -1 (current score 0 vs 8)
- 27 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 8
- 27 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor7' with 'Executor1', total weight = 14
- 27 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 28 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 5)
- 28 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : -1 (current score 0 vs 8)
- 28 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 8
- 28 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor8' with 'Executor1', total weight = 14
- 29 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 29 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 6)
- 29 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : -1 (current score 0 vs 9)
- 29 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 9
- 30 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor9' with 'Executor1', total weight = 14
- 30 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 30 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 5 vs 0)
- 30 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : -1 (current score 5 vs 3)
- 30 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 3
- 31 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor10' with 'Executor9', total weight = 14
- 31 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : -1 (current score 0 vs 5)
- 31 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 11)
- 32 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : -1 (current score 0 vs 14)
- 32 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 14
- 32 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor11' with 'Executor9', total weight = 14
- 32 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 1 (current score 5 vs 0)
- 32 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 5 vs 6)
- 33 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : -1 (current score 5 vs 9)
- 33 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 9
- 33 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor12' with 'Executor9', total weight = 14
- 33 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 34 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 0 (current score 0 vs 0)
- 34 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 1 (current score 3 vs 0)
- 34 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 3 vs 0
- * */
Assert.assertEquals(this.getExecutorByName("Executor12"),nextExecutor);
}
@@ -520,77 +375,6 @@ public class DispatcherTest {
// expected selection = #12
MockExecutorObject nextExecutor = morkDispatcher.getNext(this.executorList, dispatchingObj);
- /*
- * 4743 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start candidate selection logic.
- 4744 [main] INFO azkaban.executor.dispatcher.CandidateComparator - candidate count before filtering: 12
- 4745 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor2' with factor filter for 'Mockfilter'
- 4746 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4747 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4747 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : true
- 4748 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredProprity] filter result : true
- 4749 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : true
- 4749 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor12' with factor filter for 'Mockfilter'
- 4750 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4751 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : false
- 4751 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4752 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor11' with factor filter for 'Mockfilter'
- 4752 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4753 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4753 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : false
- 4753 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4754 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor7' with factor filter for 'Mockfilter'
- 4754 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : false
- 4754 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4755 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor5' with factor filter for 'Mockfilter'
- 4755 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : false
- 4755 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4756 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor9' with factor filter for 'Mockfilter'
- 4756 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4756 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4757 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : false
- 4757 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4757 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor8' with factor filter for 'Mockfilter'
- 4757 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4758 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4758 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : false
- 4758 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4759 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor1' with factor filter for 'Mockfilter'
- 4759 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4759 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4760 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : true
- 4760 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredProprity] filter result : true
- 4760 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : true
- 4761 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor4' with factor filter for 'Mockfilter'
- 4761 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4761 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4762 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : true
- 4762 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredProprity] filter result : true
- 4762 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : true
- 4763 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor6' with factor filter for 'Mockfilter'
- 4763 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : false
- 4763 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4764 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor3' with factor filter for 'Mockfilter'
- 4764 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : true
- 4764 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredTotalMemory] filter result : true
- 4765 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingTmpSpace] filter result : true
- 4765 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredProprity] filter result : false
- 4765 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4765 [main] INFO azkaban.executor.dispatcher.CandidateFilter - start checking 'Executor10' with factor filter for 'Mockfilter'
- 4766 [main] INFO azkaban.executor.dispatcher.CandidateFilter - [Factor: requiredRemainingMemory] filter result : false
- 4766 [main] INFO azkaban.executor.dispatcher.CandidateFilter - Final checking result : false
- 4766 [main] INFO azkaban.executor.dispatcher.CandidateComparator - candidate count after filtering: 3
- 4767 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor1' with 'Executor2', total weight = 11
- 4767 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 4768 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : 1 (current score 5 vs 0)
- 4768 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 0 (current score 5 vs 0)
- 4769 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 5 vs 0
- 4770 [main] INFO azkaban.executor.dispatcher.CandidateComparator - start comparing 'Executor4' with 'Executor1', total weight = 11
- 4771 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Memory] compare result : 0 (current score 0 vs 0)
- 4771 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: Priority] compare result : -1 (current score 0 vs 5)
- 4772 [main] INFO azkaban.executor.dispatcher.CandidateComparator - [Factor: RemainingTmp] compare result : 0 (current score 0 vs 5)
- 4772 [main] INFO azkaban.executor.dispatcher.CandidateComparator - Result : 0 vs 5
- 4772 [main] INFO azkaban.executor.dispatcher.CandidateComparator - candidate selected Executor1
- */
Assert.assertEquals(this.getExecutorByName("Executor1"),nextExecutor);
// remaining memory 11500, total memory 3095, remainingTmpSpace 14200, priority 2.
diff --git a/azkaban-common/src/test/java/azkaban/utils/RestfulApiClientTest.java b/azkaban-common/src/test/java/azkaban/utils/RestfulApiClientTest.java
index 4a36132..85b2666 100644
--- a/azkaban-common/src/test/java/azkaban/utils/RestfulApiClientTest.java
+++ b/azkaban-common/src/test/java/azkaban/utils/RestfulApiClientTest.java
@@ -103,7 +103,7 @@ public class RestfulApiClientTest {
public void testHttpGet() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
String result = mockClient.httpGet(uri, null);
@@ -115,7 +115,7 @@ public class RestfulApiClientTest {
public void testHttpGetWithHeaderItems() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
ArrayList<NameValuePair> headerItems = new ArrayList<NameValuePair>();
@@ -133,7 +133,7 @@ public class RestfulApiClientTest {
public void testHttpPost() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
ArrayList<NameValuePair> headerItems = new ArrayList<NameValuePair>();
@@ -154,7 +154,7 @@ public class RestfulApiClientTest {
public void testHttpPostWOBody() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
String result = mockClient.httpPost(uri, null,null);
@@ -168,7 +168,7 @@ public class RestfulApiClientTest {
public void testHttpPut() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
ArrayList<NameValuePair> headerItems = new ArrayList<NameValuePair>();
@@ -189,7 +189,7 @@ public class RestfulApiClientTest {
public void testContentLength() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
String content = "123456789";
@@ -203,7 +203,7 @@ public class RestfulApiClientTest {
public void testContentLengthOverride() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
ArrayList<NameValuePair> headerItems = new ArrayList<NameValuePair>();
@@ -221,7 +221,7 @@ public class RestfulApiClientTest {
public void testHttpDelete() throws Exception {
MockRestfulApiClient mockClient = new MockRestfulApiClient();
@SuppressWarnings("unchecked")
- URI uri = MockRestfulApiClient.BuildUri("test.com", 80, "test", true,
+ URI uri = MockRestfulApiClient.buildUri("test.com", 80, "test", true,
new Pair <String,String>("Entry1","Value1"));
ArrayList<NameValuePair> headerItems = new ArrayList<NameValuePair>();