SLIDER-654 TestStandaloneAgentAM failing
diff --git a/slider-core/src/main/java/org/apache/slider/client/SliderClient.java b/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
index 94fc32c..21c4965 100644
--- a/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
+++ b/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
@@ -3361,6 +3361,10 @@
serviceclassPath(currentUser(), SliderKeys.APP_TYPE));
return new ArrayList<String>(recordMap.keySet());
/// JDK7 } catch (YarnException | IOException e) {
+ } catch (PathNotFoundException e) {
+ log.debug("No registry path for slider instances for current user: {}", e, e);
+ // no entries: return an empty list
+ return new ArrayList<String>(0);
} catch (IOException e) {
throw e;
} catch (YarnException e) {
diff --git a/slider-core/src/test/groovy/org/apache/slider/agent/standalone/TestStandaloneAgentAM.groovy b/slider-core/src/test/groovy/org/apache/slider/agent/standalone/TestStandaloneAgentAM.groovy
index c31e9d3..160f4b7 100644
--- a/slider-core/src/test/groovy/org/apache/slider/agent/standalone/TestStandaloneAgentAM.groovy
+++ b/slider-core/src/test/groovy/org/apache/slider/agent/standalone/TestStandaloneAgentAM.groovy
@@ -30,6 +30,7 @@
import org.apache.slider.client.SliderClient
import org.apache.slider.common.SliderKeys
import org.apache.slider.common.params.ActionRegistryArgs
+import org.apache.slider.common.tools.Duration
import org.apache.slider.core.build.InstanceBuilder
import org.apache.slider.core.conf.AggregateConf
import org.apache.slider.core.exceptions.SliderException
@@ -110,9 +111,20 @@
//switch to the slider ZK-based registry
describe "service registry instance IDs"
- def instanceIds = client.listRegisteredSliderInstances()
+ // iterate waiting for registry to come up
+ List<String> instanceIds = []
+ Duration duration = new Duration(10000)
+ duration.start()
+
+ while (!duration.limitExceeded && instanceIds.size() < 1) {
+ instanceIds = client.listRegisteredSliderInstances()
+ if (!instanceIds.size()) {
+ sleep(500)
+ }
+ }
log.info("number of instanceIds: ${instanceIds.size()}")
+ assert instanceIds.size() >= 1
instanceIds.each { String it -> log.info(it) }
describe "Yarn registry"