1.8. 既知の問題


Red Hat build of Quarkus 3.20 の制限事項と回避策は、次の既知の問題を確認してください。

1.8.1. FIPS: FIPS 対応環境でのテストにおける既知の制限

Red Hat build of Quarkus 3.20 では、FIPS (Federal Information Processing Standards) モードが有効になっている環境で、Quarkus アプリケーションがどのように動作するかを評価するためのテストが実施されました。

テストは一般的には正常に完了しますが、一部のテクノロジー統合とネイティブイメージ設定には現在、検証やコンパイルを妨げる制限があります。

FIPS 対応環境でのテストでは、OpenID Connect (OIDC)、サポート対象データベース、キャッシング、非ネイティブモードでの Kafka を使用したメッセージング、OpenTelemetry を含む、いくつかの主要コンポーネントで良好な結果が示されました。ただし、一部のテクノロジー統合とネイティブ設定は現在これらの環境では検証できません。

これらの結果は、Red Hat build of Quarkus またはそのコンポーネントが FIPS を公式にサポートしていることを示すものではありません。

検証できないシナリオ

現在、FIPS 対応環境では、次のテクノロジーの統合または設定は検証できません。

  • MariaDB 11.x
  • Mandrel 23.0 および 23.1 を使用した JVM モードとネイティブモードの両方での Infinispan クライアントエクステンション
  • ネイティブモードで SCRAM と OAUTHBEARER SASL メカニズムを使用する Apache Kafka
  • ネイティブモードの JDBC MSSQL ドライバー
  • DB2
  • ネイティブモードのリアクティブ MSSQL クライアント
  • Red Hat Mandrel 23.1 ビルダーイメージを使用したネイティブイメージのコンパイル

注目すべき関連問題

次の公開 Jira チケットには、発生した制限に関する追加の詳細が記載されています。

  • QUARKUS-5984: 互換性の問題により、MariaDB 11.x は FIPS 対応環境で接続できません。
  • QUARKUS-2036: Infinispan クライアントエクステンションには FIPS 対応環境のサポートがありません。
  • QUARKUS-2984: FIPS 対応の RHEL 8 では、JDBC MSSQL および Reactive MSSQL クライアントを使用したネイティブビルドが失敗します。
  • QUARKUS-5232: SASL SCRAM メカニズムは、FIPS 対応環境内のネイティブモードでは使用できません。
  • QUARKUS-5233: SASL OAUTHBEARER メカニズムは、FIPS 対応環境内のネイティブモードでは使用できません。
  • MANDREL-254: Mandrel 23.1 ビルダーイメージは、FIPS 対応環境をサポートするために修正が必要です。
  • QUARKUS-4387: Quarkus Reactive MySQL クライアントは FIPS 対応環境ではサポートされません。
  • QUARKUS-4612: ネイティブ Mandrel 23.0 および 23.1 では、Infinispan クライアントエクステンションが FIPS で失敗します。

回避策

現在、回避策はありません。

このリリースノートは、より広範な互換性テストが継続される間に、既知の課題を事前に公開することを目的としています。

1.8.2. Kafka Streams エクステンションに Microsoft Windows のネイティブライブラリーがない

Microsoft で quarkus-kafka-streams エクステンションを使用するアプリケーションは、ネイティブライブラリー librocksdbjni-win64.dll が見つからないため、ランタイムに失敗します。

起動中に、この問題により次のエラーが発生します。

java.lang.RuntimeException: librocksdbjni-win64.dll was not found inside JAR
Copy to Clipboard Toggle word wrap

このエラーにより、Kafka Streams アプリケーションに必要な RocksDB コンポーネントの初期化が妨げられます。

現時点で使用できる回避策はありません。

エラーの例

