Red Hat Decision Manager 7.11 のリリースノート

Red Hat Decision Manager 7.11

リリースノート

概要

本書は、Red Hat Decision Manager 7.11 のリリースノートです

前書き

本書では、Red Hat Decision Manager 7.11 の新規機能、テクニカルプレビュー機能、既知の問題、および修正された問題を説明します。

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

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みにより、これらの変更は今後の複数のリリースに対して段階的に実施されます。詳細は、弊社の CTO である Chris Wright のメッセージ を参照してください。

第1章 製品の概要

Red Hat Decision Manager は、ビジネスルール管理、複合イベント処理、Decision Model & Notation (DMN) 実行、およびプランニングの問題を解決するための Red Hat Business Optimizer を組み合わせた、オープンソースの意思決定管理プラットフォームです。これにより、ビジネス上の意思決定を自動化し、そのロジックをビジネス全体で利用できるようにします。

ルール、デシジョンテーブル、および DMN モデルなどのビジネスアセットは、集中リポジトリーに保存されます。これにより、ビジネス全体で一貫性や透明性を維持し、監査を行えます。ビジネスユーザーは、IT 担当者からのサポートなしでビジネスロジックを編集できます。

Red Hat Decision Manager 7.11 では安定性が増し、問題がいくつか修正され、新機能が追加されています。

Red Hat Decision Manager は Red Hat OpenShift Container Platform で完全にサポートされており、各種プラットフォームにインストールできます。

注記

Red Hat Decision Manager は、Java 11 以降が必要になります。

Red Hat Decision Manager のサポートポリシーの詳細は、Release maintenance plan for Red Hat Decision Manager 7.x and Red Hat Process Automation Manager 7.x を参照してください。

第2章 Red Hat Decision Manager の Kogito 製品化機能

2.1. Red Hat Decision Manager での Kogito マイクロサービスのサポート

Red Hat Decision Manager では、ビジネスドメインおよびツールに適合するクラウドネイティブアプリケーションを構築できるように、以下の Red Hat ビルドの Kogito マイクロサービスに対するサポートが追加されました。

  • Red Hat ビルドの Quarkus または Spring Boot での階層化。開発者が希望するクラウドネイティブのアプリケーション開発スタックで Red Hat ビルドの Kogito マイクロサービスを実行できるようにします。
  • 定義済みのビジネス制約内で実行するルールユニットに基づく自動化された意思決定機能
  • これらのサンプルアプリケーションには、独自のアプリケーションの開発に役立つ Red Hat ビルドの Quarkus または Spring Boot の各種 Red Hat ビルドの Kogito デシジョンマイクロサービスが含まれます。

Red Hat Decision Manager で Red Hat ビルドの Kogito を初めて使用する場合の詳細は、Getting started with Red Hat build of Kogito in Red Hat Decision Manager を参照してください。

2.2. Red Hat ビルドの Kogito JVM Quarkus ランタイムのサポート

Red Hat Decision Manager は Red Hat ビルドの Kogito JVM Quarkus ランタイムイメージをサポートするようになりました。

詳細は、Getting started with Red Hat build of Kogito in Red Hat Decision Manager を参照してください。

2.3. Red Hat ビルドの Quarkus および Spring Boot の Red Hat ビルドの Kogito ビルダーイメージのサポート

Red Hat Decision Manager には、Red Hat ビルドの Quarkus および Spring Boot の Red Hat ビルドの Kogito ビルダーイメージが含まれるようになりました。

詳細は、Getting started with Red Hat build of Kogito in Red Hat Decision Manager を参照してください。

第3章 新機能

本セクションでは、Red Hat Decision Manager 7.11 の新機能を説明します。

3.1. Business Central

3.1.1. ガイド付きデシジョンテーブルの列の値を並べ替える機能

ガイド付きデシジョンテーブルでは、列名をダブルクリックして値を昇順に、また同じ列をダブルクリックして、値を降順にソートできるようになりました。詳細は、ガイド付きデシジョンテーブルを使用したデシジョンサービスの設計 を参照してください。

3.1.2. Prometheus および Kafka データセットプロバイダー

Business Central では、Prometheus および Kafka データセットプロバイダーを使用して、データセットを作成して、外部データソースからデータを取得し、そのデータを外部コンポーネントやレポーティングに使用できるようになりました。

以下のリストは、Business Central の新しいデータセットプロバイダー 2 つについてまとめています。

  • Prometheus データセットプロバイダーを使用して、Prometheus クエリーでデータセットを生成します。
  • Kafka データセットプロバイダーを使用して、Kafka ブローカー、コンシューマー、またはプロデューサーからのメトリクスでデータセットを生成します。

詳細は、Business Central 設定およびプロパティーの設定 を参照してください。

3.1.3. テストシナリオ

