diff --git a/.github/native-tests.json b/.github/native-tests.json index c68511a1e63c6..84c6f6d06d7eb 100644 --- a/.github/native-tests.json +++ b/.github/native-tests.json @@ -45,7 +45,7 @@ { "category": "Data7", "timeout": 85, - "test-modules": "reactive-oracle-client, reactive-mysql-client, reactive-db2-client, hibernate-reactive-db2, hibernate-reactive-mysql, hibernate-reactive-mysql-agroal, hibernate-reactive-panache, hibernate-reactive-panache-kotlin", + "test-modules": "reactive-oracle-client, reactive-mysql-client, reactive-db2-client, hibernate-reactive-db2, hibernate-reactive-mysql, hibernate-reactive-mysql-agroal-flyway, hibernate-reactive-panache, hibernate-reactive-panache-kotlin", "os-name": "ubuntu-latest" }, { diff --git a/docs/src/main/asciidoc/hibernate-reactive.adoc b/docs/src/main/asciidoc/hibernate-reactive.adoc index d6ee6d9e0fd57..9a23bda4676b3 100644 --- a/docs/src/main/asciidoc/hibernate-reactive.adoc +++ b/docs/src/main/asciidoc/hibernate-reactive.adoc @@ -301,12 +301,6 @@ it's not possible to configure multiple persistence units, or even a single named persistence unit. * This extension cannot be used at the same time as Hibernate ORM. See https://github.com/quarkusio/quarkus/issues/13425. -* This extension cannot be used at the same time as JDBC/Agroal. -See https://github.com/quarkusio/quarkus/issues/33380. -+ -This also means this extension cannot be used at the same time as extensions that rely on JDBC, -such as the Flyway extension. -See https://github.com/quarkusio/quarkus/issues/10716. * Integration with the Envers extension is not supported. * Transaction demarcation cannot be done using `jakarta.transaction.Transactional` or `QuarkusTransaction`; if you use xref:hibernate-reactive-panache.adoc[Hibernate Reactive with Panache], diff --git a/integration-tests/hibernate-orm-compatibility-5.6/postgresql/pom.xml b/integration-tests/hibernate-orm-compatibility-5.6/postgresql/pom.xml index 05c6745218e5b..6f2fc5189545b 100644 --- a/integration-tests/hibernate-orm-compatibility-5.6/postgresql/pom.xml +++ b/integration-tests/hibernate-orm-compatibility-5.6/postgresql/pom.xml @@ -31,10 +31,6 @@ io.quarkus quarkus-flyway - - org.flywaydb - flyway-mysql - io.quarkus quarkus-resteasy-reactive diff --git a/integration-tests/hibernate-reactive-mysql-agroal/pom.xml b/integration-tests/hibernate-reactive-mysql-agroal-flyway/pom.xml similarity index 93% rename from integration-tests/hibernate-reactive-mysql-agroal/pom.xml rename to integration-tests/hibernate-reactive-mysql-agroal-flyway/pom.xml index ff5e0c37a30b1..3824b2242a8f0 100644 --- a/integration-tests/hibernate-reactive-mysql-agroal/pom.xml +++ b/integration-tests/hibernate-reactive-mysql-agroal-flyway/pom.xml @@ -9,9 +9,9 @@ 4.0.0 - quarkus-integration-test-hibernate-reactive-mysql-agroal - Quarkus - Integration Tests - Hibernate Reactive - MySQL - Hibernate Reactive related tests running with the MySQL database + quarkus-integration-test-hibernate-reactive-mysql-agroal-flyway + Quarkus - Integration Tests - Hibernate Reactive - MySQL - With Agroal and Flyway + Hibernate Reactive related tests running with the MySQL database and also using Agroal and Flyway vertx-reactive:mysql://localhost:3306/hibernate_orm_test @@ -39,6 +39,14 @@ io.quarkus quarkus-resteasy-reactive-jsonb + + io.quarkus + quarkus-flyway + + + org.flywaydb + flyway-mysql + @@ -118,6 +126,19 @@ + + io.quarkus + quarkus-flyway-deployment + ${project.version} + pom + test + + + * + * + + + diff --git a/integration-tests/hibernate-reactive-mysql-agroal/src/main/java/io/quarkus/it/hibernate/reactive/mysql/GuineaPig.java b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/java/io/quarkus/it/hibernate/reactive/mysql/GuineaPig.java similarity index 100% rename from integration-tests/hibernate-reactive-mysql-agroal/src/main/java/io/quarkus/it/hibernate/reactive/mysql/GuineaPig.java rename to integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/java/io/quarkus/it/hibernate/reactive/mysql/GuineaPig.java diff --git a/integration-tests/hibernate-reactive-mysql-agroal/src/main/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTestEndpoint.java b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTestEndpoint.java similarity index 100% rename from integration-tests/hibernate-reactive-mysql-agroal/src/main/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTestEndpoint.java rename to integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTestEndpoint.java diff --git a/integration-tests/hibernate-reactive-mysql-agroal/src/main/resources/application.properties b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/resources/application.properties similarity index 69% rename from integration-tests/hibernate-reactive-mysql-agroal/src/main/resources/application.properties rename to integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/resources/application.properties index 97751eb944d68..d48dcb14b0856 100644 --- a/integration-tests/hibernate-reactive-mysql-agroal/src/main/resources/application.properties +++ b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/resources/application.properties @@ -1,18 +1,21 @@ +# Reactive datasource config quarkus.datasource.db-kind=mysql quarkus.datasource.username=hibernate_orm_test quarkus.datasource.password=hibernate_orm_test - -# Hibernate config -#quarkus.hibernate-orm.log.sql=true -quarkus.hibernate-orm.database.generation=drop-and-create - -# Reactive config -quarkus.datasource.reactive=true quarkus.datasource.reactive.url=${reactive-mysql.url} +# Blocking datasource config quarkus.datasource.blocking.db-kind=mysql quarkus.datasource.blocking.username=hibernate_orm_test quarkus.datasource.blocking.password=hibernate_orm_test quarkus.datasource.blocking.jdbc.url=${mysql.jdbc.url} quarkus.datasource.blocking.jdbc=true quarkus.datasource.blocking.jdbc.max-size=1 + +# Hibernate config +#quarkus.hibernate-orm.log.sql=true +# We'll use Flyway +quarkus.hibernate-orm.database.generation=none + +# Check that one can use Flyway alongside Hibernate Reactive +quarkus.flyway.blocking.migrate-at-start=true diff --git a/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/resources/db/migration/V1.0.0__init.sql b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/resources/db/migration/V1.0.0__init.sql new file mode 100644 index 0000000000000..5941a38cfb23f --- /dev/null +++ b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/main/resources/db/migration/V1.0.0__init.sql @@ -0,0 +1,5 @@ +create table Pig ( + id integer not null, + name varchar(255), + primary key (id) +) engine=InnoDB; diff --git a/integration-tests/hibernate-reactive-mysql-agroal/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLInGraalIT.java b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLInGraalIT.java similarity index 100% rename from integration-tests/hibernate-reactive-mysql-agroal/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLInGraalIT.java rename to integration-tests/hibernate-reactive-mysql-agroal-flyway/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLInGraalIT.java diff --git a/integration-tests/hibernate-reactive-mysql-agroal/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTest.java b/integration-tests/hibernate-reactive-mysql-agroal-flyway/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTest.java similarity index 100% rename from integration-tests/hibernate-reactive-mysql-agroal/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTest.java rename to integration-tests/hibernate-reactive-mysql-agroal-flyway/src/test/java/io/quarkus/it/hibernate/reactive/mysql/HibernateReactiveMySQLTest.java diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml index 69ed92eff3146..c56f7a0c4c229 100644 --- a/integration-tests/pom.xml +++ b/integration-tests/pom.xml @@ -225,7 +225,7 @@ hibernate-orm-panache-kotlin hibernate-reactive-db2 hibernate-reactive-mysql - hibernate-reactive-mysql-agroal + hibernate-reactive-mysql-agroal-flyway hibernate-reactive-postgresql hibernate-reactive-panache hibernate-reactive-panache-kotlin