13:07:08,118 INFO  [app] ERROR: Failed to start application (with profile [prod])
13:07:08,118 INFO  [app] java.lang.RuntimeException: Failed to start quarkus
13:07:08,118 INFO  [app] 	at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
13:07:08,118 INFO  [app] 	at io.quarkus.runtime.Application.start(Application.java:101)
13:07:08,118 INFO  [app] 	at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:111)
13:07:08,118 INFO  [app] 	at io.quarkus.runtime.Quarkus.run(Quarkus.java:71)
13:07:08,118 INFO  [app] 	at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
13:07:08,118 INFO  [app] 	at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
13:07:08,118 INFO  [app] 	at io.quarkus.runner.GeneratedMain.main(Unknown Source)
13:07:08,118 INFO  [app] Caused by: java.lang.ExceptionInInitializerError
13:07:08,118 INFO  [app] 	at io.quarkus.kafka.streams.runtime.KafkaStreamsRecorder.loadRocksDb(KafkaStreamsRecorder.java:14)
13:07:08,118 INFO  [app] 	at io.quarkus.deployment.steps.KafkaStreamsProcessor$loadRocksDb1611413226.deploy_0(Unknown Source)
13:07:08,118 INFO  [app] 	at io.quarkus.deployment.steps.KafkaStreamsProcessor$loadRocksDb1611413226.deploy(Unknown Source)
13:07:08,118 INFO  [app] 	... 11 more
13:07:08,118 INFO  [app] Caused by: java.lang.RuntimeException: librocksdbjni-win64.dll was not found inside JAR.
13:07:08,118 INFO  [app] 	at org.rocksdb.NativeLibraryLoader.loadLibraryFromJarToTemp(NativeLibraryLoader.java:118)
13:07:08,118 INFO  [app] 	at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:102)
13:07:08,118 INFO  [app] 	at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:82)
13:07:08,118 INFO  [app] 	at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:70)
13:07:08,118 INFO  [app] 	at org.rocksdb.RocksDB.<clinit>(RocksDB.java:39)
13:07:08,118 INFO  [app] 	... 14 more
Copy to Clipboard Toggle word wrap

詳細は、QUARKUS-3434 を参照してください。

1.8.3. Windows 上の Snappy のネイティブライブラリーが見つからない

Red Hat build of Quarkus 3.20 では、Windows 上で Snappy 圧縮ライブラリーを使用するアプリケーションを実行すると、ネイティブライブラリーが見つからないためエラーが発生します。

Windows 環境で Snappy を使用してデータを圧縮しようとすると、次の例のようなエラーメッセージが表示される場合があります。

エラーメッセージの例

...
org.eclipse.microprofile.reactive.messaging.Message$5@1e8dc267 from channel 'test' was not sent to Kafka topic 'test' - nacking message: org.apache.kafka.common.KafkaException: org.xerial.snappy.SnappyError: [FAILED_TO_LOAD_NATIVE_LIBRARY] no native library is found for os.name=Windows and os.arch=x86_64
...
Copy to Clipboard Toggle word wrap

回避策: 現時点では回避策はありません。この問題は今後のリリースで解決される予定です。

詳細は、QUARKUS-5983 を参照してください。

Red Hat build of Quarkus 3.20 では、ヒープスナップショット検証エラーが原因で、Mandrel 23.1 ランタイムを使用したネイティブイメージのビルドが断続的に失敗する可能性があります。

ビルドプロセスは、型が到達可能としてマークされていないことを示すエラーで失敗します。

AnalysisType<... reachable: false>
Copy to Clipboard Toggle word wrap

これらのエラーは一貫しておらず、異なるアプリケーション間で発生する可能性があります。それらは管理された環境において確実に再現されていません。

エラーの例 1