Business Central のテストシナリオデザイナーには、Red Hat Decision Manager 7.11 のサポートがある新機能が追加されています。

  • Business Central のテストシナリオデザイナーは、ルールベースのテストシナリオでネスト化された列挙データ型の属性をサポートするようになりました。
  • テストシナリオデザイナーでは、リストまたはマップコレクションエディターの汎用メッセージではなく、実際のテスト結果が表示されるようになりました。これで、コレクションエディターで以下の情報を監視できるようになりました。

    • 不正な値
    • 不正な値に到達するパス
    • 正しい値

詳細は、テストシナリオを使用したデシジョンサービスのテスト を参照してください。

3.2. KIE Server

3.2.1. PMML 信頼実装

PMML 信頼実装を使用して、Java アプリケーションに PMML 呼び出しを埋め込むか、KIE Server を使用して PMML モデルを実行できるようになりました。PMML 信頼実装の詳細は、PMML モデルを使用したデシジョンサービスの作成 を参照してください。

3.2.2. 特定の DMN モデルの REST エンドポイント

Red Hat Decision Manager には、KIE Server Client (Java) API を使用せずに、REST 経由で特定の DMN モデルと直接対話するのに使用できるモデル固有の DMN KIE Server エンドポイントが含まれます。KIE Server の以下の REST エンドポイントは、DMN モデルのコンテンツに基づいて自動的に生成されます。

  • POST /server/containers/{containerId}/dmn/models/{modelname}: コンテナーで指定された DMN モデルを評価するための business-domain エンドポイント
  • POST /server/containers/{containerId}/dmn/models/{decisionServiceName}: コンテナーで利用可能な特定の DMN モデルで指定のデシジョンサービスコンポーネントを評価するためのビジネスドメインエンドポイント
  • POST /server/containers/{containerId}/dmn/models/{modelname}/dmnresult: 指定した DMN モデルの評価および business-domain コンテキスト、ヘルパーメッセージ、ヘルパーデシジョンポインターなど、DMN Result 応答を返すエンドポイント
  • POST /server/containers/{containerId}/dmn/models/{modelname}/{decisionServiceName}/dmnresult: 特定の DMN モデルで指定のデシジョンサービスコンポーネントを評価して、ビジネスドメインのコンテキスト、ヘルパーメッセージ、およびヘルプデシジョンポインターなど、DMN Result 応答を返すエンドポイント
  • GET /server/containers/{containerId}/dmn/models/{modelname}: デシジョンロジックなしの標準の DMN XML を返し、指定の DMN モデルの入力とデシジョンを含むエンドポイント
  • GET /server/containers/{containerId}/dmn/openapi.json(|.yaml): 指定のコンテナーで DMN モデルの Swagger または OAS を取得するエンドポイント

モデル固有の DMN KIE Server エンドポイントの詳細は、DMN モデルを使用したデシジョンサービスの作成 および KIE API を使用した Red Hat Decision Manager の操作 を参照してください。

3.3. DMN デザイナー

3.3.1. DMN リテラルボックス式の提案の強化

Business Central のリテラルボックス式で、より適切な提案が可能になりました。エディターで FEEL 式を入力すると、表示される最初の提案は、FEEL 関数の戻り値の型をもとに、コンテキストのタイプが推測されます。

3.4. Red Hat ビルドの OptaPlanner

3.4.1. OptaPlanner 8

  • Red Hat Decision Manager には、OptaPlanner 8 と OptaPlanner 7 が含まれています。OptaPlanner 7 は非推奨となり、今後のリリースで削除される予定です。以前のバージョンの OptaPlanner からプロジェクトを移行する方法は、Red Hat ビルドの OptaPlanner プロジェクトの OptaPlanner 8 へのアップグレード を参照してください。
  • OptaPlanner には、Red Hat ビルドの Quarkus の時間割およびワクチン接種予約スケジューラーのクイックスタートガイドが追加されています。詳細は、Red Hat ビルドの OptaPlanner クイックスタートガイド を参照してください。
  • 従業員の勤務表および配送経路計画スターターアプリケーションが Red Hat ビルドの Quarkus に移行されています。
  • ディナーパーティーの例が削除されました。
  • Constraint Streams API は、リッチになっただけでなく、高速化および安定化され、エラーメッセージの内容が改善されました。
  • scoreManager ではスコアの説明をサポートするようになりました。
  • SolverManager API では、最適解イベントと解決終了イベントの両方をリッスンする機能を提供するようになりました。
  • OptaPlanner はオンプレミス かつ、JDK 11 でのみ Red Hat OpenShift Container Platform 4.x (組み込み) でサポートされれるようになりました。

3.5. Smart Router

TLS (Transport Layer Security) 対応の Smart Router (KIE Server Router) を設定して、HTTPS トラフィックを許可することができます。さらに、Smart Router に対する、セキュリティーで保護されていない HTTP 接続を無効にできます。詳細は、RED HAT JBoss EAP クラスター環境への Red Hat Decision Manager のインストールおよび設定 を参照してください。

3.6. Spring Boot

3.6.1. Red Hat OpenShift Container Platform での Red Hat Decision Manager Spring Boot ビジネスアプリケーションのデプロイメント

