IBM Support

Operational Decision Manager Known Limitations, Version 8.9

News


Abstract

This page lists the known limitations in the Version 8.9 releases of Operational Decision Manager. The list also provides workarounds for most of the issues.

Updated: March 2022

Content

General

Limitation Comment or workaround Version(s)
When using JDK 8.0.4.5, there can be long GC pause times caused by the unloading of classes by the JVM. This can disrupt service. Upgrade your JDK to the latest recommended version (see Detailed system requirements). All
When a user enters unicode characters such as German umlauts and French accents in logging in to an ODM console, an error is displayed: Invalid user name or password. On the WebSphere Liberty application server, you can fix the issue by adding the following line to the jvm.options file, which is located in the same directory as server.xml: -Dclient.encoding.override=UTF-8

On the Tomcat application server, you must set the encoding of the form authenticator value:
<Context docBase="teamserver" path="/teamserver" reloadable="true"
source="org.eclipse.jst.j2ee.server:teamserver-web-core">
<ResourceLink global="jdbc/ilogDataSource" name="jdbc/ilogDataSource"
type="javax.sql.DataSource"/>
<Valve className="org.apache.catalina.authenticator.FormAuthenticator"
characterEncoding="UTF-8" />
</Context>
8.9

Decision Server Rule Designer

Limitation Comment or workaround Version(s)
Rule Designer runs slowly or stops responding when a Help view is open.
Try the following workarounds:
  • If the Help view is not needed, close it.
  • If the Help view is needed, open Window > Preferences > Help > Content in in the Rule Designer Eclipse environment, and systematically click Apply and Close. The URL of the help service should be https://www.ibm.com/support/knowledgecenter/SSQP76_8.10.x.
All
The BOMs do not support Java 8 java.time types. Don't use Java 8 java.time types in BOMs. All
The name property cannot be empty when you publish a project from Rule Designer to Decision Center. Make sure that all the rules and packages are in the rule folder, and there is no .rulepackage file directly in the rule folder or anywhere else in the rule project. All
When generating a XOM from a COBOL copybook, the generation fails if the path to the copybook contains multibyte characters. Move the COBOL copybook file to a folder whose name does not contain any multibyte characters. 8.9
While you are editing ruleflows, decision tables or decision trees in Rule Designer on Mac OS, the Eclipse window stops responding, and the Eclipse process must be closed.
Avoid editing ruleflows, decision tables and decision trees in Rule Designer on MacOS. Use the editors in Decision Center, or use Rule Designer on a different operating system, for example, Windows or Linux.
For decision tables, try disabling the Swing editors in Rule Designer:
  1. In the toolbar, open Window > Preferences > Rule Designer.
  2. Deselect Embedded Swing editors.
  3. Click Apply and Close.
All
Eclipse 4.4 does not start properly in MacOS Sierra 10.12. Do the following:
  1. Download Eclipse for MacOS and decompress the file.
  2. Open a terminal in that folder and run the following command: xattr -d com.apple.quarantine Eclipse.app/
  3. Proceed with Rule Designer installation.
8.9, 8.9.0.1
When you use the build command, you might get one of the following error messages:
  • ERROR: Cannot find value info for key <name>
  • ERROR: Cannot find value descriptor for key <name>
The build command does not support BOM value type extensions that are based on user-provided implementations. 8.9
When you use the build command Maven plug-in to build a XOM project, the build might fail and display a compilation error for unresolved annotation types in the package ilog.rules.bom.annotations. In the Maven POM file of the XOM module, you must add a dependency link to the jrules-engine.jar. The file is located in the folder <InstallDir>/studio/lib/.

For example, if ODM is installed on the same machine that is running the Maven build, you can declare the dependency as follows:
<dependency>
<groupId>com.ibm.rules</groupId>
<artifactId>jrules-engine</artifactId>
<scope>system</scope>
<version>1.0</version>

<systemPath>InstallDir/studio/lib/jrules-engine.jar</systemPath>
</dependency>
8.9

Decision Center

Limitation Comment or workaround Version(s)
You cannot use the Business console or the API to delete a baseline that depends on a shared baseline. In this case, you must first remove the dependency to the shared baseline. All
Format changes to a decision table in an Excel sheet exported from the Business console do not appear in the table when it is imported back into the console. You cannot change the structure of the decision table before you import it back into the Business console. For example, you cannot add a column, which would introduce a condition or an action, or edit a definition for a column. You can change values, or add or remove rows only. Importing a table with an altered structure might cause errors or an unexpected behavior. You can undo unwanted changes by using the Undo button in the decision table editor in the Business console. All
The Import Excel File command in the decision table editor in the Business console imports any formula that is contained in an Excel file, instead of just the the results of the formula. To import a copy of an Excel file with the formulas replaced by their results:
  1. Copy the cells that contain formulas.
  2. Click the down arrow on the Paste button in the Clipboard section of the Home tab, and then click the Values button in the Paste Values section of the drop-down menu.
