You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by ch...@apache.org on 2018/02/20 15:48:49 UTC

[1/4] flink git commit: [FLINK-8621][prometheus][tests] Remove endpointIsUnavailableAfterReporterIsClosed()

Repository: flink
Updated Branches:
  refs/heads/release-1.4 528317c8f -> a7df42485


[FLINK-8621][prometheus][tests] Remove endpointIsUnavailableAfterReporterIsClosed()

The test is inherently unstable as it will always fail if any other
server is started on the port between the closing of the reporter and
the polling of metrics.

This closes #5473.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/45efe470
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/45efe470
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/45efe470

Branch: refs/heads/release-1.4
Commit: 45efe4702ac1d932afa1b322e93264c28aefbc4a
Parents: 528317c
Author: zentol <ch...@apache.org>
Authored: Tue Feb 13 10:31:31 2018 +0100
Committer: zentol <ch...@apache.org>
Committed: Tue Feb 20 16:48:25 2018 +0100

----------------------------------------------------------------------
 .../flink/metrics/prometheus/PrometheusReporterTest.java    | 9 ---------
 1 file changed, 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/45efe470/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
----------------------------------------------------------------------
diff --git a/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java b/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
index 6704189..1a70865 100644
--- a/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
+++ b/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
@@ -157,15 +157,6 @@ public class PrometheusReporterTest extends TestLogger {
 	}
 
 	@Test