Red Hat OpenShift Container Platform への Red Hat Decision Manager Spring Boot ビジネスアプリケーションのデプロイに関するドキュメントが追加されました。詳細は、Springboot での Red Hat Decision Manager ビジネスアプリケーションの作成 を参照してください。

3.6.2. Spring Boot バージョン 2.3.4 との統合

Red Hat Decision Manager は Spring Boot バージョン 2.3.4 と統合されました。

Red Hat Decision Manager と Spring Boot の統合に関する詳細は、Springboot での Red Hat Decision Manager ビジネスアプリケーションの作成 を参照してください。

3.7. BatchExecutionHelperProviderImpl.newXStreamMarshaller() メソッドでのセキュアな XStream インスタンスの作成

BatchExecutionHelperProviderImpl.newXStreamMarshaller() メソッドで、セキュアな XStream インスタンスを作成できるようになりました。XStream インスタンスはデフォルトで、ペイロードに事前定義された KIE クラスのみを受け入れます。メソッドで作成した XStream インスタンスを使用する場合は、許可されたクラスを追加する必要があります。たとえば、アプリケーションコードにドメインモデルクラスを追加します。追加しない場合には、ForbiddenClassException 例外を受信します。

許可されたクラスを追加するコード例

final BatchExecutionHelperProviderImpl batchExecutionHelperProvider = new BatchExecutionHelperProviderImpl();
XStream xstream = batchExecutionHelperProvider.newXStreamMarshaller();
String[] allowList = new String[]{
    "org.example.model.Person",
    "org.example.model.Company"
};
xstream.addPermission( new WildcardTypePermission( allowList ) );

第4章 サポートおよび互換性

本セクションでは、Red Hat Decision Manager 7.11 でサポート対象となるバージョンに関する更新内容を説明します。

4.1. メンテナーンスサポートへ移行するプラットフォーム

IBM WebSphere Application Server、Oracle WebLogic Server、Red Hat JBoss Web Server および Apache Tomcat での Red Hat Decision Manager へのサポートがメンテナーンスフェーズに入りました。Red Hat では、上記のプラットフォームでの Red Hat Decision Manager のサポートを継続しますが、以下の制限があります。

  • Red Hat では、新しい認定またはソフトウェアの機能をリリースしません。
  • Red Hat では、重大な影響を与えるセキュリティーパッチおよびミッションクリティカルなバグ修正パッチが含まれる認定セキュリティーパッチのみをリリースします。

今後、Red Hat ではハイブリッドクラウドストラテジーと互換性のある新しいプラットフォームや製品コンポーネントに移行するようにお願いする場合があります。

第5章 非推奨コンポーネント

本セクションのコンポーネントは非推奨になります。

5.1. OptaPlanner 7

OptaPlanner 7 および OptaPlanner 8 の両方が Red Hat Decision Manager 7.11 に含まれますが、OptaPlanner 7 は非推奨となり、今後のリリースで削除される可能性があります。OptaPlanner 7 プロジェクトを OptaPlanner 8 に移行する方法は、Red Hat ビルドの OptaPlanner プロジェクトの OptaPlanner 8 へのアップグレード を参照してください。

5.2. Business Central の OptaPlanner ツールコンポーネント

Business Central の以下の OptaPlanner ツールは、 OptaPlanner 7 に含まれます。これは非推奨となり、今後のリリースで削除される可能性があります。

  • データモデラーのアノテーション
  • OptaPlanner スコア変更のガイド付きルールエディターアクション
  • ソルバーアセット

5.3. JDK 8 のサポート

JDK 8 のサポートは Red Hat Decision Manager で非推奨となり、今後のリリースで削除される可能性があります。

サポート対象の JDK 設定に関する全一覧は、Red Hat Decision Manager 7 Supported Configurations を参照してください。

5.4. 古い kie-pmml 依存関係

レガシーの kie-pmml 依存関係は Red Hat Decision Manager 7.10.0 で非推奨となっており、今後の Red Hat Decision Manager リリースで依存関係に置き換えられます。詳細は、PMML モデルを使用したデシジョンサービスの作成 を参照してください。

5.5. OSGi フレームワーク統合のサポート

Red Hat Decision Manager では、OSGi フレームワークとの統合のサポートは非推奨になりました。新しい拡張機能や機能は提供されておらず、将来のリリースで削除される予定です。現在、Fuse バージョン 7.8 において、デシジョンエンジンと OSGi フレームワークとの統合と、プロセスエンジンと OSGi フレームワークとの統合には互換性がありません。OSGi フレームワークを使用する場合は、新しい Fuse バージョン 7.9 が利用可能で認定されるまで、Fuse バージョン 7.7 以前の Red Hat Decision Manager バージョン 7.9 リリースをそのままご利用ください。

5.6. RuleUnit API のサポート

Red Hat Decision Manager RuleUnit API との互換性がないため、既存の RuleUnit API が非推奨になりました。

