Skip to content

Conversation

lucamolteni
Copy link
Contributor

@lucamolteni lucamolteni commented Sep 29, 2025

  • Reproduced bug using QuarkusDevMode

  • Disabled post boot validation in offline mode

  • Fixes #50210

…ase in DEV mode on startup quarkusio#50210

* Reproduced bug using QuarkusDevMode, no assertion on logs
* Disabled post boot validation in offline mode
@quarkus-bot quarkus-bot bot added the area/hibernate-orm Hibernate ORM label Sep 29, 2025
Copy link

quarkus-bot bot commented Sep 29, 2025

/cc @gsmet (hibernate-orm)

Copy link

quarkus-bot bot commented Sep 29, 2025

Status for workflow Quarkus CI

This is the status report for running Quarkus CI on commit 97c50b6.

✅ The latest workflow run for the pull request has completed successfully.

It should be safe to merge provided you have a look at the other checks in the summary.

You can consult the Develocity build scans.


Flaky tests - Develocity

⚙️ Maven Tests - JDK 17

📦 integration-tests/devmode

io.quarkus.test.devui.DevUIGrpcSmokeTest.testTestService - History

  • Too many recursions, message not returned for id [1680330696] - java.lang.RuntimeException
java.lang.RuntimeException: Too many recursions, message not returned for id [1680330696]
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:175)
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:178)
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:178)
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:178)
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:178)
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:178)
	at io.quarkus.devui.tests.DevUIJsonRPCTest.objectResultFromJsonRPC(DevUIJsonRPCTest.java:178)

⚙️ Gradle Tests - JDK 17 Windows

📦 integration-tests/gradle

io.quarkus.gradle.devmode.IncludedKotlinBuildDevModeTest.main - History

  • Condition with Lambda expression in io.quarkus.test.devmode.util.DevModeClient was not fulfilled within 1 minutes 30 seconds. - org.awaitility.core.ConditionTimeoutException
org.awaitility.core.ConditionTimeoutException: Condition with Lambda expression in io.quarkus.test.devmode.util.DevModeClient was not fulfilled within 1 minutes  30 seconds.
	at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:167)
	at org.awaitility.core.CallableCondition.await(CallableCondition.java:78)
	at org.awaitility.core.CallableCondition.await(CallableCondition.java:26)
	at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:1160)
	at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:1129)
	at io.quarkus.test.devmode.util.DevModeClient.getHttpResponse(DevModeClient.java:164)
	at io.quarkus.gradle.devmode.QuarkusDevGradleTestBase.getHttpResponse(QuarkusDevGradleTestBase.java:165)

Copy link
Member

@yrodiere yrodiere left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Harsh but fair.

@yrodiere yrodiere merged commit 26a3ca5 into quarkusio:main Sep 29, 2025
47 checks passed
@quarkus-bot quarkus-bot bot added this to the 3.29 - main milestone Sep 29, 2025
@gsmet gsmet modified the milestones: 3.29 - main, 3.28.2 Sep 30, 2025
@Sanne
Copy link
Member

Sanne commented Oct 6, 2025

What happens if it later connects and the schema doesn't match?

@yrodiere
Copy link
Member

yrodiere commented Oct 6, 2025

Then you'll be faced with errors.
You can't have your cake and eat it :)

@Sanne
Copy link
Member

Sanne commented Oct 7, 2025

of course - but I'm wondering how clear they will be. If I have set it to "validate", for example, I might expect thourough validation to happen but deferred to first connection.

If this isn't happening, it sounds like your point is that the user is making an unreasonble request, aka inconsistent configuration. Will the user get a warning about this being inconsistent, and possibly running with a non-validated schema?

@yrodiere
Copy link
Member

yrodiere commented Oct 7, 2025

of course - but I'm wondering how clear they will be. If I have set it to "validate", for example, I might expect thourough validation to happen but deferred to first connection.

You can't set it to validate with start-offline=true. This will lead to an error (at build time or on startup, I forget which).

Also, this PR is not about the explicit setting from users. It's about the extra validation that happens in dev mode even if you set hbm2ddl to none.

@Sanne
Copy link
Member

Sanne commented Oct 7, 2025

great, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Application using Hibernate offline startup tries to connect to database in DEV mode on startup

4 participants