8.9.2.x
The Decision Center EAR embeds a new WAR file, decisioncentr-api.war. When this WAR is initialized at startup, you might find the following warning in the log file:

W CWNEN0047W: Resource annotations on the fields of the org.springframework.boot.autoconfigure.jdbc.DataSourceInitializer class will be ignored. The annotations could not be obtained because of the exception : java.lang.NoClassDefFoundError: org.springframework.jdbc.datasource.init.DatabasePopulator

The class org.springframework.jdbc.datasource.init.DatabasePopulator
is referenced by the Spring framework, but it is not used directly or indirectly by Decision Center. You can safely ignore this warning.
To get rid of this warning, you can add the following JARs to the application class path: 8.9.1.0
In the sample "Change notification using the anonymous login," the anonymous login in the Enterprise console gets the following error message:
This user does not have the correct role.
This part of the sample no longer works. All
RuleApps generated by Decision Composer and using some type of date cannot be run in ODM on-premises HTDS. No workaround. One might be provided in a feature interim fix. 8.9.1.0
When running Decision Center on Windows, you might get the following exception:

00003569 exception E uuid:f249e453-15ce-4c54-8b48-481b40493883 projectName:XXX qualifiedName:YYY type:ZZZ checksum:null” during the export of a decision service.

The operating system is case sensitive. Two artifacts whose names are the same but vary in case cannot persist in the same file system.
Fix the issue by changing the name of one of the artifacts.
8.9.1.0
Running the LDAP mode set to "users": When you define more than one LDAP connection and you import or delete groups, if you synchronize with only one LDAP connection, you might import deleted groups or delete imported groups from the other LDAP connections. Consolidation of imported or deleted groups in the Decision Center repository is performed when synchronization with LDAP connections occurs. This means that when you import or delete groups, you must synchronize the repository with all the LDAP connections at the same time. To do this, go to the Connection Settings tab, select all the LDAP connections, and click the Synchronize button or use the REST API endpoint /ldap/sync. 8.9.1.0
You cannot log in to the REST API Swagger UI with different user credentials after logging out of the Business console, Enterprise console, or the Swagger UI, even when prompted to sign in. Delete your browser cookies, or run the Swagger UI in private mode on your browser. 8.9.1.0
In the REST API Swagger UI, when you download a file through /v1/deployments/{deploymentId}/download or /v1/decisionservices/{decisionServiceId}/import, its name contains extra "-" characters at the beginning and end. After downloading the file, remove the extra characters from the name of the file. 8.9.1.0
In the remote API, IlrDSDeploymentReport.getErrors now returns error objects (IlrDSDeploymentError) with different severity levels, including INFO and WARNING, and not just ERROR. A prefix indicating the severity (INFO!, WARNING! or ERROR!) is included in the value returned by IlrDSDeploymentError.getMessage. To check whether a deployment succeeded, you must check that IlrDSDeploymentReport.getStatus equals IlrReportStatusKind.COMPLETED. 8.9.1.0
You cannot publish deleted elements together from a rule package. Either you get a synchronization error or the elements are not deleted from the Decision Center. Publish the deleted elements individually. 8.9.0.2
The search index in the Business console might not always be in sync with the content of the Decision Center repository. This typically happens after a reinstallation of ODM, a migration, or a server crash.
Possible symptoms:
  • A search in the business console does not find the correct elements.
  • A search in the business console finds some elements, but the console shows an error when you click on a displayed link, for example, The specified decision table was not found.
  • The server logs contain exceptions whose stacks contain com.ibm.rules.decisioncenter.web.search.SearchIndexBuilder.
If you have installed Decision Center with a remote SOLR server, you need to delete the SOLR indexes that correspond to Decision Center. If you rely on the embedded SOLR server (default behavior), you must remove the directory that contains the SOLR index. By default, this directory is computed with the following Java expression: System.getProperty("java.io.tmpdir") + "/decisioncenter-solr-dir". Depending on your application server, JVM and OS, this directory is either in a temp or tmp folder inside your application server installation directory, or in a global temporary directory. All
In the Enterprise console on the Mac OS, the ruleflow viewer triggers an exception that displays one of the following messages:
- The surface manager factory is already initialized.
- java.lang.NoClassDefFoundError: Could not initialize class ilog.views.sdm.IlvSDMView
The viewer requires a display device configuration that is no longer provided (see About X11 for Mac). If you run the viewer in headless mode (Java VM argument: -Djava.awt.headless=true), you will get an error message.
To fix the issue, change the Java VM argument to false: -Djava.awt.headless=false.
Note that the WebSphere Liberty application server forces the setting to true. You can modify the file server (.bat) in <WLP_HOME>/bin.
8.9, 8.9.0.1
When there are many branches and projects, the Enterprise console package selector takes a while to display artifacts when you copy a rule. Use the teamserver.searchCurrentBranchInPackageSelector property to display only the selected branch and its dependencies. You set the property in the Installation Settings wizard. 8.9
When you launch Decision Center, you might get the following message if the database is not already initialized: The database bound to the datasource is not initialized. No usage metering is available. Initialize the database, and then restart the server. 8.9

