Skip to content

Migration Guide 3.30

Bruno Baptista edited this page Nov 5, 2025 · 6 revisions
Note

We highly recommend the use of quarkus update to update to a new version of Quarkus.

Items marked below with ⚙️ ✅ are automatically handled by quarkus update.

JDBC

Apache Derby support removed

On 2025-10-10, the Apache Derby developers voted to retire the project into a read-only state (see this issue for more information). Because the latest released Derby version supporting JDK 17 (10.16.1.1) has a CVS vulnerability and the last released version (10.17.1.0) requires JDK 21 to run, the Quarkus team has decided to remove the components that integrate with Derby starting with this version.

The following artifacts are no longer published:

  • io.quarkus:quarkus-jdbc-derby and io.quarkus:quarkus-jdbc-derby-deployment

  • io.quarkus:quarkus-flyway-derby and io.quarkus:quarkus-flyway-derby-deployment

  • io.quarkus:quarkus-hibernate-orm-derby and io.quarkus:quarkus-hibernate-orm-derby-deployment

  • io.quarkus:quarkus-devservices-derby

Cache

CacheManagerInfoBuildItem moved from SPI to the deployment module

Extensions that produce a CacheManagerInfoBuildItem must change the import from io.quarkus.cache.deployment.spi.CacheManagerInfoBuildItem to io.quarkus.cache.deployment.CacheManagerInfoBuildItem.

OpenTelemetry

OpenTelemetry in Quarkus now uses:

  • opentelemetry-instrumentation.version → 2.15.0-alpha

  • OTel SDk → 1.49.0

  • smallrye-reactive-messaging.version → 4.30.0

Includes full support for Microprofile Telemetry 2.1.

Breaking Changes

Some OTel Semantic conventions have changed:

Old New

code.function

code.function.name

code.namespace

code.function.name

code.lineno

code.line.number

db.redis.database_index

db.namespace

messaging.consumer.id

messaging.client.id

messaging.kafka.consumer.group

messaging.consumer.group.name

messaging.kafka.partition

messaging.destination.partition.id

messaging.kafka.message.offset

messaging.kafka.offset

Deprecated properties

Some conventions have been deprecated and will soon be replaced.

Old - Deprecated New

db.operation

db.operation.name

db.statement

db.query.text

db.user

<no replacement>

db.connection_string

network.peer.address and server.port

db.system

db.system.name

In preparation to the disappearance of the db.connection_string we’ve started to publish the following properties in the Redis instrumentation: network.peer.address network.peer.port server.address server.port

Agroal

Breaking Changes

The previously deprecated configuration quarkus.datasource.jdbc.enable-metrics has been removed and the newer configuration property quarkus.datasource.jdbc.metrics.enabled must be used instead to enable/disable Micrometer metrics.

Migration guides

Current version


LTS versions


Next version in main


Clone this wiki locally