5.7. レガシーのテストシナリオツール

レガシーのテストシナリオツールは、Red Hat Decision Manager バージョン 7.3.0 で非推奨になりました。今後の Red Hat Decision Manager リリースで削除される予定です。代わりに、新しいテストシナリオデザイナーを使用してください。

5.8. Red Hat OpenShift Container Platform 3.x のサポート

Red Hat Decision Manager バージョン 7.5 以降では、Red Hat OpenShift Container Platform 3.x 向けのイメージおよびテンプレートが非推奨になりました。非推奨のイメージおよびテンプレートには新機能が追加されませんが、Red Hat OpenShift Container Platform バージョン 3.x のサポートが終了するまでこれらのイメージとテンプレートは使用できます。Red Hat OpenShift Container Platform バージョン 3.x における完全なサポートライフサイクルフェーズに関する詳細は、Red Hat OpenShift Container Platform のライフサイクルポリシー (最新バージョン以外) を参照してください。

Red Hat OpenShift Container Platform 4.x で Operator を使用して Red Hat Decision Manager をデプロイすることを検討してください。

第6章 テクノロジープレビュー

本セクションでは、Red Hat Decision Manager 7.11 のテクノロジープレビュー機能を説明します。Business Central には、デフォルトで無効になっている実験的機能管理ページが含まれています。このページを有効にするには、appformer.experimental.features プロパティーの値を true に設定します。

重要

本章の機能はテクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat の実稼働環境でのサービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。これらの機能は、今後の製品機能への早期アクセスを提供することで、お客様が機能をテストし、開発プロセス中にフィードバックを提供できるようにしています。

Red Hat のテクノロジープレビュー機能のサポートの詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

6.1. Red Hat OpenShift Container Platform 4.x への Red Hat Decision Manager 高可用性のオーサリング環境のデプロイ

Operator を使用して Red Hat OpenShift Container Platform 4.x に高可用性の Red Hat Decision Manager オーサリング環境にデプロイできます。

6.2. OpenShift Operator インストーラーウィザード

Red Hat Decision Manager 向けの OpenShift Operator に、インストーラーウィザードが提供されています。このウィザードを使用して、Operator が含まれる Red Hat OpenShift Container Platform に Red Hat Decision Manager 環境をデプロイできます。

6.3. オーサリングパースペクティブのカスタマイズ

以下のタスクを実行すると、Business Central のオーサリングパースペクティブをカスタマイズできます。

  • スペースおよびプロジェクトの一覧を渡さずに、URL パスパラメーターを使用して Business Central プロジェクトを直接開く。
  • 要件に応じてプロジェクトツールバー、Metrics タブ、および Change Request タブを非表示または表示する。
  • ページネーションを強化する。
  • プロジェクト画面に存在するアセット数をカスタマイズする。

第7章 Red Hat Decision Manager 7.11.0 で既知の問題

本セクションでは、Red Hat Decision Manager 7.11 の既知の問題を紹介します。

7.1. Business Central

Business Central の Web アプリケーションは、サーバーが停止した後に表示中のブラウザーでポーリングが継続される [RHPAM-3635]

問題: ブラウザーウィンドウで Business Central Web アプリケーションを開いたままにすると、KIE Server の停止後に、これまでに実行されていた KIE Server のエンドポイントがポーリングされ続けます。

回避策: なし

スタンドアロンのエディターでは setContent メソッドの実装でパスとコンテンツを受信する必要がある [RHPAM-3629]

問題: スタンドアロンのエディターでは、コンテンツだけでなく、EditorAPI で定義した setContent メソッドと path および content パラメーターも実装する必要があります。

回避策: なし

実行中のモデルで、インポートされた入力とデシジョンノードを使用する場合にエラーメッセージが表示される [RHDM-1733]

問題: テストシナリオツールは、インポートされた入力およびデシジョンノードを使用するモデルを実行できません。自動生成されたデシジョンテーブルの列で誤った値が反映されます。

回避策: なし

メソッド呼び出しでテンプレートキーがサポートされない [RHDM-1729]

問題: Business Rule Language (BRL) アクションコラムからアクション呼び出しのいずれかを削除すると、生成された DRL ファイルが不正に更新されます。

問題の再現手順:

  1. Mortgages サンプルプロジェクトのインポート
  2. LoanApplication の元のコンテンツを [LoanApplication.java] に置き換えます。
  3. Pricing Loans の元のコンテンツを Pricing loans (1).gdst ファイルに置き換えます。(このファイルは RHDM-1729 の問題に添付されています)。
  4. Pricing loans(1).gdst ファイルを検証します。
  5. Columns タブに移動し、Action 列を選択します。
  6. 呼び出し関数 オプションの場合は、Edit をクリックします。
  7. Call [application.addExplanation]Call [application.deadline] を削除して Finish をクリックします。

回避策: なし

Business Rule Language (BRL) 列は、メソッド呼び出しデータ型の変換をサポートしない [RHDM-1696]