-	public void endpointIsUnavailableAfterReporterIsClosed() throws UnirestException {
-		MetricRegistryImpl registry = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", "9400-9500")));
-		PrometheusReporter reporter = (PrometheusReporter) registry.getReporters().get(0);
-		reporter.close();
-		thrown.expect(UnirestException.class);
-		pollMetrics(reporter.getPort());
-	}
-
-	@Test
 	public void invalidCharactersAreReplacedWithUnderscore() {
 		assertThat(PrometheusReporter.replaceInvalidChars(""), equalTo(""));
 		assertThat(PrometheusReporter.replaceInvalidChars("abc"), equalTo("abc"));


[3/4] flink git commit: [hotfix][prometheus][tests] Add utility for generating port ranges

Posted by ch...@apache.org.
[hotfix][prometheus][tests] Add utility for generating port ranges


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/527faf63
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/527faf63
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/527faf63

Branch: refs/heads/release-1.4
Commit: 527faf63e21eaeedd3ab471ec7d2556985422734
Parents: d88f43b
Author: zentol <ch...@apache.org>
Authored: Tue Feb 13 10:33:31 2018 +0100
Committer: zentol <ch...@apache.org>
Committed: Tue Feb 20 16:48:42 2018 +0100

----------------------------------------------------------------------
 .../prometheus/PrometheusReporterTest.java      | 41 ++++++++++++++++++--
 1 file changed, 37 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/527faf63/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
----------------------------------------------------------------------
diff --git a/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java b/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
index 1a70865..8b4d286 100644
--- a/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
+++ b/flink-metrics/flink-metrics-prometheus/src/test/java/org/apache/flink/metrics/prometheus/PrometheusReporterTest.java
@@ -45,6 +45,8 @@ import org.junit.Test;
 import org.junit.rules.ExpectedException;
 
 import java.util.Arrays;
+import java.util.Iterator;
+import java.util.NoSuchElementException;
 
 import static org.apache.flink.metrics.prometheus.PrometheusReporter.ARG_PORT;
 import static org.hamcrest.Matchers.containsString;
@@ -66,6 +68,8 @@ public class PrometheusReporterTest extends TestLogger {
 	private static final String DEFAULT_LABELS = "{" + DIMENSIONS + ",}";
 	private static final String SCOPE_PREFIX = "flink_taskmanager_";
 
+	private static final PortRangeProvider portRangeProvider = new PortRangeProvider();
+
 	@Rule
 	public ExpectedException thrown = ExpectedException.none();
 
@@ -75,7 +79,7 @@ public class PrometheusReporterTest extends TestLogger {
 
 	@Before
 	public void setupReporter() {
-		registry = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", "9400-9500")));
+		registry = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", portRangeProvider.next())));
 		metricGroup = new FrontMetricGroup<>(0, new TaskManagerMetricGroup(registry, HOST_NAME, TASK_MANAGER));
 		reporter = (PrometheusReporter) registry.getReporters().get(0);
 	}
@@ -235,7 +239,7 @@ public class PrometheusReporterTest extends TestLogger {
 
 	@Test
 	public void cannotStartTwoReportersOnSamePort() {
-		final MetricRegistryImpl fixedPort1 = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", "9400-9500")));
+		final MetricRegistryImpl fixedPort1 = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", portRangeProvider.next())));
 		assertThat(fixedPort1.getReporters(), hasSize(1));
 
 		PrometheusReporter firstReporter = (PrometheusReporter) fixedPort1.getReporters().get(0);
@@ -249,8 +253,9 @@ public class PrometheusReporterTest extends TestLogger {
 
 	@Test
 	public void canStartTwoReportersWhenUsingPortRange() {
-		final MetricRegistryImpl portRange1 = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", "9200-9300")));
-		final MetricRegistryImpl portRange2 = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test2", "9200-9300")));
+		String portRange = portRangeProvider.next();
+		final MetricRegistryImpl portRange1 = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test1", portRange)));
+		final MetricRegistryImpl portRange2 = new MetricRegistryImpl(MetricRegistryConfiguration.fromConfiguration(createConfigWithOneReporter("test2", portRange)));
 
 		assertThat(portRange1.getReporters(), hasSize(1));
 		assertThat(portRange2.getReporters(), hasSize(1));
@@ -280,4 +285,32 @@ public class PrometheusReporterTest extends TestLogger {
 	public void closeReporterAndShutdownRegistry() {
 		registry.shutdown();
 	}
+
+	/**
+	 * Utility class providing distinct port ranges.
+	 */
+	private static class PortRangeProvider implements Iterator<String> {
+
+		private int base = 9000;
+
+		@Override
+		public boolean hasNext() {
+			return base < 14000; // arbitrary limit that should be sufficient for test purposes
+		}
+
+		/**
+		 * Returns the next port range containing exactly 100 ports.
+		 *
+		 * @return next port range
+		 */
+		public String next() {
+			if (!hasNext()) {
+				throw new NoSuchElementException();
+			}
+			int lowEnd = base;
+			int highEnd = base + 99;
+			base += 100;
+			return String.valueOf(lowEnd) + "-" + String.valueOf(highEnd);
+		}
+	}
 }


[4/4] flink git commit: [FLINK-8574][travis] Add timestamp to logging messages

Posted by ch...@apache.org.
[FLINK-8574][travis] Add timestamp to logging messages

This closes #5419.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/a7df4248
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/a7df4248
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/a7df4248

Branch: refs/heads/release-1.4
Commit: a7df42485a6d96bb7167c6597b9b0d1c59390f4d
Parents: 527faf6
Author: zentol <ch...@apache.org>
Authored: Wed Feb 7 09:52:23 2018 +0100
Committer: zentol <ch...@apache.org>
Committed: Tue Feb 20 16:48:46 2018 +0100

----------------------------------------------------------------------
 .travis.yml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/a7df4248/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index 5e2ef74..7d2035b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -110,6 +110,7 @@ before_install:
    - "rm apache-maven-3.2.5-bin.zip"
    - "export M2_HOME=$PWD/apache-maven-3.2.5"
    - "export PATH=$M2_HOME/bin:$PATH"
+   - "export MAVEN_OPTS=\"-Dorg.slf4j.simpleLogger.showDateTime=true -Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss.SSS\""
 # just in case: clean up the .m2 home and remove invalid jar files
    - 'test ! -d $HOME/.m2/repository/ || find $HOME/.m2/repository/ -name "*.jar" -exec sh -c ''if ! zip -T {} >/dev/null ; then echo "deleting invalid file: {}"; rm {} ; fi'' \;'
 


[2/4] flink git commit: [hotfix][prometheus] Document internal usage of CollectorRegistry.defaultRegistry

Posted by ch...@apache.org.
[hotfix][prometheus] Document internal usage of CollectorRegistry.defaultRegistry

It appeared as if the HTTPServer wasn't actually doing anything, but it
internally accessed the singleton registry that we also access to
register metrics.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/d88f43bb
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/d88f43bb
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/d88f43bb

Branch: refs/heads/release-1.4
Commit: d88f43bb064ff34ec389915f0205fb1728d1bf56
Parents: 45efe47
Author: zentol <ch...@apache.org>
Authored: Tue Feb 13 10:33:03 2018 +0100
Committer: zentol <ch...@apache.org>
Committed: Tue Feb 20 16:48:37 2018 +0100

----------------------------------------------------------------------
 .../org/apache/flink/metrics/prometheus/PrometheusReporter.java     | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/d88f43bb/flink-metrics/flink-metrics-prometheus/src/main/java/org/apache/flink/metrics/prometheus/PrometheusReporter.java
----------------------------------------------------------------------
diff --git a/flink-metrics/flink-metrics-prometheus/src/main/java/org/apache/flink/metrics/prometheus/PrometheusReporter.java b/flink-metrics/flink-metrics-prometheus/src/main/java/org/apache/flink/metrics/prometheus/PrometheusReporter.java
index fad3ced..48fd8a4 100644
--- a/flink-metrics/flink-metrics-prometheus/src/main/java/org/apache/flink/metrics/prometheus/PrometheusReporter.java
+++ b/flink-metrics/flink-metrics-prometheus/src/main/java/org/apache/flink/metrics/prometheus/PrometheusReporter.java
@@ -98,6 +98,7 @@ public class PrometheusReporter implements MetricReporter {
 		while (ports.hasNext()) {
 			int port = ports.next();
 			try {
+				// internally accesses CollectorRegistry.defaultRegistry
 				httpServer = new HTTPServer(port);
 				this.port = port;
 				LOG.info("Started PrometheusReporter HTTP server on port {}.", port);