diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 312bc9280..d0c8a1a69 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,14 +1,14 @@ [versions] -micronaut = "4.6.1" +micronaut = "4.6.2" micronaut-platform = "4.1.2" micronaut-docs = "2.0.0" micronaut-gradle-plugin = "4.4.2" # Required to keep catalog compatibility with 3.4.x. Can be removed for 4.0.0 managed-kafka-compat = "3.8.0" -managed-kafka = '3.7.0' +managed-kafka = '3.8.0' -groovy = "4.0.15" +groovy = "4.0.22" awaitility = '4.2.2' opentracing-kafka-client = '0.1.15' @@ -16,7 +16,7 @@ opentracing-mock = '0.33.0' zipkin-brave-kafka-clients = '6.0.3' -micronaut-cache = "4.3.0" +micronaut-cache = "5.0.0" micronaut-logging = "1.4.0" micronaut-micrometer = "5.8.0" micronaut-reactor = "3.5.0" diff --git a/kafka/src/main/java/io/micronaut/configuration/kafka/health/DefaultNetworkClientCreator.java b/kafka/src/main/java/io/micronaut/configuration/kafka/health/DefaultNetworkClientCreator.java index 528b946b7..3f71abb35 100644 --- a/kafka/src/main/java/io/micronaut/configuration/kafka/health/DefaultNetworkClientCreator.java +++ b/kafka/src/main/java/io/micronaut/configuration/kafka/health/DefaultNetworkClientCreator.java @@ -21,6 +21,7 @@ import jdk.jfr.Experimental; import org.apache.kafka.clients.ApiVersions; import org.apache.kafka.clients.Metadata; +import org.apache.kafka.clients.MetadataRecoveryStrategy; import org.apache.kafka.clients.NetworkClient; import org.apache.kafka.clients.admin.AdminClientConfig; import org.apache.kafka.common.ClusterResourceListener; @@ -91,7 +92,7 @@ public NetworkClient create(@NonNull ClusterResourceListener... listeners) { return new NetworkClient(selector, metadata(listeners), clientId, 1, reconnectBackoff, reconnectBackoffMax, socketSendBuffer, socketReceiveBuffer, (int) HOURS.toMillis(1), connectionSetupTimeout, connectionSetupTimeoutMax, - SYSTEM, true, new ApiVersions(), logContext); + SYSTEM, true, new ApiVersions(), logContext, MetadataRecoveryStrategy.NONE); } catch (Throwable e) { closeQuietly(metrics, "Metrics"); closeQuietly(selector, "Selector"); diff --git a/kafka/src/main/java/io/micronaut/configuration/kafka/health/KafkaHealthIndicator.java b/kafka/src/main/java/io/micronaut/configuration/kafka/health/KafkaHealthIndicator.java index 49767f0cf..b1307a62b 100644 --- a/kafka/src/main/java/io/micronaut/configuration/kafka/health/KafkaHealthIndicator.java +++ b/kafka/src/main/java/io/micronaut/configuration/kafka/health/KafkaHealthIndicator.java @@ -29,6 +29,7 @@ import io.micronaut.management.health.indicator.HealthResult; import jakarta.inject.Inject; import jakarta.inject.Singleton; +import org.apache.kafka.clients.LeastLoadedNode; import org.apache.kafka.clients.NetworkClient; import org.apache.kafka.clients.admin.AdminClient; import org.apache.kafka.clients.admin.Config; @@ -225,9 +226,9 @@ private Optional hasReadyNodes(NetworkClient networkClient) { private HealthResult waitForLeastLoadedNode(NetworkClient networkClient) { final long requestTimeoutMs = defaultConfiguration.getHealthTimeout().toMillis(); - final Node node = networkClient.leastLoadedNode(SYSTEM.milliseconds()); + final LeastLoadedNode node = networkClient.leastLoadedNode(SYSTEM.milliseconds()); try { - return result(awaitReady(networkClient, node, SYSTEM, requestTimeoutMs), null).build(); + return result(awaitReady(networkClient, node.node(), SYSTEM, requestTimeoutMs), null).build(); } catch (IOException e) { return failure(e, Collections.emptyMap()); }