問題: ガイド付きデシジョンテーブルが XLS デシジョンテーブルに変換されると、String または Date のデータ型引数を含むメソッド呼び出しが正しく変換されません。

問題の再現手順:

  1. Mortgages サンプルプロジェクトのインポート
  2. LoanApplication の元のコンテンツを [LoanApplication.java] に置き換えます。
  3. Pricing Loans の元のコンテンツを Pricing loans (1).gdst ファイルに置き換えます。(このファイルは RHDM-1696 の問題に添付されています)。
  4. Pricing Loans を XLS テーブルに変換します。
  5. 変換された XLS テーブルを開き、Source タブに切り替えます。

    addExplanation メソッドでは、exp は定数ではなく変数であると仮定されます。deadline メソッドは 08-Mar-2021 が日付であることを前提としていますが文字列と判断されます。StringDate に変換するには、一部のラッパーモジュールが必要です。

想定される結果: XLS テーブルの検証に成功します。

実際の結果: XLS テーブルの検証に失敗します。

回避策: なし

ガイド付きデシジョンテーブルのソート機能がデシジョンテーブルのグラフで機能しない [RHDM-1664]

問題: ガイド付きデシジョンテーブルの並べ替え機能がデシジョンテーブルのグラフでは動作しません。マージされたテーブルビューが正常にソートされません。

問題の再現手順:

  1. Mortgages サンプルプロジェクトのインポート
  2. 問題 [RHDM-1664] に添付されている 2 番目の小さい table.gds ファイルをインポートします。
  3. 2 番目の小さい table.gds を使用して Pricing Loans 列を含むデシジョンテーブルのグラフを作成します。
  4. 2 番目の小さなテーブル を並べ替えてください。

想定される結果: デシジョンテーブルの並べ替え機能がデシジョンテーブルのグラフで正しく機能します。

実際の結果: ガイド付きデシジョンテーブルのソート機能が正しく機能しません。

回避策: なし

ガイド付きデシジョンテーブルをマージするとエラーが発生する [RHDM-1663]

問題: ガイド付きデシジョンテーブルをマージしたビューでは正常にソートされません。予期しないシステムエラーが発生します。

回避策: なし

ガイド付きデシジョンテーブルでは LocalDate 属性の並べ替え機能が動作しない [RHDM-1662]

問題: ガイド付きデシジョンテーブルで、LocalDate 属性の並べ替え機能が動作しません。

回避策: なし

7.2. DMN デザイナー

ワークスペースに複数のフォルダーが含まれる場合に VSCode インスタンスに新しい .scesim ファイルを作成できない [RHPAM-3621]

問題: 1 つのワークスペースに複数のフォルダーがある場合に、特定の DMN モデルのシナリオを新規作成すると、シナリオシミュレーションエディターが失敗します。

問題の再現手順:

  1. フォルダーが 1 つ含まれる VSCode ワークスペースを作成します。
  2. 有効な DMN ファイルを作成します。
  3. 新たに作成した DMN ファイル用の .scesim ファイルを作成します。
  4. VSCode ワークスペースに新しいフォルダーを追加します。
  5. 同じ DMN ファイル向けに別の .scesim ファイルを作成します。

回避策: ワークスペース内にはフォルダーを 1 つだけにします。複数のプロジェクトで作業する場合は、別の VSCode インスタンスでプロジェクトを開きます。

モデルに意思決定要件ダイアグラムが複数ある場合に、デシジョンサービスのモデルの推移的依存関係に encapsulatedDecisions 要素がない [RHDM-1732]

問題: モデルに複数の意思決定要件ダイアグラム (DRD) が含まれ、デシジョンサービスノードに追加してデシジョンコンポーネントを再利用しようとすると、作成されるデシジョンサービスノードには、推移的依存関係に対する encapsulatedDecisions 定義が含まれません。

問題の再現手順:

  1. 複数の DRD を定義します。
  2. 1 つの DRD で、意思決定の推移的な依存関係を含めてデシジョンをいくつか定義します。
  3. 別の DRD で、デシジョンサービスを定義して、以前に作成したデシジョンコンポーネントを再利用します。推移的な依存関係は複製しないでください。
  4. プロジェクトをビルドしてデプロイします。
  5. 次のタスクのいずれかを完了します。

    • 説明に報告されたエラーを確認するには、意思決定を評価する。
    • dmn ソースコードを確認して、デシジョンサービスの inputData 属性がないかどうかを判断する。
    • Properties パネルでデシジョンサービスの詳細を確認する。

回避策: 推移的な決定は、モデル化されたデシジョンサービスの encapsulatedDecisions セクションに含める必要があります。

DMN エディターでは、キャンバスに重複したデシジョンノードがある場合にエッジが削除される [RHDM-1714]

問題: キャンバスでデシジョンコンポーネントを複製すると、エッジで問題が発生します。元にモデル化されたエッジは、移動されるか、削除されます。