Rule Execution Server

Limitation Comment or workaround Version(s)
With versions of WebSphere Application Server prior to 9.0.5.3, a defect (PH14966) prevents the Rule Execution Server console from starting. Change the name of the library <WAS_HOME>/plugins/com.ibm.ws.prereq.jsfportlet.jar to <WAS_HOME>/plugins/com.ibm.ws.prereq.jsfportlet.jar.bk. All
If you use a Swagger API to run rules that have a parameter named response or request, the run stops and you get a bad request error:
statusCode=400, responseMessage=Bad Request,
responseBody=sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@7c8dbe70, responseHeaders=CaseInsensitiveMultivaluedMap [map=[null=HTTP/1.1 400 Ba

Do not use response or request in parameter names for Swagger calls. 8.9
In Hosted transparent decision services, one of the URLs inverts the RuleApp and the ruleset.
The following URL is incorrect:
http://<server>:<port>/DecisionService/ws/
<rulesetName>[/<rulesetVersion>]/<ruleAppName>[/ruleAppVersion>]
?WSDL[&[&<options>]]*
It should be:
http://<server>:<port>/DecisionService/ws/
<ruleAppName>[/ruleAppVersion>]/<rulesetName>[/<rulesetVersion>]
?WSDL[&[&<options>]]*
8.9.2
JBoss EAP 7.1.x before 7.1.3 prevents HTDS from running correctly. Update to JBoss 7.1.3.  Alternatively, you can update the commons-logging-jboss-logmanager Wildfly module to version 1.0.3.Final in $WILDFLY_HOME/modules/system/layers/base/org/jboss/logmanager/commons/logging/main directory.
Compile the commons-logging-jboss-logmanager-1.0.3.Final.jar by using the repository https://github.com/jboss-logging/commons-logging-jboss-logmanager/tree/1.0.3.Final. Change the module.xml file to take the new JAR.
All
In the decision engine, a ruleset with ruleflows that contain tasks and packages with UTF-8 characters in their names might break at runtime when running IBM JDK 8.0.6.5 or 8.0.6.6. Avoid updating your runtime servers to IBM JDK 8.0.6.0. IBM JDK is looking for a solution. If upgrading the JDK is required, modify the names in the ruleflow to use ASCII characters. All
While running a test, you get the following exception error: Caused by: com.ibm.db2.jcc.am.SqlDataException: VALUE <Lob-Value> IS TOO LONG. SQLCODE=-433, SQLSTATE=22001, DRIVER=3.72.45
You might need to modify the size of the tables that are used by Decision Runner. In the table EXECUTIONINSTANCEDATA, increase the column parameters to a BLOB of 2GB.
On DB2:
ALTER EXECUTIONINSTANCEDATA ALTER parameter SET BLOB(2G)
All
After upgrading from ILOG 7.1 to ODM 8.9.2, RuleApps  deployed from Decision Center to Rule Execution Server do not run correctly. However, RuleApps deployed from Rule Designer to Rule Execution Server run correctly. You must export the engine.conf file in a META-INF folder (see Migrating from V7). 8.9.2

When running a test or simulation in the Business console, an error might be thrown:

java.sql.SQLSyntaxErrorException: ORA-01795: 
maximum number of expressions in a list is 1000

If a test or simulation fails unexpectedly, or the connection between the Business console and RES is stopped abruptly, temporary information in the Decision Runner database tables might not be cleaned out. The accumulation of temporary information leads to this exception.

To solve the problem, make sure there is no test or simulation running, and delete all the rows in all the Decision Runner tables:

  • SCENARIOSUITEELEMENT
  • CHECKPOINTDATA
  • STEPSTATUS
  • JOBSTATUS
  • STEPEXECUTIONINSTANCEDATA
  • EXECUTIONINSTANCEDATA
  • JOBINSTANCEDATA
8.9
The Excel scenario files for simulations and tests do not support XMLGregorianCalendar. When you try to create a XMLGregorinaCalendar object, you get the error java.lang.InstantiationException. Use the class constructor to initialize attributes. Provide a Date type as an input parameter to the class constructor, and then translate it into XMLGregorianCalendar. For more information, see https://github.ibm.com/MYattara/DVSXMLGregorianCalendarSample. All
Generation of OpenAPI description files supports only Java™ XOMs. It does not support XML XOMs. For XML XOMs, use a WADL or WSDL description file. 8.9.1.0

zRule Execution Server

Limitation Comment or workaround Version(s)
When TCP/IP is restarted while the zRule Execution Server console is still running, the console goes into a loop, outputting [NioSocketAcceptor-1] WARN org.apache.mina.util.DefaultExceptionMonitor - Unexpected exception messages to the console error file. Stop the zRES server and console before restarting TCP/IP, and then start them again once TCP/IP is restarted. 8.9

Insights Designer

Limitation Comment or workaround Version
In Insight Designer, when you deploy two or more solutions with the same version level to the server, the run might fail. Use solutions that have different minor version numbers. All
In Insight Designer, when you deploy two or more solutions with the same version level to the server, the run might fail. Use solutions that have different minor version numbers. All

Application servers

Limitation Comment or workaround Version(s)
When using the MariaDB database, settings for default characters and collation are not valid for Decision Center and Rule Execution Server. This can cause numerous database errors in the components. Change the settings as follows:
  • utf8 for the character set
  • utf8_general_ci for collation

Example of an SQL statement that uses these settings:

ALTER DATABASE dbname CHARACTER SET utf8 COLLATE utf8_general_ci;

Refer to MariaDB documentation for additional information.

8.9.1.0
On WAS 8.5.5, when you start the Business console web application, you might get warnings similar to the following statement:

W com.ibm.ws.ecs.internal.scan.context.impl.ScannerContextImpl scanJAR unable to open input stream for resource com/ibm/rules/bmd/web/BalCompiler$BalRulesetComponent.class in archive WEB-INF/lib/bdsl-bmd-core-8.9.1.0.jar

You can ignore these warning. Filter them out by changing the log level to ERROR for the package name com.ibm.ws.ecs.internal.scan.context. 8.9.1.0
For CICS 5.3 or 5.4, when you use JDBC Type 2, CICS links to Liberty applications running in a CICS Liberty JVM server cannot perform transactional work such as commits or rollbacks. When running ODM in the CICS Liberty JVM server on z/OS, only JDBC Type 4 connections can be used to access the Rule Execution Server database. 8.9.1.0
When running ODM on Liberty in z/OS, only one application (HTDS, DR, DVS or Wola) can enable the SMF plug-in at a time. The HTDS, DVS, Decision Runner and Wola components cannot simultaneously enable the SMF plug-in on the same instance of Liberty server. To enable the SMF plug-in in multiple applications, run each application on a separate instance of Liberty server. 8.9.1.0

Installation

Limitation Comment or workaround Version(s)
You use IBM Installation Manager to install the product files. If you do not have the installer, follow the instructions at Installing or updating Installation Manager. All
It is impossible to install ODM on WebSphere Application Server (WAS) 8.5.5.11 and above, and to start the sample server after you upgrade WAS 8.5.5 to fix pack 11 or above. From WAS_HOME/properties/version, copy the following files as directed:

To install ODM, copy ibm.com_WebSphere_Application_Server_Network_Deployment-8.5.5.11.swidtag into WebSphere_Application_Server_Network_Deployment-8.5.5.11.swtag.

To run the sample server, copy ibm.com_WebSphere_Application_Server_Network_Deployment-8.5.5.swidtag into WebSphere_Application_Server_Network_Deployment-8.5.5.swtag.

8.9

Documentation

Limitation Comment or workaround Version(s)
Cannot find a list of required Eclipse features for Rule Designer.

The correct version of Eclipse is included in the installation files of Operational Decision Manager. You can also install Operational Decision Manager components on an existing Eclipse that is required for your version of Operational Decision Manager (see Software requirements). You can find a complete list of installed software in Eclipse by clicking Help > About Eclipse > Installation Details.

All
In the tutorial "Getting started with business rules," step 3.2 of task 2 directs the user to the wrong field. In step 3.2 of task 2, enter the rule task name in the ID field, not the Label field. All
In the Rule Designer tutorial "Defining a vocabulary," the code sample in Step 3c of "Task 4: Extending the Business Object Model" contains a typo: age-- Change age-- to age = age -1 or age -=1. 8.9, 8.9.0.1

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSQP76","label":"IBM Operational Decision Manager"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.9, 8.9.0.1, 8.9.0.2, 8.9.1.0, 8.9.2.0, 8.9.2.1","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
21 March 2022

UID

swg21996706