Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dev service docker image versions #42078

Merged
merged 1 commit into from
Jul 26, 2024
Merged

Conversation

melloware
Copy link
Contributor

Fix #42045

@quarkus-bot quarkus-bot bot added area/dependencies Pull requests that update a dependency file area/devservices labels Jul 23, 2024
@geoand
Copy link
Contributor

geoand commented Jul 23, 2024

LGTM, @loicmathieu @yrodiere do you want to take a look as well?

Thanks

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.

LGTM, but we'll need an entry in the migration guide, similar to what I suggested in #41507 (comment)

<oracle.image>docker.io/gvenzl/oracle-free:23-slim-faststart</oracle.image>
<mongo.image>docker.io/mongo:4.4</mongo.image>
<mongo.image>docker.io/mongo:7.0.12</mongo.image>
Copy link
Contributor

Choose a reason for hiding this comment

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

I think that 7.0 should be used as it seems to point to latest 7.0.x.

Tested it with docker run --name some-mongo -d mongo:7.0 and see that 7.0.12 version is used.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Push changed to 7.0

Copy link
Member

@gsmet gsmet left a comment

Choose a reason for hiding this comment

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

Copy link
Contributor

@loicmathieu loicmathieu left a comment

Choose a reason for hiding this comment

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

LGTM, no sure why we use a so old image for Mongo but I remember some issue with some images not available on arm64.

@geoand geoand added the triage/waiting-for-ci Ready to merge when CI successfully finishes label Jul 23, 2024

This comment has been minimized.

@gsmet
Copy link
Member

gsmet commented Jul 23, 2024

Something changed in PostgreSQL, I would bet:

Caused by: org.flywaydb.core.internal.sqlscript.FlywaySqlScriptException: Script  failed
--------------
SQL State  : 42501
Error Code : 0
Message    : ERROR: permission denied for schema public
Location   :  ()
Line       : 1
Statement  : CREATE OR REPLACE FUNCTION f_my_constant() RETURNS integer LANGUAGE plpgsql as $func$ BEGIN return 100; END $func$

	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.handleException(DefaultSqlScriptExecutor.java:256)
	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.executeStatement(DefaultSqlScriptExecutor.java:217)
	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.execute(DefaultSqlScriptExecutor.java:137)
	at org.flywaydb.core.FlywayExecutor.lambda$execute$1(FlywayExecutor.java:157)
	at org.flywaydb.core.internal.jdbc.JdbcConnectionFactory.openConnection(JdbcConnectionFactory.java:106)
	at org.flywaydb.core.internal.database.base.Database.<init>(Database.java:89)
	at org.flywaydb.database.postgresql.PostgreSQLDatabase.<init>(PostgreSQLDatabase.java:37)
	at org.flywaydb.database.postgresql.PostgreSQLDatabaseType.createDatabase(PostgreSQLDatabaseType.java:96)
	at org.flywaydb.core.FlywayExecutor.execute(FlywayExecutor.java:162)
	at org.flywaydb.core.Flyway.migrate(Flyway.java:164)
	at io.quarkus.flyway.runtime.FlywayRecorder.doStartActions(FlywayRecorder.java:136)
	at io.quarkus.deployment.steps.FlywayProcessor$startActions2099152139.deploy_0(Unknown Source)
	at io.quarkus.deployment.steps.FlywayProcessor$startActions2099152139.deploy(Unknown Source)
	... 8 more
Caused by: org.postgresql.util.PSQLException: ERROR: permission denied for schema public
	at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2725)
	at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2412)
	at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:371)
	at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:502)
	at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:419)
	at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:341)
	at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:326)
	at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:302)
	at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:297)
	at org.flywaydb.core.internal.jdbc.JdbcTemplate.executeStatement(JdbcTemplate.java:210)
	at org.flywaydb.core.internal.sqlscript.ParsedSqlStatement.execute(ParsedSqlStatement.java:88)
	at org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor.executeStatement(DefaultSqlScriptExecutor.java:212)

@melloware
Copy link
Contributor Author

@gsmet i downgraded to PG 15 as it looks like Flyway only supports 15 for now: flyway/flyway#3743

This comment has been minimized.

@melloware
Copy link
Contributor Author

I wonder if we have to update Flyway version too or i should just leave Postgres at 14?

@jedla97
Copy link
Contributor

jedla97 commented Jul 24, 2024

@melloware looking at postgres release notes. They done

  • Remove PUBLIC creation permission on the public schema
  • Change the owner of the public schema to be the new pg_database_owner role

I think one of this is responsible for that error. Maybe it's the bug in Flyway.

@geoand
Copy link
Contributor

geoand commented Jul 25, 2024