問題の再現手順:

  1. A と B の 2 つのデシジョンノードを作成し、リンクします。
  2. キャンバス上にある Decision Components パネルからデシジョンノード A をドラッグします。
  3. 入力ノードを作成し、重複するデシジョンノード A にリンクします。
  4. Save をクリックします。
  5. プロジェクトを再度開きます。

    入力ノードのリンクが元のデシジョンノード A に接続され、重複したデシジョンノードにはリンクがありません。

回避策: DRD ごとに 1 回だけ発生するデシジョンコンポーネントを 1 つ起動します。

DMN エディターの提案ボックスでは関数引数が解析されない [RHDM-1661]

問題: リテラル式を記述する場合に、DMN エディターでは役に立つ提案が解析されません。

問題の再現手順:

  1. DMN エディターを開きます。
  2. デシジョンノードを追加します。
  3. 式を Literal expression に設定します。
  4. date(2011 | , , ) 式を入力して、提案ボックスを確認します。

想定される結果: リテラル式を記述する場合に DMN エディターで役に立つ提案が提供されます。

実際の結果: リテラル式を記述する場合に、DMN エディターでは役に立つ提案が解析されません。

回避策: なし

DMN エディターの提案されたボックスでは、数字ではなく、リストとして式の結果が解析される [RHDM-1660]

問題: リテラル式に追加された式を解析すると、DMN エディターは数字ではなくリストを返す関数を提案します。

問題の再現手順:

  1. DMN エディターを開きます。
  2. デシジョンノードを追加します。
  3. 式を Literal expression に設定します。
  4. sum([1])+ sum([2]) 式を入力し、提案ボックスにチェックを入れます。

想定される結果: DMN エディターは追加された式に正しい関数を提案します。

実際の結果: DMN エディターは数字ではなくリストを返す関数を提案します。

回避策: なし

DMN エディターの提案ボックスでは変数を認識できない [RHDM-1658]

問題: number タイプをリテラル式に解析すると、DMN エディターは変数を認識できません。

問題の再現手順:

  1. DMN エディターを開きます。
  2. デシジョンノードを追加します。
  3. 式を Literal expression に設定します。
  4. numeric variable + 式を入力し、提案するボックスにチェックを入れます。

想定される結果: number タイプをリテラル式に解析すると、DMN エディターで変数が認識されます。

実際の結果: DMN エディターは変数を認識できません。

回避策: なし

DMN エディターの提案ボックスで duration 式を認識できない [RHDM-1656]

問題: duration 式を解析しようとすると、DMN エディターは duration 関数ではなく string 関数を提案します。

問題の再現手順:

  1. DMN エディターを開きます。
  2. デシジョンノードを追加します。
  3. 式を Literal 式 として設定します。
  4. date( "2012-12-25" ) - date( "2012-12-24" ) 式を入力し、提案ボックスにチェックを入れます。

想定される結果: DMN エディターは duration 式を認識します。

実際の結果: DMN エディターは duration 式を認識せず、string 関数を提案します。

回避策: なし

DMN エディターの提案ボックスでは date 式を認識できない [RHDM-1654]

問題: 日付の式を解析しようとすると、DMN エディターは date 関数ではなく string 関数を提案します。

問題の再現手順:

  1. DMN エディターを開きます。
  2. デシジョンノードを追加します。
  3. 式を Literal expression に設定します。
  4. date(date and time( "2012-12-25T11:00:00Z" )) 式を入力し、提案ボックスにチェックを入れます。

想定される結果: DMN エディターは date 式を認識します。

実際の結果: DMN エディターは date 式の認識に失敗し、date 関数ではなく string 関数を提案します。

回避策: なし

DMN エディターで、提案ボックスが否定のブール値式を認識できない [RHDM-1652]

問題: 否定のブール式を解析しようとすると、DMN エディターは式と関連のない各種提案を提供します。

問題の再現手順:

  1. DMN エディターを開きます。
  2. デシジョンノードを追加します。
  3. 式を Literal expression に設定します。
  4. false または not false 式を入力し、提案ボックスにチェックを入れます。

想定される結果: 否定のブール値式を解析すると、DMN エディターでは関連性のある提案を提供します。

実際の結果: 否定のブール値式を解析すると、DMN エディターでは関連性のある提案を提供できません。

回避策: なし

7.3. Red Hat ビルドの Kogito

指定のアセットから、プロジェクトの生成に、誤ったアーキタイプが使用される [RHPAM-3654]

問題: KogitoBuild のソースとしてアセットをアップロードすると、Red Hat ビルドの Kogito S2I イメージは kogito-quarkus-archetype:1.5.1-SNAPSHOT を使用してプロジェクトを生成します。kogito-quarkus-dm-archetype:1.5.0.redhat-00001 を使用する必要があります。