com.oracle.graal.pointsto.util.AnalysisError: The heap snapshot verifier discovered a type not marked as reachable:
AnalysisType<VMOption$Origin[] -> HotSpotType<[Lcom/sun/management/VMOption$Origin;, resolved>, allocated: false, inHeap: false, reachable: false>
	at com.oracle.graal.pointsto.heap.HeapSnapshotVerifier$ScanningObserver.ensureTypeScanned(HeapSnapshotVerifier.java:332)
	...
Copy to Clipboard Toggle word wrap

エラーの例 2

AnalysisType<MemoryType[] -> HotSpotType<[Ljava/lang/management/MemoryType;, resolved>, allocated: false, inHeap: false, reachable: false>
AnalysisType<HotSpotDiagnosticMXBean$ThreadDumpFormat[] -> HotSpotType<[Lcom/sun/management/HotSpotDiagnosticMXBean$ThreadDumpFormat;, resolved>, allocated: false, inHeap: false, reachable: false>
Copy to Clipboard Toggle word wrap

エラーの例 3

AnalysisType<MemoryType[] -> HotSpotType<[Ljava/lang/management/MemoryType;, resolved>, allocated: false, inHeap: false, reachable: false>
Copy to Clipboard Toggle word wrap

回避策: ネイティブイメージのビルドを再試行します。問題は断続的に発生するため、次回の試行ではビルドが成功する可能性があります。

この問題は今後のリリースで解決される予定です。

詳細は、MANDREL-332 を参照してください。

Red Hat build of Quarkus 3.20 では、application.properties ファイルに次のプロパティーが設定されている場合、quarkus-opentelemetry エクステンションを使用するアプリケーションは開発モードで再起動しません。

  • quarkus.otel.traces.enabled=false
  • quarkus.otel.metrics.enabled=true

再読み込みの試行中に、Quarkus は UnsatisfiedResolutionException を出力します。

エラーメッセージの例

jakarta.enterprise.inject.UnsatisfiedResolutionException: No bean found for required type [class io.quarkus.opentelemetry.runtime.tracing.DelayedAttributes] and qualifiers [[@jakarta.enterprise.inject.Any()]]
Copy to Clipboard Toggle word wrap

回避策

現時点で使用できる回避策はありません。この問題は今後のリリースで解決される予定です。

1.8.6. Quarkus CLI が TLS レジストリー CLI プラグインを検出できない

Red Hat build of Quarkus 3.15 では、Quarkus CLI の TLS レジストリーサポートを有効にする quarkus-tls-registry-cli プラグインが導入されました。

ただし、開発ツールは現在、maven.repository.redhat.com でホストされている Quarkus CLI プラグインを検出しません。その結果、Quarkus CLI はデフォルトでは TLS レジストリー CLI プラグインを解決できません。

この問題が発生すると、CLI は次の出力のようなエラーを返します。

[jbang] [ERROR] Could not resolve dependencies: The following artifacts could not be resolved: io.quarkus:quarkus-tls-registry-cli:jar:3.20.2.SP1-redhat-00003 (absent): Could not find artifact io.quarkus:quarkus-tls-registry-cli:jar:3.20.2.SP1-redhat-00003 in central (https://repo1.maven.org/maven2/)
Copy to Clipboard Toggle word wrap

回避策: Quarkus CLI がプラグインを解決できるようにするには、https://maven.repository.redhat.com/ga/ にある Red Hat Maven リポジトリーを使用するように JBang を設定します。

次のいずれかの方法を使用できます。

  • 次の内容を含む jbang.properties ファイルを作成します。

    run.repos=central,https://maven.repository.redhat.com/ga/
    Copy to Clipboard Toggle word wrap

    この設定をローカルに適用するには、ファイルをプロジェクトのルートディレクトリーに配置します。設定をグローバルに適用するには、ファイルを ~/.jbang ディレクトリーに配置します。

  • JBang がすでにインストールされている場合は、次のコマンドを実行してリポジトリーをグローバルに設定します。

    jbang config set run.repos central,https://maven.repository.redhat.com/ga/
    Copy to Clipboard Toggle word wrap

詳細は、QUARKUS-5183 を参照してください。

1.8.7. Quarkus CLI が Red Hat build of Quarkus プラットフォームバージョンのみを更新する

Red Hat build of Quarkus 3.20 では、更新コマンドを実行すると、Red Hat build of Quarkus プラットフォーム (com.redhat.quarkus.platform) に含まれる BOM のみが更新されます。これらには、quarkus-camel-bomquarkus-cxf-bom (リリースの一部である場合)、quarkus-qpid-jms-bomquarkus-operator-sdk-bom などの BOM が含まれます。

ただし、このコマンドは、アップストリームコミュニティーリリースに関連付けられた BOM バージョンを更新しません。プロジェクトに Red Hat build of Quarkus とアップストリーム BOM の両方が含まれている場合、この問題により、Quarkus とアップストリーム BOM の組み合わせに互換性がなくなる可能性があります。

更新コマンドの例

$ mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.20.2.SP1-redhat-00003:update -Dmaven.repo.local=<path-to-local-repo>
Copy to Clipboard Toggle word wrap

問題のある pom.xml ファイルの例

<properties>
    <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>com.redhat.quarkus.platform</quarkus.platform.group-id>
    <quarkus.platform.version>3.20.2.redhat-00004</quarkus.platform.version>
</properties>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>${quarkus.platform.group-id}</groupId>
            <artifactId>${quarkus.platform.artifact-id}</artifactId>
            <version>${quarkus.platform.version}</version>
        </dependency>
        <dependency>
            <groupId>io.quarkus.platform</groupId>
            <artifactId>quarkus-amazon-services-bom</artifactId>
            <version>3.2.12.Final</version> 
1

        </dependency>
    </dependencies>
</dependencyManagement>
Copy to Clipboard Toggle word wrap

1
バージョンは更新されていません。

回避策: バージョン番号を手動で更新します。

詳細は、QUARKUS-5185 を参照してください。

Red Hat build of Quarkus 3.20 では、Mutiny タイプを返す非同期 REST クライアントで Hibernate Reactive を使用すると、現在の Hibernate Reactive セッションまたはトランザクションが失われる可能性があります。

これは、親の初期コンテキストをコピーしない新しい Vert.x コンテキストで、ユーザーコールバックが呼び出されるために発生します。その結果、コールバックはセッションまたはトランザクションが存在しないために失敗するか、または暗黙的に失敗し、エンティティーの変更をデータベースにフラッシュしない可能性があります。変更は、意図した外部トランザクションではなく、新しいトランザクションにフラッシュされる可能性もあります。

回避策

現時点で使用できる回避策はありません。この問題は今後のリリースで解決される予定です。

Red Hat build of Quarkus 3.20 では、quarkus/mandrel-for-jdk-21-rhel8:23.1 Red Hat build of Quarkus Native Builder イメージを使用して、FIPS 対応環境内でネイティブモードで RSA 暗号を初期化すると、NullPointerException (NPE) エラーが発生します。

この問題は、FIPS が有効になっているネイティブモードでのみ発生し、FIPS が無効になっているネイティブモードには影響しません。また、FIPS が有効になっている Red Hat build of OpenJDK を使用する場合、JVM モードには影響しません。

注記

FIPS 対応環境ではネイティブモードはサポートされません。

エラーメッセージの例

2024-10-17 10:45:01,931 ERROR [io.qua.ver.htt.run.QuarkusErrorHandler] (executor-thread-1) HTTP Request to /repro failed, error id: 9b1f5dbb-058b-4c9b-9377-f3acc0a6cba5-1: java.lang.RuntimeException: java.lang.NullPointerException
    at org.acme.ReproResource.init(ReproResource.java:38)
...
Copy to Clipboard Toggle word wrap

回避策:

  1. 存在する場合は、application.properties ファイルから次のプロパティーを削除します。

    quarkus.security.security-providers=SunPKCS11
    Copy to Clipboard Toggle word wrap
  2. ランタイムに ReproResource クラスを初期化するには、application.properties ファイルに次のプロパティーを追加します。

    quarkus.native.additional-build-args=--initialize-at-run-time=org.acme.ReproResource
    Copy to Clipboard Toggle word wrap

詳細は、MANDREL-245 を参照してください。

1.8.10. WebSockets Next: オープンイベント例外で接続エラーメトリクスが増加しない

Red Hat build of Quarkus 3.20 では、websockets-next エクステンションを使用して、@WebSocket エンドポイントが @OnOpen ライフサイクルメソッドで例外をスローすると、次のメトリクスが増分されません。

  • quarkus_websockets_server_connections_opened_errors_total{uri=${ENDPOINT}}
  • quarkus_websockets_client_connections_opened_errors_total{uri=${ENDPOINT}}

この動作は、サーバー側とクライアント側の両方の WebSocket 接続メトリクスに影響します。

回避策: 現時点では回避策はありません。この問題は今後のリリースで解決される予定です。

詳細は、QUARKUS-5977 を参照してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る