I wonder if we have to update Flyway version too or i should just leave Postgres at 14?

I think we can do the latter as a first step

@gsmet
Copy link
Member

gsmet commented Jul 25, 2024

Yeah I suspect we just have to update our tests to not use the public schema and to create a schema ourselves. It's good practice anyway.

So if you have time, please do it and upgrade to latest, I would expect it to work. If you don't, you can drop the PostgreSQL update.

@melloware
Copy link
Contributor Author

For now @gsmet i backed up to 14. Should I open another ticket so we can track updating to PG 16?

@gsmet
Copy link
Member

gsmet commented Jul 25, 2024

Sure: please add all the details about the problem we have with Flyway.

@melloware melloware mentioned this pull request Jul 25, 2024
3 tasks

This comment has been minimized.

@yrodiere
Copy link
Member

I suspect the failure to download Redis is unrelated. I rebased on main to trigger another run on a more up-to-date codebase... Let's see how it goes.

Copy link

quarkus-bot bot commented Jul 26, 2024

Status for workflow Quarkus CI

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

✅ 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

⚙️ JVM Tests - JDK 17

📦 integration-tests/opentelemetry

io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest.testOTelInjections - History

  • Condition with Lambda expression in io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest was not fulfilled within 5 seconds. - org.awaitility.core.ConditionTimeoutException
org.awaitility.core.ConditionTimeoutException: Condition with Lambda expression in io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest was not fulfilled within 5 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:1006)
	at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:975)
	at io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest.reset(OpenTelemetryInjectionsTest.java:26)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)

⚙️ JVM Tests - JDK 21

📦 integration-tests/opentelemetry

io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest.testOTelInjections - History

  • Condition with Lambda expression in io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest was not fulfilled within 5 seconds. - org.awaitility.core.ConditionTimeoutException
org.awaitility.core.ConditionTimeoutException: Condition with Lambda expression in io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest was not fulfilled within 5 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:1006)
	at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:975)
	at io.quarkus.it.opentelemetry.OpenTelemetryInjectionsTest.reset(OpenTelemetryInjectionsTest.java:26)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)

📦 integration-tests/virtual-threads/grpc-virtual-threads

io.quarkus.grpc.example.streaming.VertxVirtualThreadTest.testStreamingOutputCall - History

  • INTERNAL: Half-closed without a request - io.grpc.StatusRuntimeException
io.grpc.StatusRuntimeException: INTERNAL: Half-closed without a request
	at io.grpc.Status.asRuntimeException(Status.java:533)
	at io.grpc.stub.ClientCalls$BlockingResponseStream.hasNext(ClientCalls.java:631)
	at java.base/java.util.Iterator.forEachRemaining(Iterator.java:132)
	at io.quarkus.grpc.example.streaming.VirtualThreadTestBase.testStreamingOutputCall(VirtualThreadTestBase.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod(QuarkusTestExtension.java:973)
	at io.quarkus.test.junit.QuarkusTestExtension.interceptTestMethod(QuarkusTestExtension.java:823)

⚙️ Maven Tests - JDK 17 Windows

📦 integration-tests/maven

io.quarkus.maven.it.TestMojoIT.testThatTheTestsAreReRunMultiModule - History

  • Condition with Lambda expression in io.quarkus.maven.it.continuoustesting.TestModeContinuousTestingMavenTestUtils was not fulfilled within 3 minutes. - org.awaitility.core.ConditionTimeoutException
org.awaitility.core.ConditionTimeoutException: Condition with Lambda expression in io.quarkus.maven.it.continuoustesting.TestModeContinuousTestingMavenTestUtils was not fulfilled within 3 minutes.
	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:1006)
	at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:975)
	at io.quarkus.maven.it.continuoustesting.TestModeContinuousTestingMavenTestUtils.waitForNextCompletion(TestModeContinuousTestingMavenTestUtils.java:50)
	at io.quarkus.maven.it.LaunchMojoTestBase.testThatTheTestsAreReRunMultiModule(LaunchMojoTestBase.java:56)

@yrodiere yrodiere merged commit 7e8c405 into quarkusio:main Jul 26, 2024
52 checks passed
@quarkus-bot quarkus-bot bot added kind/bugfix and removed triage/waiting-for-ci Ready to merge when CI successfully finishes labels Jul 26, 2024
@quarkus-bot quarkus-bot bot added this to the 3.14 - main milestone Jul 26, 2024
@yrodiere
Copy link
Member

Merged, thanks!

FTR, the issue about Postgres 16: #42149

@melloware melloware deleted the patch-1 branch July 26, 2024 14:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Dev services use Mongodb 4.4 which is EOL
6 participants