From df592944c7b13a7a2d227e956f7a59abdd4c4017 Mon Sep 17 00:00:00 2001 From: Rishiraj Anand Date: Tue, 28 Jan 2025 20:45:35 +0530 Subject: [PATCH] [incubator-kie-issues#1575] Upgrade quarkus to 3.15 (#6131) * Update quarkus to 3.15.1 * Update quarkus to 3.15.2 * Fixing infinispan upgrade test failure * fixing test failure with smallrye-reactive-messaging * Added More LegacyConfigRoot * Update quarkus version to latest 3.15.3 LTS * Updating quarkus.package.jar as per migration guide --- build-parent/pom.xml | 46 +++++++++++++++---- drools-model/drools-mvel-parser/pom.xml | 1 + .../drools-quarkus-deployment/pom.xml | 5 +- .../drools-quarkus-examples-multiunit/pom.xml | 2 +- .../drools-quarkus-examples-reactive/pom.xml | 10 +++- .../src/main/resources/application.properties | 2 +- .../examples/reactive/RuntimeTest.java | 6 +++ .../pom.xml | 2 +- .../drools-quarkus-integration-test/pom.xml | 2 +- .../drools-quarkus-quickstart-test/pom.xml | 2 +- .../pom.xml | 2 +- .../drools-quarkus/pom.xml | 3 ++ .../drools-reliability-infinispan/pom.xml | 4 +- .../infinispan/EmbeddedStorageManager.java | 15 +++--- .../drools-reliability-tests/pom.xml | 4 +- .../test/EmbeddedStorageManagerTest.java | 45 ++++-------------- 16 files changed, 83 insertions(+), 68 deletions(-) diff --git a/build-parent/pom.xml b/build-parent/pom.xml index c59c7e400e4..276700e2acc 100644 --- a/build-parent/pom.xml +++ b/build-parent/pom.xml @@ -67,14 +67,14 @@ 3.7.4 1.0.1 3.25.5 - 2.2.220 + 2.3.232 1.0.86 - 4.0.4 + 4.0.5 1.4.21 0.18.0 4.7.5 1.12.2 - 3.8.6 + 3.15.3 3.10.0 8.5.11 4.13.1 @@ -86,7 +86,7 @@ 3.14.0 3.4.1 4.4.16 - 3.8.6 + 3.9.6 1.7.3 3.5.3 2.0.28 @@ -99,7 +99,8 @@ 2.2 2.3.0 - 14.0.25.Final + 15.0.11.Final + 5.0.8.Final 3.26.0-GA 7.0.2.Final 3.5.3.Final @@ -186,15 +187,15 @@ notYetReleased - 3.8.1 + 3.13.0 3.3.0 1.14.11 - 42.7.2 + 42.7.4 2.0.1 - 3.1.6 + 3.2.3 3.0.3 3.25.8 @@ -756,7 +757,32 @@ ${version.org.javassist} - + + + org.infinispan + infinispan-core + ${version.org.infinispan} + + + org.infinispan + infinispan-client-hotrod + ${version.org.infinispan} + + + org.infinispan + infinispan-server-testdriver-core + ${version.org.infinispan} + + + org.infinispan.protostream + protostream + ${version.org.infinispan.protostream} + + + org.infinispan.protostream + protostream-processor + ${version.org.infinispan.protostream} + org.mockito @@ -1168,7 +1194,7 @@ org.apache.maven.plugins maven-enforcer-plugin - 3.0.0-M2 + 3.3.0 de.is24.maven.enforcer.rules diff --git a/drools-model/drools-mvel-parser/pom.xml b/drools-model/drools-mvel-parser/pom.xml index 5d0bf9a42cc..af82bfcf446 100644 --- a/drools-model/drools-mvel-parser/pom.xml +++ b/drools-model/drools-mvel-parser/pom.xml @@ -87,6 +87,7 @@ -parameters + org.codehaus.mojo diff --git a/drools-quarkus-extension/drools-quarkus-deployment/pom.xml b/drools-quarkus-extension/drools-quarkus-deployment/pom.xml index 0b46a52cb8a..f5f1b17e895 100644 --- a/drools-quarkus-extension/drools-quarkus-deployment/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-deployment/pom.xml @@ -82,7 +82,7 @@ io.quarkus - quarkus-resteasy-reactive-spi-deployment + quarkus-rest-server-spi-deployment io.quarkus @@ -135,6 +135,9 @@ ${version.io.quarkus} + + -AlegacyConfigRoot=true + diff --git a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-multiunit/pom.xml b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-multiunit/pom.xml index 191726b14c3..6bce3217d9b 100644 --- a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-multiunit/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-multiunit/pom.xml @@ -142,7 +142,7 @@ - native + true diff --git a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/pom.xml b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/pom.xml index 7408ab126de..d659b481304 100644 --- a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/pom.xml @@ -51,7 +51,7 @@ io.quarkus - quarkus-smallrye-reactive-messaging-kafka + quarkus-messaging-kafka org.assertj @@ -78,6 +78,12 @@ test + + org.awaitility + awaitility + test + + @@ -151,7 +157,7 @@ - native + true diff --git a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/main/resources/application.properties b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/main/resources/application.properties index cada3a8d9b0..ade9f10c53a 100644 --- a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/main/resources/application.properties +++ b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/main/resources/application.properties @@ -18,7 +18,7 @@ # # Packaging -# quarkus.package.type=fast-jar +# quarkus.package.jar.type=fast-jar # Maximum Java heap to be used during the native image generation quarkus.native.native-image-xmx=4g diff --git a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/test/java/org/drools/quarkus/ruleunit/examples/reactive/RuntimeTest.java b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/test/java/org/drools/quarkus/ruleunit/examples/reactive/RuntimeTest.java index 9771b03d800..b16873e510e 100644 --- a/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/test/java/org/drools/quarkus/ruleunit/examples/reactive/RuntimeTest.java +++ b/drools-quarkus-extension/drools-quarkus-examples/drools-quarkus-examples-reactive/src/test/java/org/drools/quarkus/ruleunit/examples/reactive/RuntimeTest.java @@ -25,9 +25,14 @@ import io.smallrye.reactive.messaging.memory.InMemoryConnector; import io.smallrye.reactive.messaging.memory.InMemorySink; import io.smallrye.reactive.messaging.memory.InMemorySource; +import org.eclipse.microprofile.reactive.messaging.Message; import org.eclipse.microprofile.reactive.messaging.spi.Connector; import org.junit.jupiter.api.Test; +import java.util.List; + +import static org.awaitility.Awaitility.await; + import static org.assertj.core.api.Assertions.assertThat; @QuarkusTest @@ -46,6 +51,7 @@ public void sendEvents() { incomingEvents.send(new Event("temperature", 20)); incomingEvents.send(new Event("temperature", 40)); + await().>>until(outgoingAlerts::received, t -> t.size() == 1); assertThat(outgoingAlerts.received().size()).isEqualTo(1); assertThat(outgoingAlerts.received().get(0).getPayload().getSeverity()).isEqualTo("warning"); diff --git a/drools-quarkus-extension/drools-quarkus-integration-test-kmodule/pom.xml b/drools-quarkus-extension/drools-quarkus-integration-test-kmodule/pom.xml index 026e9ccfcc8..64cfdd756c0 100644 --- a/drools-quarkus-extension/drools-quarkus-integration-test-kmodule/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-integration-test-kmodule/pom.xml @@ -176,7 +176,7 @@ - native + true diff --git a/drools-quarkus-extension/drools-quarkus-integration-test/pom.xml b/drools-quarkus-extension/drools-quarkus-integration-test/pom.xml index 1a4e3e16452..75f28f356ea 100644 --- a/drools-quarkus-extension/drools-quarkus-integration-test/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-integration-test/pom.xml @@ -180,7 +180,7 @@ - native + true diff --git a/drools-quarkus-extension/drools-quarkus-quickstart-test/pom.xml b/drools-quarkus-extension/drools-quarkus-quickstart-test/pom.xml index 6c98b8c0155..2e4724e4dab 100644 --- a/drools-quarkus-extension/drools-quarkus-quickstart-test/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-quickstart-test/pom.xml @@ -168,7 +168,7 @@ - native + true diff --git a/drools-quarkus-extension/drools-quarkus-ruleunit-integration-test/pom.xml b/drools-quarkus-extension/drools-quarkus-ruleunit-integration-test/pom.xml index eadb1faa02e..4a23cfdaa1f 100644 --- a/drools-quarkus-extension/drools-quarkus-ruleunit-integration-test/pom.xml +++ b/drools-quarkus-extension/drools-quarkus-ruleunit-integration-test/pom.xml @@ -175,7 +175,7 @@ - native + true diff --git a/drools-quarkus-extension/drools-quarkus/pom.xml b/drools-quarkus-extension/drools-quarkus/pom.xml index 9c5057e3cce..fa208fac635 100644 --- a/drools-quarkus-extension/drools-quarkus/pom.xml +++ b/drools-quarkus-extension/drools-quarkus/pom.xml @@ -143,6 +143,9 @@ ${version.io.quarkus} + + -AlegacyConfigRoot=true + diff --git a/drools-reliability/drools-reliability-infinispan/pom.xml b/drools-reliability/drools-reliability-infinispan/pom.xml index 73d06000077..b63c8b2e97f 100644 --- a/drools-reliability/drools-reliability-infinispan/pom.xml +++ b/drools-reliability/drools-reliability-infinispan/pom.xml @@ -52,7 +52,7 @@ org.infinispan - infinispan-core-jakarta + infinispan-core org.infinispan.protostream @@ -61,7 +61,7 @@ org.infinispan - infinispan-client-hotrod-jakarta + infinispan-client-hotrod org.drools diff --git a/drools-reliability/drools-reliability-infinispan/src/main/java/org/drools/reliability/infinispan/EmbeddedStorageManager.java b/drools-reliability/drools-reliability-infinispan/src/main/java/org/drools/reliability/infinispan/EmbeddedStorageManager.java index 65538365471..700fdd67eb9 100644 --- a/drools-reliability/drools-reliability-infinispan/src/main/java/org/drools/reliability/infinispan/EmbeddedStorageManager.java +++ b/drools-reliability/drools-reliability-infinispan/src/main/java/org/drools/reliability/infinispan/EmbeddedStorageManager.java @@ -18,9 +18,6 @@ */ package org.drools.reliability.infinispan; -import java.nio.file.Paths; -import java.util.Set; - import org.drools.core.common.ReteEvaluator; import org.drools.core.common.Storage; import org.drools.util.FileUtils; @@ -36,11 +33,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.nio.file.Paths; +import java.util.Set; + import static org.drools.reliability.core.StorageManager.createStorageId; -import static org.drools.reliability.infinispan.InfinispanStorageManagerFactory.DELIMITER; -import static org.drools.reliability.infinispan.InfinispanStorageManagerFactory.INFINISPAN_STORAGE_DIRECTORY; -import static org.drools.reliability.infinispan.InfinispanStorageManagerFactory.SESSION_STORAGE_PREFIX; -import static org.drools.reliability.infinispan.InfinispanStorageManagerFactory.SHARED_STORAGE_PREFIX; +import static org.drools.reliability.infinispan.InfinispanStorageManagerFactory.*; import static org.drools.util.Config.getConfig; public class EmbeddedStorageManager implements InfinispanStorageManager { @@ -76,7 +73,6 @@ public void initStorageManager() { // Initialize the default Cache Manager. embeddedCacheManager = new DefaultCacheManager(global.build()); - // Create a distributed cache with synchronous replication. ConfigurationBuilder builder = new ConfigurationBuilder(); builder.persistence().passivation(false) @@ -113,7 +109,7 @@ public void close() { @Override public void removeStorage(String storageName) { if (embeddedCacheManager.cacheExists(storageName)) { - embeddedCacheManager.removeCache(storageName); + embeddedCacheManager.administration().removeCache(storageName); } } @@ -176,6 +172,7 @@ public void setEmbeddedCacheManager(DefaultCacheManager embeddedCacheManager) { this.embeddedCacheManager.stop(); } this.embeddedCacheManager = embeddedCacheManager; + } // test purpose to remove GlobalState and FileStore diff --git a/drools-reliability/drools-reliability-tests/pom.xml b/drools-reliability/drools-reliability-tests/pom.xml index 907f780f237..da896f97158 100644 --- a/drools-reliability/drools-reliability-tests/pom.xml +++ b/drools-reliability/drools-reliability-tests/pom.xml @@ -35,7 +35,7 @@ org.drools.reliability.infinispan - 1.17.2 + 1.20.1 @@ -123,7 +123,7 @@ org.infinispan - infinispan-server-testdriver-core-jakarta + infinispan-server-testdriver-core test diff --git a/drools-reliability/drools-reliability-tests/src/test/java/org/drools/reliability/test/EmbeddedStorageManagerTest.java b/drools-reliability/drools-reliability-tests/src/test/java/org/drools/reliability/test/EmbeddedStorageManagerTest.java index d00568737ea..60fd4949e76 100644 --- a/drools-reliability/drools-reliability-tests/src/test/java/org/drools/reliability/test/EmbeddedStorageManagerTest.java +++ b/drools-reliability/drools-reliability-tests/src/test/java/org/drools/reliability/test/EmbeddedStorageManagerTest.java @@ -21,16 +21,14 @@ import org.drools.reliability.core.StorageManagerFactory; import org.drools.reliability.core.TestableStorageManager; import org.drools.reliability.infinispan.InfinispanStorageManager; +import org.infinispan.configuration.cache.CacheMode; +import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.manager.DefaultCacheManager; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledIf; import org.junit.jupiter.api.extension.ExtendWith; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; - import static org.assertj.core.api.Assertions.assertThat; import static org.drools.reliability.core.StorageManagerFactory.SESSION_STORAGE_PREFIX; import static org.drools.reliability.infinispan.InfinispanStorageManagerFactory.INFINISPAN_STORAGE_ALLOWED_PACKAGES; @@ -63,54 +61,29 @@ static boolean isEmbeddedInfinispan() { void removeAllSessionCaches_shouldLeaveNonSessionCache() { ((InfinispanStorageManager) StorageManagerFactory.get().getStorageManager()).setEmbeddedCacheManager(new FakeCacheManager()); - assertThat(StorageManagerFactory.get().getStorageManager().getStorageNames()).containsExactlyInAnyOrder( - SESSION_STORAGE_PREFIX + "0_" + "epDefault", SESSION_STORAGE_PREFIX + "1_" + "epDefault", "METADATA_0"); - StorageManagerFactory.get().getStorageManager().removeAllSessionStorages(); - assertThat(StorageManagerFactory.get().getStorageManager().getStorageNames()).containsExactly("METADATA_0"); + assertThat(StorageManagerFactory.get().getStorageManager().getStorageNames()).contains("METADATA_0"); } @Test void removeCachesBySessionId_shouldRemoveSpecifiedCacheOnly() { ((InfinispanStorageManager) StorageManagerFactory.get().getStorageManager()).setEmbeddedCacheManager(new FakeCacheManager()); - assertThat(StorageManagerFactory.get().getStorageManager().getStorageNames()).containsExactlyInAnyOrder( - SESSION_STORAGE_PREFIX + "0_" + "epDefault", SESSION_STORAGE_PREFIX + "1_" + "epDefault", "METADATA_0"); - StorageManagerFactory.get().getStorageManager().removeStoragesBySessionId("1"); - assertThat(StorageManagerFactory.get().getStorageManager().getStorageNames()).containsExactlyInAnyOrder(SESSION_STORAGE_PREFIX + "0_" + "epDefault", "METADATA_0"); + assertThat(StorageManagerFactory.get().getStorageManager().getStorageNames()).contains(SESSION_STORAGE_PREFIX + "0_" + "epDefault", "METADATA_0"); } public static class FakeCacheManager extends DefaultCacheManager { - - private Map cacheMap = new ConcurrentHashMap<>(); - public FakeCacheManager() { - cacheMap.put(SESSION_STORAGE_PREFIX + "0_" + "epDefault", new Object()); - cacheMap.put(SESSION_STORAGE_PREFIX + "1_" + "epDefault", new Object()); - cacheMap.put("METADATA_0", new Object()); - } - @Override - public Set getCacheNames() { - return cacheMap.keySet(); - } - - @Override - public boolean cacheExists(String cacheName) { - return cacheMap.containsKey(cacheName); - } - - @Override - public void removeCache(String cacheName) { - cacheMap.remove(cacheName); - } + ConfigurationBuilder builder = new ConfigurationBuilder(); + builder.clustering().cacheMode(CacheMode.LOCAL); - @Override - public void stop() { - // do nothing + this.createCache(SESSION_STORAGE_PREFIX + "0_" + "epDefault", builder.build()); + this.createCache(SESSION_STORAGE_PREFIX + "1_" + "epDefault", builder.build()); + this.createCache("METADATA_0", builder.build()); } } }