From ce2d730159ae24c7cebb22ec42d094fe5fdc888f Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Fri, 13 Aug 2021 17:14:53 +0200 Subject: build: Update Kotlin dependencies This change updates the Kotlin dependencies used by OpenDC to their latest version. --- gradle/libs.versions.toml | 20 ++++++++++---------- .../opendc/compute/service/ComputeServiceTest.kt | 22 +++++++++++----------- .../experiments/capelin/ExperimentHelpers.kt | 2 +- .../capelin/monitor/ExperimentMetricExporter.kt | 9 ++++++--- .../experiments/serverless/ServerlessExperiment.kt | 2 +- .../resources/impl/SimResourceInterpreterImpl.kt | 2 +- 6 files changed, 30 insertions(+), 27 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 8553787d..a9b1bf53 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,19 +1,19 @@ [versions] junit-jupiter = "5.7.2" junit-platform = "1.7.2" -slf4j = "1.7.30" +slf4j = "1.7.32" log4j = "2.14.1" -opentelemetry-main = "1.2.0" -opentelemetry-metrics = "1.2.0-alpha" +opentelemetry-main = "1.4.1" +opentelemetry-metrics = "1.4.1-alpha" hadoop = "3.3.0" -ktor = "1.6.1" -jackson = "2.12.3" +ktor = "1.6.2" +jackson = "2.12.4" [libraries] -kotlinx-coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version = "1.5.0" } +kotlinx-coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version = "1.5.1" } # Logging -kotlin-logging = { module = "io.github.microutils:kotlin-logging", version = "2.0.8" } +kotlin-logging = { module = "io.github.microutils:kotlin-logging", version = "2.0.10" } slf4j-simple = { module = "org.slf4j:slf4j-simple", version.ref = "slf4j" } log4j-slf4j = { module = "org.apache.logging.log4j:log4j-slf4j-impl", version.ref = "log4j" } sentry-log4j2 = { module = "io.sentry:sentry-log4j2", version = "4.3.0" } @@ -30,7 +30,7 @@ junit-jupiter-engine = { module = "org.junit.jupiter:junit-jupiter-engine", vers junit-jupiter-params = { module = "org.junit.jupiter:junit-jupiter-params", version.ref = "junit-jupiter" } junit-platform-commons = { module = "org.junit.platform:junit-platform-commons", version.ref = "junit-platform" } junit-platform-engine = { module = "org.junit.platform:junit-platform-engine", version.ref = "junit-platform" } -mockk = { module = "io.mockk:mockk", version = "1.11.0" } +mockk = { module = "io.mockk:mockk", version = "1.12.0" } # CLI clikt = { module = "com.github.ajalt.clikt:clikt", version = "3.2.0" } @@ -40,14 +40,14 @@ progressbar = { module = "me.tongfei:progressbar", version = "0.9.0" } jackson-module-kotlin = { module = "com.fasterxml.jackson.module:jackson-module-kotlin", version.ref = "jackson" } jackson-datatype-jsr310 = { module = "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", version.ref = "jackson" } parquet = { module = "org.apache.parquet:parquet-avro", version = "1.12.0" } -yaml = { module = "org.yaml:snakeyaml", version = "1.28" } +yaml = { module = "org.yaml:snakeyaml", version = "1.29" } config = { module = "com.typesafe:config", version = "1.4.1" } # Benchmark kotlinx-benchmark-runtime-jvm = { module = "org.jetbrains.kotlinx:kotlinx-benchmark-runtime-jvm", version = "0.3.1" } # Other -classgraph = { module = "io.github.classgraph:classgraph", version = "4.8.108" } +classgraph = { module = "io.github.classgraph:classgraph", version = "4.8.113" } hadoop-common = { module = "org.apache.hadoop:hadoop-common", version.ref = "hadoop" } hadoop-mapreduce-client-core = { module = "org.apache.hadoop:hadoop-mapreduce-client-core", version.ref = "hadoop" } ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" } diff --git a/opendc-compute/opendc-compute-service/src/test/kotlin/org/opendc/compute/service/ComputeServiceTest.kt b/opendc-compute/opendc-compute-service/src/test/kotlin/org/opendc/compute/service/ComputeServiceTest.kt index a6258845..7817c473 100644 --- a/opendc-compute/opendc-compute-service/src/test/kotlin/org/opendc/compute/service/ComputeServiceTest.kt +++ b/opendc-compute/opendc-compute-service/src/test/kotlin/org/opendc/compute/service/ComputeServiceTest.kt @@ -167,7 +167,7 @@ internal class ComputeServiceTest { val server = client.newServer("test", image, flavor, start = false) server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.ERROR, server.state) } @@ -180,7 +180,7 @@ internal class ComputeServiceTest { val server = client.newServer("test", image, flavor, start = false) server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.ERROR, server.state) } @@ -193,7 +193,7 @@ internal class ComputeServiceTest { val server = client.newServer("test", image, flavor, start = false) server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.ERROR, server.state) } @@ -207,7 +207,7 @@ internal class ComputeServiceTest { server.start() server.stop() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.TERMINATED, server.state) } @@ -228,7 +228,7 @@ internal class ComputeServiceTest { val server = client.newServer("test", image, flavor, start = false) server.start() - delay(10 * 60 * 1000) + delay(10L * 60 * 1000) server.refresh() assertEquals(ServerState.PROVISIONING, server.state) @@ -254,12 +254,12 @@ internal class ComputeServiceTest { val server = client.newServer("test", image, flavor, start = false) server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) every { host.state } returns HostState.UP listeners.forEach { it.onStateChanged(host, HostState.UP) } - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.PROVISIONING, server.state) @@ -284,13 +284,13 @@ internal class ComputeServiceTest { val image = client.newImage("test") val server = client.newServer("test", image, flavor, start = false) - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) every { host.state } returns HostState.DOWN listeners.forEach { it.onStateChanged(host, HostState.DOWN) } server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.PROVISIONING, server.state) @@ -344,7 +344,7 @@ internal class ComputeServiceTest { // Start server server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) coVerify { host.spawn(capture(slot), true) } listeners.forEach { it.onStateChanged(host, slot.captured, ServerState.RUNNING) } @@ -383,7 +383,7 @@ internal class ComputeServiceTest { val server = client.newServer("test", image, flavor, start = false) server.start() - delay(5 * 60 * 1000) + delay(5L * 60 * 1000) server.refresh() assertEquals(ServerState.PROVISIONING, server.state) diff --git a/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/ExperimentHelpers.kt b/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/ExperimentHelpers.kt index 9548253d..42d240dc 100644 --- a/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/ExperimentHelpers.kt +++ b/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/ExperimentHelpers.kt @@ -186,7 +186,7 @@ suspend fun withMonitor( this, listOf(metricProducer), ExperimentMetricExporter(monitor, clock, scheduler.hosts.associateBy { it.uid.toString() }), - exportInterval = 5 * 60 * 1000 /* Every 5 min (which is the granularity of the workload trace) */ + exportInterval = 5L * 60 * 1000 /* Every 5 min (which is the granularity of the workload trace) */ ) try { diff --git a/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/monitor/ExperimentMetricExporter.kt b/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/monitor/ExperimentMetricExporter.kt index 54ab3b5b..f520a28c 100644 --- a/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/monitor/ExperimentMetricExporter.kt +++ b/opendc-experiments/opendc-experiments-capelin/src/main/kotlin/org/opendc/experiments/capelin/monitor/ExperimentMetricExporter.kt @@ -22,6 +22,7 @@ package org.opendc.experiments.capelin.monitor +import io.opentelemetry.api.common.AttributeKey import io.opentelemetry.sdk.common.CompletableResultCode import io.opentelemetry.sdk.metrics.data.MetricData import io.opentelemetry.sdk.metrics.export.MetricExporter @@ -36,6 +37,8 @@ public class ExperimentMetricExporter( private val clock: Clock, private val hosts: Map ) : MetricExporter { + private val hostKey = AttributeKey.stringKey("host") + override fun export(metrics: Collection): CompletableResultCode { val metricsByName = metrics.associateBy { it.name } reportHostMetrics(metricsByName) @@ -99,7 +102,7 @@ public class ExperimentMetricExporter( private fun mapDoubleSummary(data: MetricData?, hostMetrics: MutableMap, block: (HostMetrics, Double) -> Unit) { val points = data?.doubleSummaryData?.points ?: emptyList() for (point in points) { - val uid = point.labels["host"] + val uid = point.attributes[hostKey] val hostMetric = hostMetrics[uid] if (hostMetric != null) { @@ -113,7 +116,7 @@ public class ExperimentMetricExporter( private fun mapDoubleGauge(data: MetricData?, hostMetrics: MutableMap, block: (HostMetrics, Double) -> Unit) { val points = data?.doubleGaugeData?.points ?: emptyList() for (point in points) { - val uid = point.labels["host"] + val uid = point.attributes[hostKey] val hostMetric = hostMetrics[uid] if (hostMetric != null) { @@ -125,7 +128,7 @@ public class ExperimentMetricExporter( private fun mapLongSum(data: MetricData?, hostMetrics: MutableMap, block: (HostMetrics, Long) -> Unit) { val points = data?.longSumData?.points ?: emptyList() for (point in points) { - val uid = point.labels["host"] + val uid = point.attributes[hostKey] val hostMetric = hostMetrics[uid] if (hostMetric != null) { diff --git a/opendc-experiments/opendc-experiments-serverless20/src/main/kotlin/org/opendc/experiments/serverless/ServerlessExperiment.kt b/opendc-experiments/opendc-experiments-serverless20/src/main/kotlin/org/opendc/experiments/serverless/ServerlessExperiment.kt index 231b491e..650416f5 100644 --- a/opendc-experiments/opendc-experiments-serverless20/src/main/kotlin/org/opendc/experiments/serverless/ServerlessExperiment.kt +++ b/opendc-experiments/opendc-experiments-serverless20/src/main/kotlin/org/opendc/experiments/serverless/ServerlessExperiment.kt @@ -85,7 +85,7 @@ public class ServerlessExperiment : Experiment("Serverless") { val delayInjector = StochasticDelayInjector(coldStartModel, Random()) val deployer = SimFunctionDeployer(clock, this, createMachineModel(), delayInjector) { FunctionTraceWorkload(traceById.getValue(it.name)) } val service = - FaaSService(coroutineContext, clock, meterProvider.get("opendc-serverless"), deployer, routingPolicy, FunctionTerminationPolicyFixed(coroutineContext, clock, timeout = 10 * 60 * 1000)) + FaaSService(coroutineContext, clock, meterProvider.get("opendc-serverless"), deployer, routingPolicy, FunctionTerminationPolicyFixed(coroutineContext, clock, timeout = 10L * 60 * 1000)) val client = service.newClient() coroutineScope { diff --git a/opendc-simulator/opendc-simulator-resources/src/main/kotlin/org/opendc/simulator/resources/impl/SimResourceInterpreterImpl.kt b/opendc-simulator/opendc-simulator-resources/src/main/kotlin/org/opendc/simulator/resources/impl/SimResourceInterpreterImpl.kt index 6dd02ae5..c3dcebd0 100644 --- a/opendc-simulator/opendc-simulator-resources/src/main/kotlin/org/opendc/simulator/resources/impl/SimResourceInterpreterImpl.kt +++ b/opendc-simulator/opendc-simulator-resources/src/main/kotlin/org/opendc/simulator/resources/impl/SimResourceInterpreterImpl.kt @@ -318,7 +318,7 @@ internal class SimResourceInterpreterImpl(private val context: CoroutineContext, */ private data class Invocation( @JvmField val timestamp: Long, - @JvmField private val disposableHandle: DisposableHandle + private val disposableHandle: DisposableHandle ) { /** * Cancel the interpreter invocation. -- cgit v1.2.3