問題の再現手順:

  1. RHPAM Kogito Operator をインストールします。
  2. 以下のように KogitoBuild を作成します。

    apiVersion: rhpam.kiegroup.org/v1
    kind: KogitoBuild
    metadata:
      name: example-quarkus-local
    spec:
      buildImage: >-
        registry-proxy.engineering.redhat.com/rh-osbs/rhpam-7-rhpam-kogito-builder-rhel8:7.11.0-1
      runtimeImage: >-
        registry-proxy.engineering.redhat.com/rh-osbs/rhpam-7-rhpam-kogito-runtime-jvm-rhel8:7.11.0-3
      type: LocalSource
  3. 以下のように、Red Hat OpenShift Container クライアントを使用してアセットを Red Hat OpenShift Container Platform にアップロードします。

    oc start-build example-quarkus-local-builder --from-file=https://github.com/kiegroup/kogito-examples/blob/stable/dmn-quarkus-example/src/main/resources/Traffic%20Violation.dmn
  4. Builder ログファイルを確認します。

想定される結果: KogitoBuild のアセットをアップロードすると、Red Hat ビルドの Kogito S2I イメージは kogito-quarkus-dm-archetype:1.5.0.redhat-00001 を使用してプロジェクトを生成します。

実際の結果: KogitoBuild のアセットをアップロードすると、Red Hat ビルドの Kogito S2I イメージは kogito-quarkus-archetype:1.5.1-SNAPSHOT を使用してプロジェクトを生成します。

回避策: なし

第8章 Red Hat Decision Manager 7.11.0 で修正された問題

Red Hat Decision Manager 7.11.0 では安定性が増し、本セクションに挙げる問題が修正されました。

8.1. Business Central

  • DMN データ型に制約を適用すると、シナリオシミュレーションでエラーが発生する [RHDM-1435]
  • Red Hat JBoss BPM Suite 6.4 から Red Hat Decision Manager 7.7 に移行するとガイド付きデシジョンテーブルが開かない [RHPAM-3217]
  • アラートまたはエラーパネルは、プロジェクトのビルド時に現在のユーザーにだけ表示される必要がある [RHPAM-3442]
  • 一部のファイル記述子が適切に終了されないことが原因で Business Central で多数のファイルが開いたままとなり、java.io.IOException 例外が発生する [RHPAM-3309]
  • contains 演算子と、スペースが含まれる文字列リテラルを併用すると、ガイド付きデシジョンテーブルエディターは、不正な DRL ファイルを生成し、評価のエラーメッセージが表示される [RHPAM-3305]
  • Convert to XLS 機能を使用すると誤った結果が生成される [RHPAM-3183]
  • JDK 11 で Red Hat JBoss EAP を起動すると、Business Central のデプロイメントがエラーで失敗する [RHPAM-2994]
  • プロジェクトのビルド時に、生成されたエラーがすべてのユーザーに表示される [RHPAM-2647]

8.2. KIE Server

  • デフォルトの KieSession を使用してルールが実行されると、PrometheusMetricsDroolsListener を有効にできない [RHDM-1601]
  • dmn-drools-quarkus-metrics または dmn-drools-springboot-metrics プロジェクトをビルドすると、ビルドに失敗し、テストに使用されるコンテナーが利用できないとのエラーが表示される [RHPAM-3690]

8.3. DMN デザイナー

  • デシジョンサービスに複数の DRD があるモデルの inputData 要素がない [RHDM-1483]
  • ダイアグラム間の切り替え時に元に戻す操作とやり直す操作が失われる [RHDM-1458]
  • DMN デザイナーではデシジョンテーブル分析が First normal form (1NF) を警告として収集する [RHDM-1688]

8.4. OptaPlanner

  • 問題: Constraint Streams API で groupBy() メソッドを使用すると、増分スコア計算のパフォーマンスが低下します [RHDM-1385]。

8.5. デシジョンエンジン

  • accumulate 関数が null 値を返すと、一貫性のない結果を受け取る [RHDM-1643]
  • 実行可能なモデルでは、functionCall メソッドで int から short のキャストに失敗する [RHDM-1644]
  • MVEL 方言モードでは、プロパティーに関連付けられていないメソッドでファクトを更新すると、プロパティーリアクティビティーの無効化に失敗する [RHDM-1639]
  • 実行可能モデルでは、複雑な制約に % 演算のある BigDecimal 値が含まれる場合に、jiting 警告メッセージが表示されて失敗する [RHDM-1636]
  • 実行可能モデルでは、複雑な制約に % 演算のある BigDecimal 値が含まれる場合に、不正な結果が表示される [RHDM-1635]
  • MVEL 方言モードでは、プレーンな DRL ファイルで fireAllRules 関数を同時に呼び出すと、MVEL 構文エラーが発生する [RHDM-1629]
  • 実行可能モデルでは、アクションの部分にセミコロンではなく改行文字で終了するステートメントを含むルールを構築して実行すると、コンパイルエラーが発生する [RHDM-1622]
  • MVEL 方言モードで記述された、実行可能モデルに演算操作の BigDecimal タイプの値が含まれる式を使用するとコンパイルエラーが発生する [RHDM-1621]
  • 実行可能モデルでは、MVEL 方言モード記述されたカッコ付きの式がステートメントに含まれると、コンパイルエラーが発生する [RHDM-1620]
  • 式で関数を呼び出すと、int から short のキャスティングの問題が発生する [RHDM-1598]
  • コンテナーの更新時に NullPointerException が表示される [RHDM-1591]

8.6. Red Hat OpenShift Container Platform

  • S2I ビルドが java.lang.ClassNotFoundException: org.apache.maven.model.io.xpp3.MavenXpp3WriterEx で失敗する [RHPAM-3517]
  • Red Hat Decision Manager イメージを実行すると、起動ログで /opt/eap/bin/launch/messaging.sh: No such file or directory メッセージが表示される [RHPAM-3506]

第9章 Red Hat Decision Manager 7.11.1 で修正された問題

Red Hat Decision Manager 7.11.1 の安定性が増し、本セクションに挙げる問題が修正されました。

9.1. Business Central

  • Business Central が例外をログに記録せずにインデックス作成を停止する [RHPAM-3600]
  • 以下の構成設定が適用されると、Business Central REST API を使用したスペースの作成が失敗する [RHPAM-3739]

    <property name="org.appformer.concurrent.managed.thread.limit" value="9"/>
    <property name="org.appformer.concurrent.unmanaged.thread.limit" value="9"/>
    <property name="org.appformer.concurrent.indexing.thread.limit" value="9"/>
    <property name="org.appformer.concurrent.fs.watch.thread.limit" value="9"/>
  • Business Central では、コミット履歴が大きいとアセットを開くのに時間がかかり、プロジェクトのパフォーマンスが低下する [RHPAM-3557]
  • 保存時にデータオブジェクトエディターがインポートを削除する [RHPAM-3544]
  • ガイド付き決定ルールで、オプションが表示されない [RHPAM-2829]
  • データオブジェクトのフィールド名が大文字の場合、プロジェクトのデプロイ後、フィールド名の一部が自動的に小文字に変更される [RHDM-1725]
  • ガイド付きデシジョンテーブルを XLS デシジョンテーブルに変換すると、String および Date 引数を含むメソッド呼び出しを呼び出す BRL 列が正しく変換されない [RHDM-1696]
  • ガイド付きルールエディターで、式の内容が正しく再読み込みされない [RHDM-1600]

9.2. KIE Server

  • Spring Boot をバージョン 2.4.3 にアップグレードする際の narayana スターターバージョンの不一致 [RHPAM-3749]
  • DroolsKieSessionLookupHandler パラメーターが、PrometheusMetricsDroolsListener インスタンスを同じ ksession インスタンスに繰り返し追加する [RHPAM-3737]

9.3. DMN デザイナー

  • DMN エディターでは、キャンバスに重複したデシジョンノードがある場合にエッジが削除される [RHDM-1714]
  • コネクターが読み取り専用モードで異なる方法で表示される [RHDM-1667]

9.4. Red Hat ビルドの Kogito

  • 特定のアセットから、プロジェクトの生成に不適切なアーキタイプが使用される [RHPAM-3654]

9.5. デシジョンエンジン

  • 実行可能モデルで BigDecimal 変数を String 型の値に設定すると、コンパイルエラーが発生する [RHDM-1730]
  • ルール記述子を CompositePackageDescr に追加すると、プロジェクトのビルドに数時間かかり、コンパイルが完了しない [RHDM-1738]
  • 制約が同じ値にあるが、辞書編集的に異なる場合は、範囲インデックスの問題が発生する [RHDM-1722]
  • 実行可能モデルで、BigDecimal 型プロパティーを BigDecimal 変数の accumulate max 関数の結果と比較すると、コンパイルエラーが発生する [RHDM-1716]
  • 実行可能モデルで BigDecimal 変数を String リテラル値に設定すると、コンパイルエラーが発生する [RHDM-1715]
  • 実行可能なモデルで、ルールに MVEL ダイアレクトモードのプロパティーへの null 割り当てが含まれていると、モデル生成エラーが発生する [RHDM-1713]
  • 実行可能なモデルで、BigDecimal 変数が int 型の引数として関数に渡されると、コンパイルエラーが発生する [RHDM-1712]
  • 実行可能モデルで、ルールに MVEL ダイアレクトモードのファクトのプロパティーの拡張 for (foreach) ステートメントが含まれていると、コンパイルエラーが発生する [RHDM-1709]
  • updateToVersion パラメーターがスーパータイプの ObjectTypeNode.expirationOffset オブジェクトを予期せず上書きする [RHDM-1708]
  • 実行可能モデルで、BigDecimal 変数で算術演算を使用すると、コンパイルエラーが発生する [RHDM-1706]

付録A バージョン情報

本書の最終更新日: 2022 年 3 月 8 日 (火)

付録B お問い合わせ先

Red Hat Decision Manager ドキュメントチーム: brms-docs@redhat.com