Cloud Software Group, Inc. EBX®
TIBCO EBX® Documentation
Navigation mode Release Notes

# 6.1.3

## 6.1 service packs

### 6.1.3

6.1.3 has been built on December 4, 2023. Overview of this service pack:

Backward compatibility - Permissions check on nodes used to define associations | Associations 'by foreign key' and associations 'over a link table' are now hidden if at least one of their defining nodes is confidential and hidden. See Defining confidentiality for more information.
Backward compatibility - Display policy | The Unicode CLDR has changed with JRE versions and impacts locale-sensitive formats such as integer or decimal. By default, EBX® uses the JRE's native format. However, you can configure this option. For more information, see Supported application servers.
Backward compatibility - User authentication | The way EBX® handles user authentication and stores the authorization has changed: The `ebx-authentication` servlet was added in this release. EBX® automatically redirects users to this servlet when login is required; this should be transparent from a user's perspective. This change might require your attention if you use a custom directory or a custom login page. The authorization information is stored in a cookie. As a consequence, enabling cookies is now required to access EBX®. See User authentication for more information.
Built-in RESTful services | New business object operations using `data-bo` and `data-compact-bo` categories were added to operation categories . Additionally, the new business object categories: Now support the select, delete and OpenAPI operations. The select response in compact json format now supports the association fields. Include new APIs added in ``CategoryURIBuilder`` to build URIs for business object categories. New datasets selection operations for `data` and `data-compact` categories are available. See Dataset operations and OpenAPI operations for more information. Selector pagination was enriched with three new links for first, previous, and last page navigation. See Pagination for more information.
Stop words and synonyms | Stop words and synonyms lists can now be defined in the Search data model extension. See Synonyms and stop words for more information.
Case sensitivity of uniqueness constraints | It is now possible to specify the case sensitivity used to check the uniqueness of string fields. By default, the case-sensitive option is applied. See Uniqueness constraint for more information.
Date, DateTime and Time | Indexing for the Date, DateTime, and Time data types has been enhanced to ensure more consistent filtering when there are changes in the server's time zone. Consequently, a delay might be experienced due to the rebuilding of the index when first accessing tables containing these data types.
Staging | The role mail, localized label, and description are now staged. The relationships between roles are also now staged. ##### Note 6.1.2 archives with roles can be imported to a 6.1.3 repository without fields or relationships. Non-published views are now supported. The documentation for staging was updated to include information on what add-on components can be staged and where to find those components.
EBX® Container Edition | The installer can now build: an image with the legacy addons and images for several architectures, not only for the current architecture. See Building the image for more information.
Data validation | A property was added to enable changing the behavior of child dataset validation. See Validation mode of child datasets for more information.
Dependency to dataset fields | It is now possible to define, in a constraint on table, a dependency to a dataset field (field not under a table). In the context of the incremental validation, this means that any updates performed on the dataset field will imply a full revalidation of the constraint. See `DependenciesDefinitionContext.addDependencyToModify` and `DependenciesDefinitionContext.addDependencyToModify` for more information.
Java Runtime Environment | JRE 17 and 21 LTS are now supported. Support was removed for JRE 11, except for WebLogic 14c where JRE 11 currently remains supported. Please see the following installation note for more details on WebLogic support. If mail is configured using the `ebx.properties` file, the `ebx.mail.smtp.ssl.provider` and `ebx.mail.smtp.ssl.factory` properties are now ignored and can be removed. For more information, see Supported application servers and Activating and configuring SMTP and emails.
Supported databases | PostgreSQL 11 is no longer supported. The minimum supported version of PostgreSQL is now 12. See Supported databases for more information.
Known issues | See 6.1.3 Known issues section.
Closed issues | See 6.1.3 Closed issues section.

### 6.1.2

6.1.2 has been built on September 8, 2023. Overview of this service pack:

Logs configuration | It is now possible to configure log messages using Apache Log4j™ 2, the `ebx.properties` main configuration file, or a combination of both mechanisms. See Log configuration for more information.
Backward compatibility - Linked Fields properties inheritance | Linked fields now inherit most of their properties from their target node. As a consequence of the properties and facets inheritance, adding a facet to a linked field is now obsolete; a warning message is thrown and the facet is ignored. Moreover, validation is always disabled for linked fields since the validation is done on the target node and the linked field only displays the value of its target node. See Linked fields for more information.
Query now considers programmatic access rules | When setting a session on a Query and executing it, the result now takes into account any programmatic access rules defined in the session. This is in addition to the scripted access rules that were already considered in previous versions.
Kubernetes platform support | EBX® Container Edition is now compatible with Red Hat® OpenShift®. We provides Helm chart samples that are available on GitHub. See Kubernetes for more information.
Java EE deployment - Deployment | The management of cookies becomes enabled by default.
Closed issues | See 6.1.2 Closed issues section.

### 6.1.1

6.1.1 has been built on July 10, 2023. Overview of this service pack:

EBX® SQL | The EBX® SQL API now includes a single parameter FK_AS_STRING built-in function. This avoids the problem of providing the wrong arguments to the 3-parameter version. In some cases, it will still be necessary to use the 3-parameter version. See EBX® SQL functions for more information.
REST exception handling | The REST Toolkit exception JSON format has been updated to match the exception JSON format of the Built-in RESTful services (same as in version 5).
Search on associations | Quick search now includes association fields. Additionally, the 'text search' operator is available for associations when performing an advanced search. The search is performed on each field used in the label of the associated records. To improve performance, exclude fields and associations from the quick search tool using the new property `osd:defaultView/hiddenInQuickSearch="true|false"`. See Default view for more information.
Complex search filters | Multiple search criteria can now be grouped by logical operator to create complex filters. The groups display in a tree view that utilizes a variety of features to streamline the construction of even the most complex filters. See Create complex filters for more information.
Staging | The following new types of staging elements were added: Global permissions Scheduled tasks Workflow models The automatic import of staging archives on startup feature was also added. See Staging for more information.
Permission: Access rights configuration | The dataset permission configuration screen has been replaced by a new grid configuration service that allows users to configure and check all dataset permissions in a single screen.
Permission: Access to history and scripted permission rule | It is now possible to configure a list of authorized profiles to access a table's history when a scripted permission rule is set. See Scripted permission rules on records and table history for more information.
Backward compatibility – retrieving a value in an invalid context | The ReadContext.get(SchemaNode) method behaved incorrectly in previous versions if the specified node didn't belong to the same table as the current record. Now, the consistency of the specified node is checked and an `IllegalArgumentException` is thrown if it does not belong to the same table as the current record.
Business objects | The business objects extension is now available in the DMA even if the TIBCO EBX® Match and Merge Add-on is not registered. See Business objects, `BusinessObjectModel` and `MainEntity` for more information.
Closed issues | See the 6.1.1 Closed issues section.

#### Java API

The Java API was improved on the following topics:

- `DataspaceValidationReport`

  A new interface has been added to represent the validation report of a dataspace. It gathers the validation reports of all datasets included in the dataspace according to the specified policy. It provides also several methods to exploit the validation result. See `DataspaceValidationReport` for more information.

- `AdaptationHome`

  Two new methods have been added to validate a dataspace.

  See `AdaptationHome.getValidationReport` and `AdaptationHome.getValidationReport` for more information.

  ##### Note

  All datasets in this dataspace will be validated according to the specified policy. The validation of the dataspace can therefore take a long time.

  A new method has been added to identify that a dataspace is used by the validation framework.

  See `AdaptationHome.isUsedByValidation`

- `DependenciesDefinitionContext`

  Five new methods have been added to specify a dependency for validation.

  See `DependenciesDefinitionContext.addDependencyToModify` , `DependenciesDefinitionContext.addDependencyToInsertAndDelete` , `DependenciesDefinitionContext.addDependencyToInsertDeleteAndModify` and `DependenciesDefinitionContext.addDependencyToInsertDeleteAndModifyInOtherInstance` for more information.

Note: 6.1.0 has been built on March 22, 2023.

## Audit trail

The "Audit Trail" feature has been extended. Now it handles user access to comparison and validation services. The attribute "service-mode" is now logged in the specific case of the "User service" event. See Audit trail for more information

## Tile views

You can now create a custom view that displays data using tiles. The tiles are arranged in a grid and can include the following information: title (required), subtitle, image, and description. For the title and description you can: select fields to automatically populate the values, manually specify the text that displays, or use a combination of both methods. Additionally, you can define sort and filter criteria that apply to the view. Toolbars can also be added. See Tile views for more information.

## Team Up

Team Up features introduce new ways to collaborate and engage with your data. Business users can leave comments on records, rate records, and assign tags to records. Access to, and visibility of Team Up features is highly customizable. See Collaborative features (Team Up) and Introduction to collaborative features (Team Up) for more information.

## Hierarchies

This release contains the following new hierarchy features and updated functionality:

- In addition to Enumeration, Boolean, and Date, supported enumerable data types now also include String and Integer. See Hierarchy limitations for information on limitations for these new dependencies.

- A Group By hierarchy view can now be created based on the columns contained in a single table; the columns set the hierarchy dimensions. Fields used for this type of hierarchy must be a foreign key or an enumerable type. See Group by hierarchies for more information.

- Level skipping is now available to generate views of ragged hierarchies where a member's parent skips one level. To enable ragged hierarchy display, the new property Allow level skipping is available under a hierarchy view configuration's Advanced properties group. Note that all foreign keys must be present in the target dimension table. See Ragged hierarchies for more information.

- Fields with a Date data type can now be defined as time-based hierarchy dimensions. When reaching the last screen while creating the hierarchy view, select the date field at the top of the screen and use the Time dimension menu to select how you want the dimension to display. See Time-based hierarchy dimensions for more information.

- The Remove recursive root leaves was reactivated in this release. In a recursive case, when a search filter is applied or if Prune hierarchy is enabled, this option prevents root leaves from displaying.

## Record metadata

Record metadata is now automatically added to a table's structure. The metadata nodes allow you to retrieve the following information about a record: creator, creation time, last modifier, time of last modification, and Unique identifier (UUID). Since this metadata is now part of the data model, you can:

- Use the quick search feature to locate records using the metadata fields as part of the search criteria.

- Execute queries with the API using XPath or SQL.

- Define table views that include the metadata fields.

See Record metadata, `SchemaMetadataConstants` and `SchemaNode.getNodeChildren` for more information.

## Staging

The new staging feature allows you to move elements in your EBX® repository from one environment to another. For example, you can stage configuration settings from a development environment to a testing environment. See Staging for more information.

## Workflows

Several improvements were made to workflows:

Workflow Launcher | The Workflow Launcher built-in service was improved in the following ways: When activating a workflow launcher you can now select and activate multiple tables at the same time. The process to launch or view workflows that require a record selection was simplified. Now users can view and launch workflows from the toolbar that displays on rows in the table view. This prevents them from having to open a record, or use the Actions menu to locate a workflow before launching it. See Workflow launcher in data for additional information.
Workflow model editor improvements | A pop-up is now displayed when unvalidated changes of the layout are not saved when creating a new step. Customize the links arrangement, and more generally the steps disposition using new connectors. A pop-up is now display when unvalidated changes of the layout are not saved. The following new automatic placement mode is available: vertical layout.
New built-in script tasks | Update a record String value Retrieve a record’s field value ( String ) Update a dataspace label Update a workflow label
New API for Workflow Publication and Unpublication | Workflow Publisher API: Introduces the `WorkflowPublisher` class for workflow preparation and publication. Retrieve an instance using `WorkflowEngine.getWorkflowPublisher()`. Refer to `WorkflowPublisher` for more information. Workflow Unpublish API: The `WorkflowEngine` now provides a method to unpublish a workflow process and manage its active instances. For detailed usage, see `WorkflowEngine` for more information.

## Perspectives

A new perspective mode is now available to set as the default when connecting to EBX®. Choose between the following two modes:

- Favorite perspective: apply the favorite perspective at connection. This is the default mode.

- Last used perspective (new for this release): apply the last visited perspective at connection.

See also Perspective modes.

## Data modeling

Data modeling includes the following new features:

- Entity names

- Search strategies

### Entity names

By default, an entity name is now automatically created for tables when no name is explicitly defined in the data model. Entity names allow you to directly reference tables in SQL requests and data service operations using unique names instead of their paths. This is accomplished by defining aliases for SQL requests and suffixes for WSDL operations. This new behavior can impact existing data models.

Note that this new behavior may trigger an error on data model compilation, as indicated in the Backward compatibility section.

### Search strategies

The following search strategies are now available to define on String fields: Levenshtein, Soundex, Double Metaphone, and NGram strategy. Previously, these strategies were only available when the EBX® Information Search Add-on was deployed; in case a data model was already using them, not further action is required.

See Advanced strategies for strings for more information.

## Data validation

When creating a constraint on table with a record level check, you can now specify a behavior depending on the record's creation status. It is now possible to use an indicator to know if current record is being created. The method `isRecordCreation()` returns `true` if the current record is being created. See `ValueContextForValidationOnRecord.isRecordCreation` for more information.

## Request and query optimizations

Several features offer better performance. In particular:

- A request cache has been introduced that caches the transformation from requests to queries, when executing a `Request`. See Request cache activation for more information.

- `RequestResult` size related methods have a better performance if executed multiple times.

- Requests that are based on primary key values will be executed using a more optimized implementation of `RequestResult`.

## Java API

The Java API was improved on the following topics:

Iterable `RequestResult` | `RequestResult` now extends `Iterable<Adaptation>` so it can be traversed using a simplified syntax. See `RequestResult` for more information.
`Repository` | The new method `Repository.getDefaultWhenFullyInitialized()` blocks the calling thread until the repository is fully initialized and become able to handle: SOAP, REST Built-in, REST Toolkit requests and UI. See `Repository.getDefaultWhenFullyInitialized` for more information.
`SchemaLocation` | Some methods have been added to `SchemaLocation` to retrieve the properties of packaged and embedded data models. See `SchemaLocation.isPublication`, `SchemaLocation.getPublicationName`, and `SchemaLocation.getPathInModule` for more information.
`UICustomViewContext` | The new Java interface `UICustomViewContext` allows to get: the recommended view for a given user; the favorite view for a given user; the currently applied view. See `UICustomViewContext` for more information.
`ValidationReportItemSubject` | Two new methods have been added to `ValidationReportItemSubject` to check the subject type of a validation item. See `ValidationReportItemSubject.isDatasetOrRecordSubject` for more information. See `ValidationReportItemSubject.isTableSubject` for more information.

## Data services

The following sections describe new features and improvements to data services:

- REST Toolkit APIs

- Built-in RESTful services

- Built-in SOAP operations

### REST Toolkit APIs

The OpenAPI operations now extend the 'api' category to generation documents for REST Toolkit resources. See OpenAPI for more information.

### Built-in RESTful services

The built-in RESTful services were improved in the following areas:

URL encoding | URL encoding has been improved for REST services. It now complies with the following URI specifications: RFC-3986 with percent encoding (section 2.1) . See backward compatibility for more information.
Record metadata | The select operation has been improved to return record metadata using the new `includeMetadata` parameter. The system metadata can now be used by the `filter` and `sort` parameters with the following metadata fields: creator, creation time, updater and update time. As a consequence the: `includeMeta` is deprecated and replaced by the `includeMetamodel` parameter. `includeTechnicals` parameter is deprecated and replaced by the `includeMetadata` parameter with the 'system' value. `checkNotChangedSinceLastUpdateDate` parameter is deprecated and replaced by the `checkNotChangedSinceLastUpdateTime` parameter for the delete operation. Update and delete operations now support the Optimistic locking in JSON compact format with the same mechanism as the extended format. See data modeling Record metadata, `includeMetadata` parameter, `includeMetamodel` parameter and `checkNotChangedSinceLastUpdateTime` parameter for more information.
New mass update and delete operations | These operations can combine a XPath predicate expression and/or a published table view that can also contain an XPath expression. The update operation applies one or more changes to each record that matches. See Insert operation and Delete operation for more information.
Health REST built-in | New health category operation helps monitor the EBX® server. See Health operations for more information.
Lightweight JSON extended format | The selector URL of the multi-occurs enumeration field is moved under the field instead of each occurrence. This change lightens the JSON content for select operations.

### Built-in SOAP operations

The built-in SOAP operations were improved in the following areas:

Record metadata | The select operation was improved to return record metadata using the new `includesMetadata` parameter. The system metadata can now be used by the predicate parameter with those fields: creator, creation time, updater and update time. As a consequence, the `includesTechnicalData` is deprecated and replaced by the `includesMetadata` parameter with the 'system' value. The update operation was improved to take all data content returned by the select operation even if fields are ignored. For example, it can take association values and record metadata, except `ebx-metadata/system/update_time` to ensure success of the optimistic locking feature. See `includesMetadata` parameter, Update operation and Record metadata for more information.

## EBX® main configuration file

The main configuration file has been improved on the following topics:

Configuring SMTP without JNDI | Timeouts for sending an email are now configurable from main configuration file, when ignoring the Java Naming and Directory Interface (JNDI). See Activating and configuring SMTP and emails for more information.

## EBX® Container Edition

The Container Edition was improved on the following topics:

Java SE Development Kit | The JDK has been upgraded to LTS version 17. See Overview for more information.
Configuring SMTP timeouts | Timeouts for sending an email are now configurable. See Email connectivity for more information.

## Limitations for this release

### Hierarchy limitations

On allowed dimension for new dependencies:

- Recursive list field is not allowed.

- List field is not allowed inside a Group List.

- List field is not allowed inside a Nested Column Dependency.

- Recursive behavior is not allowed inside a Nested Column Dependency.

- Date List field is not allowed as a Time Dimension field.

### Query limitations

The performance of these features is not yet optimized:

- Navigation on paginated views (next/previous page) with sort on foreign key fields having a custom display pattern, if this pattern contains fields outside the primary key of the referenced table.

- Advanced search filtering on foreign key fields using string-based operations (e.g. starts-with, contains, matches, etc.).

- Navigation on paginated views (next/previous page) with sort on linked fields.

The following cases do not rely on Lucene indices. This has two consequences: first, performance is not optimized; second, Quick search behaves like a 'contains', rather than a full-text search:

- computed fields with non-local dependency;

- inherited fields;

- all fields in an inherited dataset;

- all fields in table history views.

More specific cases not benefiting from index optimization are described in the following section.

### Value-labeling limitations

Search and sort using the value-labeling feature have a few limitations described in section Value-labeling.

### Data validation limitations

- It is not possible to validate a dataset or a table within a Procedure.

### Linked fields limitations

- Targeting a node which is an enumeration is not fully supported yet. Currently, only the raw value will be available for display and search, instead of the enumeration label. Until this limitation is removed, the workaround is to declare the same enumeration in the target node and in the linked field itself.

## Version upgrade

In addition to the information provided in this release note, the chapter 6.1 Java API changes provides an exhaustive list of the new Java APIs published since the release of the 6.0 version.

### Compilation and build environments

Your compilation and build environments must now use the following new development JAR libraries, instead of `ebx.jar`:

- `ebx-api.jar`, for the Java API of EBX®;

- `ebx-resources-api.jar`, for the Java API of third parties.

##### Note

Java types in `ebx.jar` are no longer obfuscated.

##### Note

At runtime, development JAR libraries should not be deployed, continue to only use the `ebx.jar` library.

### Changes on supported environments

The chapter Supported environments has been updated to reflect the necessary upgrades detailed below.

Browser support | Please note that Microsoft Internet Explorer and the non-Chromium version of Microsoft Edge are not supported anymore.
JVM support | Required Java Runtime Environment: either JRE 17 or 21 LTS. Java 8 and 11 are no longer supported.
IBM support | WebSphere Application Server 9 is no longer supported. WebSphere Application Server Liberty, for Java EE 8 only, is supported.
Oracle support | Oracle 12c is no longer supported. Minimum supported version of Oracle is now 19c.
PostgreSQL support | PostgreSQL 10 and 11 are no longer supported. Minimum supported version of PostgreSQL is now 12.
Microsoft support | SQL Server 2012 SP4 is no longer supported. Minimum supported version of SQL Server is now 2014.

### Migrating an existing EBX® 5 environment

To get a running EBX® 6 from an existing EBX® 5 environment, follow the dedicated migration guide.

### Upgrading from an existing EBX® 6 environment

The Lucene library version has been bumped from 8.11.0 to 9.4.0, bringing modifications in the index format. As a consequence, the directory holding the indices is going to be automatically deleted during the product upgrade. Thus, a delay at the first access to each table can be expected for index rebuild. Some minor changes in search behavior can also be observed.

### Removal of dataset creation options

In the Create a dataset service, the option to create a dataset from an external data model was removed. It is still possible to import a file in the data model assistant.

### Backward compatibility

URL encoding | URL encoding has been improved for REST services and GUI. It now complies with the following URI specifications: RFC-3986 with percent encoding (section 2.1) . The percent encoding is used to encode path and query parameters values and keys of URL when they contain dataspace keys or primary keys which may have characters that would require encoding. For example, '&' in a query parameter value of a URL (like in `A&B` will be encoded as `A%26B`) Server configuration should be checked to support slash and backslash characters. See Installation notes for more information.
Entity names | In this release EBX® now automatically creates an entity name for the tables defined in a data model. The last step of the table's path is used as the default entity name. Since entity names must be unique in a data model, an error is now raised during compilation if the model contains tables with the same name. To prevent an error in this case, you must explicitly set the entity names. See Entity mappings and `SchemaNode.getTableEntityName` for more information.
JSON extended format change | Selector URL has been moved for multi occurrence enumeration fields using the select operation. See Lightweight JSON extended format for more information.
REST Toolkit exception handling | The REST Toolkit exception JSON format has been modified and is no longer compatible with the format used on versions 6.0.x. See the overview of 6.1.1 for more information.
Decimal serialization in the REST Toolkit | The JSON serialization library was upgraded and the new version serializes a `java.util.BigDecimal` into a `JSON string` instead of a `JSON number`. A custom serializer can be used to override this behaviour.
Maximum number of clauses in a query | Due to the upgrade of the Lucene library, the method to compute the maximum number of clauses authorized in a query has changed. Previously, it was possible to have a very high number of clauses. Those queries now throw an exception. The condition is not easily met. If it happens, this is probably due the Levenshtein search strategy. This can be avoided by customizing the strategy to decrease its fuzziness. For instance, by adding an invariant prefix, or reduce the max edit distance.
Rolling log files | From 6.0.6 to 6.0.10 (included), the rolling files names have changed from `xxxx.log.yyyy-MM-dd` (or `xxxx.log.yyyy-MM-dd-i`) to `xxxx.MM-dd-yyyy.log` (or `xxxx.MM-dd-yyyy-i.log`). By default, the former format (`xxxx.log.yyyy-MM-dd` or `xxxx.log.yyyy-MM-dd-i`) is used. The rolling format can be specified in ebx.properties file by setting the property `ebx.log4j.appender.ebxFile.rollingFormat`. If this property is specified, the filenames will have the following format: `xxxxx.rollingFormat.log` and will not be append to the end of the filename with the extension. To configure same filename format than since 6.0.6, the value must be `%d{MM-dd-yyyy}-%i`. The property will accept both a date/time pattern compatible with Java SimpleDateFormat and/or a `%i` which represents an integer counter. The integer counter is used in conjunction of the backup threshold, and will increment to create new files when the current file size will reach the threshold. Since 6.0.6, the `ebx.log4j.appender.ebxFile.backup.Threshold` property defines the maximum size (in megabytes) of backup files for daily rollover and not the maximum number of backup files.

## 6.1.3 Known issues

### User Interface

- CP-24388 Tiles views cannot be used as advanced selector of a combo box.

  If a tile view is specified as the advanced selector of a combo box, the "select" button is not displayed in the cards of the tile view.

## 6.1.3 Closed issues

### Container Edition

- CP-26402 An `IllegalArgumentException` occurs when mail is configured and timeout environment variables are not defined.

  If mail is configured, the environment variables are required, but the documentation states they are optional: `-e "EBX_SMTP_CONNECTION_TIMEOUT=600000" -e "EBX_SMTP_TIMEOUT=600000" -e "EBX_SMTP_WRITE_TIMEOUT=600000"` is required.

### Core Engine

- CP-21651 Tokens should be preserved before stemming while indexing stemmed languages.

  For most languages, the value is stemmed before being indexed. The stemming modifies the value, and may truncate the last letters to index the 'root' of a word. This can lead to unexpected results when using the wildcard operator.

- CP-25883 Compilation errors can occur in data models after migrating an EBX 5 repository with replication unit declaration.

- CP-25997 The EBX® scheduler contains validation errors in `validation.log`.

  The following validation error messages display: `StgDeleteTemporaryFoldersTaskOnServer not found` and `Field 'User' is mandatory`.

- CP-26040 An exception is thrown when searching on the same table with two distinct search templates.

- CP-26057 A `ClassCastException` occurs on a Request with an is-empty/is-not-empty predicate.

- CP-26064 A `CtePlanCleaner` exception occurs during a TIBCO EBX Match and Merge Add-on SQL query.

- CP-26078 The last index searcher is not alway refreshed if records are created and removed in the same transaction.

- CP-26112 The `ValueFunction` resolution is not thread safe.

- CP-26315 A `ClassCastException` occurs while using `Adaptation.lookupAdaptationByName()` with a history record.

  When calling `Adaptation.lookupAdaptationByName()` on an history record, a `java.lang.ClassCastException: class com.orchestranetworks.cce.rm.XtbTableImpl` cannot be cast to class `com.orchestranetworks.cce.cache.table.CfTableCache` error occurs.

- CP-26427 An EBX instance can initialize indexes even if the folder containing the indexes is locked by another instance.

- CP-26452 Messages sent during EBX shutdown are not present in the log files.

  The log4j servlet is stopped very early in the EBX shutdown thread which results in a loss of all log messages sent during the shutdown.

- CP-26482 It is possible that blocks of records are committed with a transaction id higher than the table's last transaction.

### Data Modeling

- CP-26373 The last update time displayed in a dataset's persistence information is not correct.

### Data Services

- CP-26001 The OpenAPI UI is not found on the server.

  When HTTPS protocol and/or reverse proxy mode are used, the UI for OpenAPI is not found.

- CP-26010 The REST API's built-in `select` operation can return the label or description in a different locale when the `ACCEPT-LANGUAGE` request header is undefined.

- CP-26042 The OpenAPI UI is not found on the server.

  When HTTPS protocol and/or reverse proxy mode are used, the UI for OpenAPI is not found.

- CP-26169 A path added through `UriBuilder` is not automatically encoded.

- CP-26170 The `includeLabel` parameter's default value in `RequestDataBeanParams` is not set properly.

  The bean is set with a boolean value instead of one of its allowed values: NO, YES, ALL.

- CP-26171 Parameters for `ResponseContext` in `ContentHolderForJsonOutputImpl` were inverted.

- CP-26181 SOAP invocations in Postman are aborted.

  When importing an EBX WSDL in Postman, a collection is created and any CRUD operations return a SOAP Fault with the following message: `java.lang.IllegalArgumentException`: Message does not contain data.

### Data Validation

- CP-26344 When submitting a form with errors, validation messages are not displayed in the same order as the fields in the data model.

  The order of the validation messages in the header is random after submitting the form with errors. The order must follow the one of the fields defined in the data model.

### Data Workflows

- CP-2385 [32175] Searching for records with no error in the 'Active workflows' table does not return the correct result.

- CP-26117 The Workflow launchers view gets stuck in an infinite load loop.

### Hierarchies

- CP-26096 The 'Open link record' service is missing on the record view when applying a hierarchy view that has an incomplete ternary join link dimension.

  When users apply a hierarchy view that has an incomplete ternary join link dimension, and open a record, the 'Open link record' service is missing.

- CP-26109 A fatal error occurs after modifying a record to be a recursive node on the hierarchy view.

  When users apply a hierarchy view without enabling Detect cycle mode and modify a record to be a recursive node, a fatal error occurs.

- CP-26110 A fatal error occurs when modifying a hierarchy view with a space character in the label.

- CP-26140 A hierarchy view with a multi-value date dimension cannot be created.

  The multi-valued date is not displayed under the dimension on the hierarchy view creation page.

### Infrastructure

- CP-26389 A `BootException` occurs when SMTP is configured in SSL using Java 17.

  The full exception is as follows: `com.onwbp.boot.BootException: Unable to find provider class: com.sun.net.ssl.internal.ssl.Provider`.

- CP-26495 The Log4j2 SMTP appender is not being sent.

  This results in emails configured to be sent when there is an error in the Kernel, or Workflow log files to not be sent.

### Staging

- CP-26557 The advanced option does not work properly when importing staging archives on startup.

### User Interface

- CP-21142 Display is inconsistent between the advanced search and creation filter view for some operators.

- CP-23767 The criterion with the 'present in' operator is displayed incorrectly when opening the saved filter in the advanced search.

  When users open a saved filter under the 'Load' pane which contains the 'present in' operator, this criterion is displayed incorrectly.

- CP-25659 Dataset contents are not accessible when a dataset has a fatal error.

  When this occurs, the contents are not accessible in a perspective and the perspective loads continuously. In this situation, the user assigned to the perspective receives no information about the problem.

- CP-26089 The `WizardType` enumeration cannot be accessed by EBX Add-ons..

- CP-26114 A page opens and displays "Access denied" when closing a workflow launched using a workflow launcher.

- CP-26209 When a saved filter is applied to a field using the 'is null' and 'equals' operators, it doesn't load correctly.

- CP-26291 The password field is not cleared in the default login page after an authentication error.

- CP-26423 In custom forms, the validation report is not updated when submitting the form.

  When saving and re-displaying a record using a custom form, the messages on the fields might not be up-to-date.

### Users & Permissions

- CP-25331 An error occurs when creating a record from an association element that has the related element set to hidden through permissions.

- CP-26075 The 'Export CSV' option for active workflows is not visible for users without administrative privileges.

- CP-26141 The log is not displayed in the `audit.log` file when accessing a dataset's 'Permission' table.

## 6.1.2 Closed issues

### Core Engine

- CP-19208 The `ebx.log4j.appender.ebxFile.backup.Threshold` property documentation should be updated.

  The documentation specifies that `ebx.log4j.appender.ebxFile.backup.Threshold` defines the number of backup files kept. However, the property actually sets the size limit for log files.

- CP-21633 The behavior for a linked field targeting an enumeration node should be updated.

  When a linked field targets an enumeration node, the expected behavior is that it is both displayed and searchable just like in the targeted table. Currently, the raw value is used instead of the enumeration label.

- CP-22439 `SQLChecker` should provide more context about errors.

  To facilitate debugging in support cases, the stack trace should be added to the compilation report.

- CP-23515 `UIHttpManagerComponent` returns an incorrect result if there is a line break in the predicate.

- CP-25570 Child table exclusions are ignored for cluster centers.

- CP-25588 An error occurs when accessing the history of a table that defines a foreign key to a deleted dataset.

- CP-25697 Search with the Name strategy and the Japanese language should be improved.

  In some cases appropriate results are not returned for Kanji and Hiragana.

- CP-25805 The REST built-in select returns a 200 status code when using an incorrect filter function name.

- CP-25874 There is a performance issue when searching on filtered recursive hierarchy.

- CP-25910 A query with two nested subqueries where the innermost references the outermost table returns the wrong result or fails.

- CP-25935 Query needs to apply the Session's programmatic access rules.

- CP-25943 Under certain conditions, the committed state of an index can be lost.

- CP-25945 On rollback, local transaction context is not rolled back if nothing has been modified in the repository.

- CP-25981 A rollback can close the index reader for the previously committed transaction.

- CP-26036 Indexation fails when the Name search strategy is used on long string values.

- CP-26061 The shared state of the table revision and index are inconsistent.

- CP-26076 The last index searcher is not alway refreshed if records are created and removed in the same transaction.

### Data Services

- CP-25741 The REST built-in select returns an HTTP status code of 400 with the message 'The predicate has no paths'.

- CP-25968 A 500 HTTP status code is returned when the format is incorrect.

  When users input the incorrect format for a field in the JSON body, the HTTP code 500 is returned.

### Data Workflows

- CP-25782 The progress view does not show the correct state.

  The progress view graph does not show the correct state of a workflow which has a sub-workflow invocation step.

- CP-25996 A `NullPointerException` occurs when trying to terminate a workflow.

### Documentation

- CP-26063 The download link included in the documentation for the `ibmjsse.jar` library is incorrect.

### Hierarchies

- CP-23280 Expanding a recursive hierarchy with over 100 levels fails.

- CP-24211 An error message displays when expanding a foreign key unset node on a ragged hierarchy.

- CP-24958 No hierarchy level filter is displayed if the level's table is in another dataset.

### Team Up

- CP-25808 Team Up combo boxes for profiles are missing the built-in Administrator role.

### User Interface

- CP-25593 Hidden tables do not display when trying to view them from an associated dataset.

- CP-25795 A blank page displays when redirecting to another user service and an exit policy is defined.

- CP-25832 In hierarchies, the 'Find' action does not scroll to the highlighted item.

- CP-25834 Users can add a profile multiple times to the 'Profiles authorized to access history' field when a record permission rule is defined for the table.

- CP-25836 Elements are not aligned correctly on a dataset's 'Team Up features configuration' page.

- CP-25841 Text in the avatar is not centered correctly.

- CP-25885 Permission is denied when quickly switching between tables.

  This issue occurs when a role is used and not when the user is a built-in administrator.

- CP-25953 Infinite redirection occurs when defining a custom login URL.

- CP-26041 The 'Share with' field is displayed incorrrectly on the view creation page when users go back to edit documentation.

### Users & Permissions

- CP-24692 An error occurs after a user with read-only access saves a value on the 'Table default confidentiality' group of the 'Extensions' tab.

- CP-26077 A memory issue occurs when data model import has record permissions configured.

## 6.1.1 Closed issues

### Cloud

- CP-23527 The node label does not display correctly in the hierarchy view of the tables under Data workflows.

### Container Edition

- CP-25175 The TIBCO EBX® Container Edition installer does not always build an AMD64 platform image.

  When running the installer on the ARM64 platform, the image produced is ARM64. The ZIP packaging must not include the AMD64 suffix.

### Core Engine

- CP-16736 Fix search strategies to disable sort on irrelevant columns.

  It is not useful to provide sorting on columns, such as "Progress view", "Actions", or description values.

- CP-16856 Inter-database migration might fail when copying binary data.

- CP-18406 Search results are not highlighted correctly when searching on multi-value fields under a group.

- CP-18408 Keywords are not highlighted correctly on targeted searches.

- CP-18435 A `StackOverflowError` is thrown while publishing a schema with mutual recursive primary keys.

- CP-18487 The `Result.getHighlights()` API returns an empty `RecordHighlights` if the field is under a complex group.

- CP-18524 Search results are not highlighted correctly when they meet the conditions specified in the Key field.

- CP-19033 It should not be possible to delete records in the "Deleted dataspaces/snapshots" administration table.

  If this is done, it is no longer possible to delete the history of a deleted dataspace from the GUI.

- CP-22630 Highlighting a value that contains a tag throws an exception.

- CP-23388 The case-insensitive 'contains-whole-word' filter is not working properly.

  An incorrect result is returned when applying a filtered view with the "contains whole word" filter when the word contains special characters.

- CP-23400 The results are not highlighted when searching a keyword ending with the "%" character on an enumeration field.

- CP-23928 The error message that displays when importing an archive is unclear.

- CP-25314 `LinkedField` properties do not display for non-administrative users.

- CP-25315 An error occurs when converting a field type from Date to DateTime.

- CP-25336 An error occurs when evaluating a computation rule containing a recursive formula.

- CP-25383 The last record of a `CnyCanopyProducerCallable` is not processed.

- CP-25420 A `NullPointerException` occurs when creating a child dataspace.

- CP-25460 A deadlock occurs at startup due to the `ServiceKey` class initialization.

- CP-25505 The `ProcedureContext.setTriggerActivation(false)` does not work as expected.

  When the procedure context is used to create another record in the same table (Child for a parent), the `setTriggerActivation(false)` method does not disable the trigger and the `handleBeforeCreate` method gets called for the child record.

- CP-25640 The buffer size management is not robust enough.

  It should have improved resizing methods, prevent negative size allocation, and add clear exceptions on borderline cases.

- CP-25641 `com.onwbp.adaptation.ReadContext.get(SchemaNode)` must check its input.

  The validity of the node should be checked upstream and an exception should be raised if required.

- CP-25696 Searching on Hiragana and Kanji character sets with the NGram search strategy doesn't return the expected records.

- CP-25762 A `ClassCastException` is thrown on an XPath filter with parameters.

### Data Modeling

- CP-21989 A blank workspace is displayed when users access a validation rule that has a text search operator.

  When users access a validation rule that has a text search operator or run the 'Modify criteria' service on this rule, a blank workspace is shown.

### Data Services

- CP-22805 A `StackOverflow` is thrown on large predicate expressions used for record selection.

- CP-25418 When using the REST API, the built-in insert operation does not complete successfully if a value function field is present.

- CP-25797 The REST API's built-in insert operation returns a 400 Bad request code if the body contains over 1000 records.

### Data Services -REST Toolkit

- CP-25609 The `swagger-ui.css` file is not found.

  When accessing the REST documentation, the Swagger UI is unusable.

### Data Validation

- CP-25650 A `PathAccessException` is thrown from `TableRefFilter` when `ValueContext.getValue` is called with an absolute path.

### Documentation

- CP-25491 The documentation related to deleting an add-on module is incomplete.

  Steps are missing in the Deleting an add-on module section of the Deploying and registering TIBCO EBX® add-ons chapter.

### Hierarchies

- CP-17172 Nodes are missing when applying a hierarchy view that has an incomplete ternary join link dimension.

- CP-21464 The 'Labels' field is displayed incorrectly on the hierarchy creation screen.

  On the Hierarchy creation screen, only the Target table is displayed in the 'Labels' field.

- CP-21607 The incorrect label displays for nodes in the hierarchy view of the 'Activations' table.

- CP-21751 [All browsers] The record is still selected after moving a record in a hierarchy view.

- CP-23604 There is a performance issue on pruned recursive hierarchies when a level predicate is set.

- CP-24795 A request performance issue occurs when a hierarchy is in pruned mode.

- CP-24964 The Java enumeration label is not displayed when using it as a dimension in the hierarchy view.

- CP-25417 There is a performance issue on recursive hierarchies for the Find action.

- CP-25456 A performance issue occurs due to dimension introspection while displaying a hierarchy.

### Staging

- CP-25921 In the staging domain's 'Administration' category, there are two options not displayed in alphabetical order.

### User Interface

- CP-1371 [36718] The 'Find in Hierarchy' service does not work properly if a members cycle exists.

- CP-17443 An error message is missing under the 'Main' tab after defining a custom layout.

- CP-24144 The hierarchy view in the child dataset is displayed inconsistently when applying a quick search.

- CP-25262 A blank page displays when redirecting to another user service.

- CP-25589 The "User logged out" page is shown after a workflow finishes or is cancelled in the user service.

  This occurs after upgrading from 5.9 to 6.0.13, or to 6.1.0.

- CP-25703 There is an error on the custom form preview when displaying a field with an enumeration.

  This occurs when the following properties are displayed: a static enumeration set or enumeration values with undefined labels.

## 6.1.0 Closed issues

### Container Edition

- CP-24408 A stopped EBX Container Edition container may fail when started again.

### Core engine

- CP-18256 Sorting a table with large volume on a foreign key is very long.

  Sorting a table with a large volume of data takes longer than expected.

- CP-18919 EBX logs are not deleted when the file size is zero.

- CP-20968 The loading screen displays for a long time when applying the 'Apply last modifications' service.

  This occurs when the service is run on a child dataset that contains 100,000 records.

- CP-21133 The Jaro-Winkler strategy should not accept parameters.

- CP-23002 A `NullPointerException` occurs when applying a Jaro-Winkler search for Assigned search strategies.

  The exception happens when executing a global search and the Assigned search strategies for a field is set to `Default search template` and uses the Jaro-Winkler strategy.

- CP-23572 The "present in" operator is not available on an enumeration field of the HTML data type.

- CP-24178 `AdaptationHome.getTerminationDate()` does not return null on open dataspaces.

- CP-24189 Clustering throws errors when relation matching and cluster field in complex data type.

  Clustering throws errors when using relationships in matching and the cluster field is in a complex data type.

- CP-24199 Datasets cannot be accessed during data model compilation.

- CP-24257 A `NullPointerException` occurs when levels for logging categories are defined by a variable.

- CP-24290 Error importing a perspective archive when a perspective has been duplicated.

  An error occurs when importing a an archive contain a perspective that was duplicated.

- CP-24333 The add-on license threads can block the server shutdown.

- CP-24345 NullPointerException when exporting a record, table or dataset created in severe error.

  A `NullPointerException` occurs when exporting a record, table, or dataset that was created in a state of severe error.

- CP-24346 ClassCastException when calling SchemaFacetTableRef.getLinkedRecords() in a Widget

  A `ClassCastException` occurs when calling `SchemaFacetTableRef.getLinkedRecords()` in a widget.

- CP-24379 Repository purge operation fails at validation reports cleaning step.

  A repository purge operation fails at the validation report cleaning step.

- CP-24405 `UIDropDownList` on a foreign key does not display elements.

- CP-24449 Migration to EBX 6 fails if the metadata references tables that don't actually exists.

  Migration to EBX 6 fails if the metadata references tables that don't actually exist.

- CP-24579 An error occurs when rebuilding indexes in a child dataspace.

- CP-24627 Default value is set on existing records in history tables when adding a new column

  When adding a new column in a historized table its default value is added to the existing records in the history.

- CP-24634 Errors prevent access of table contents.

  This includes errors with messages like the following: `java.lang.IllegalStateException: CfOccurrence with ref (...,...) could not be fetched from table zza7[<tableName> of content type=VALUES in dataset <datasetName> in dataspace DataspaceName]: record have been deleted a transaction`.

- CP-24657 "java.lang.IllegalStateException: This index is read-only" error while updating a record.

  An `IllegalStateException` error can occur when updating a record.

- CP-24706 Editing Greatest Value set field to a greater value doesn't affect Auto-increment when creating a new record.

- CP-24733 Sub queries are not correctly identified when preparing query parameters.

- CP-24763 Missing `com.orchestranetworks.service.directory.EncryptPassword` class.

  The `com.orchestranetworks.service.directory.EncryptPassword` class mentioned in the main configuration file documentation is missing in the product package.

- CP-24895 Values from uncommitted transactions can corrupt table size estimation.

- CP-24917 An error occurs when applying an advanced search on the following table: <emphasis>Administration > Database mapping dataset > Tables</emphasis>.

- CP-24944 When extending `SchemaDocumentation`, displayed links are not clickable.

- CP-24997 There is a missing search strategy for the default template.

  An exception can be thrown when compiling a data model that contains a foreign key node with multiple search strategies defined.

- CP-24999 A `LockObtainFailedException: Lock held by this virtual machine` error occurs.

  If something goes wrong while rebuilding an index, the `IndexWriter` used to perform the rebuild is not properly closed and the slot remains locked preventing it from being reused afterwards.

- CP-25032 Log failure can occur during index refresh at commit.

  This can disrupt synchronization between the cached index and the table content after commit.

- CP-25233 A primary key violation occurs when replicating records with lists in a mass update.

- CP-25270 A `LxiDuplicateKeyException` occurs when creating a record.

- CP-25405 When the `XPxParametrizedLiteral` value is in an internal format, it can cause a `ClassCastException` to occur inside of `toXPathExpression`.

### Data modeling

- CP-21255 SqlChecker error with data models if they have circular dependencies, including one data model in error

- CP-22225 Deprecated properties of table reference cannot be used

  The data model does not compile, when declaring a table reference using the deprecated properties: `displayKey` or `labelPaths`.

### Data services

- CP-2130 [32243] REST built-in select does not return data from table that has multiple-occurrences group.

  A REST request does not return data from the inner group when a multiple-occurrence group is nested within a multiple-occurrence group.

- CP-17619 Optional parameters in SOAP header do not work using default namespace without prefix.

  When calling a SOAP operation, adding additional parameters in the header does not work when using the default namespace without prefix.

- CP-20709 ContentHolderForInput automatically removes object attributes named "content".

  When a `ContentHolder` is used for data input, it automatically removes object attributes named "content" even if these attributes are parts of the data model.

- CP-21814 REST count operation on association field with `:count` syntax returns 404.

- CP-21830 The documentation does not mention the limitation for procedure context with the REST built-in JSON compact format

- CP-24606 Lineage WSDL configuration does not considered UI selected context.

  The lineage WSDL configuration does take the selected UI context into account.

- CP-24653 The REST built-in transient operation should ignore association fields and value function nodes.

- CP-24664 SOAP body validation error for select operation with some activated parameters.

  When a select operation enables `exportCredentials` with a value of `true`, the XML body response is invalid.

- CP-24673 NPE when branch does not exists using SOAP operation.

  When using a SOAP operation, a `NullPointerException` occurs if the defined branch does not exist.

- CP-24722 Association field must be ignored using REST builtin import/update operations.

  When using the REST built-in import/update operations, ignore association fields.

- CP-24962 A `PathAccessException` occurs when importing XML.

  The exception causes the import to fail when a record contains an empty group that comes directly after a list of groups.

- CP-25013 A REST built-in selector field must not be present for a read-only field.

### Data validation

- CP-7461 [11075] Cannot enter a date with format like "dd/MMM/yyyy"

  It is not possible to enter a date if the formatting policy specifies a 3-character format for the month.

- CP-18807 In a user service, an exception may be thrown on page redisplay.

  The User Service API can be used to customize the form for creating a record. If a record contains a foreign key, an unexpected exception may be thrown, when the user service is redisplayed.

- CP-21584 In a `UserService`, the record form submission is not blocked when an error message is added in `ConstraintOnTableWithRecordLevelCheck#checkRecord`.

- CP-23502 The record validation report is computed for each tab to be displayed in a record form

  The header of a record's form displays the up-to-date validation report of the related record. Each tab of the form has its own header. As a consequence the validation report is computed as many times as the number of tabs to be displayed in the form. This can lead to performance issues if the table contains many constraints.

- CP-24171 `CalciteException` Table not found when validating a table with a table reference filter using a table reference node

  An exception is thrown when a table reference filter uses a node that is a table reference to a table located in another dataset.

- CP-24192 `NullPointerException` in code generated by calcite for a table reference filter validation

  A `NullPointerException` occurs in code generated by Calcite for a table reference filter validation.

- CP-24336 xs:pattern facet is not applied on the XML string representation of dates.

  The xs:pattern facet checks the string representation of the Java Date object instead of the XML string representation.

- CP-24483 `NullPointerException` while updating the persisted validation report

  A `NullPointerException` occurs while updating the persisted validation report.

- CP-24526 Slow performance when accessing the persisted validation report.

  Performance is impacted when accessing the persisted validation report.

- CP-24777 An `IllegalStateException` occurs when accessing a validation dataspace after an aborted deletion of a functional dataset.

- CP-24904 Validation of a table reference fails with a `ClassCastException`.

  This is caused when `PvrActionForTableRef` generates a query plan with the wrong `FK_AS_STRING` parameters

- CP-24923 A `ClassCastException` occurs during the validation of a contextual table reference filter.

- CP-24933 A contextual table reference filter with multi-valued fields returns incorrect results.

- CP-25019 The result of `ValidationReportItemSubjectForTable.getRecords()` contains `null` values.

### Data views - hierarchies

- CP-16830 Hierarchy cycle detection does not work on a recursive ternary dependency.

- CP-17169 Cannot execute the specific property "prune recursive orphan leaves".

  The option to prune orphan leaves cannot be executed if there are recursive members without a parent.

- CP-17204 [All browsers] The node level icons and their text are not aligned in the hierarchy view creation screen.

  The node level icons and text are not aligned in the hierarchy view creation screen.

- CP-18439 Search not found on a multi links hierarchy.

  Search results are not found on a multi-link hierarchy.

- CP-20401 Some child nodes are duplicated in a hierarchy view.

  When a hierarchy view is applied, some child node display twice.

- CP-20448 Level filter on enumerable does not work for hierarchy.

  An incorrect result is shown when users create a hierarchy view and set a filter.

- CP-21838 The hierarchy 'expand all' is not anymore limited to 2000 displayed members.

  Hierarchy expansion is no longer limited to displaying 2000 members.

- CP-21840 Find on a ternary recursive hierarchy fails.

  The Find tool on a ternary recursive dimension hierarchy does not work properly.

- CP-21882 The 'Last' button is activated on the last page of a hierarchy view based on the Date/enumeration field.

  After navigating to the last page in a hierarchy that is based on a field with a data type of date or enumeration, the "move to last" navigation button is still active.

- CP-21892 member.isLooping() may lead to stackOverflow mostly in workflow.

  Use of `member.isLooping()` might lead to a `StackOverflowError`, mostly in workflows.

- CP-21900 The child nodes of levels are not displayed fully when creating a hierarchy view.

  When users create and apply a hierarchy view that has several levels, its child nodes are not displayed fully.

- CP-22403 [All browsers] Number of selected records is displayed incorrectly on toolbar when users select/ unselect recursive record on hierarchy view multiple times.

  The number of selected records does not display correctly in a hierarch view toolbar when a recursive record is selected and deselected multiple times.

- CP-22429 Nodes of a hierarchy view on a ternary with an ordering field model are switched after enabling pruned mode.

  The order of nodes is switched after enabling pruned mode on a ternary table hierarchy view.

- CP-22483 In a hierarchical view, some records are displayed although they should be filtered out.

  Some records display in a hierarchical view when they should be filtered out.

- CP-22881 Hierarchy branch selection does not work on ragged hierarchy.

  Hierarchy branch selection does not work on a ragged hierarchy.

- CP-23010 An unexpected node is displayed on a hierarchy view.

  An unexpected node displays in hierarchy views and an error occurs if it is selected.

- CP-24281 Reimplement the 'prune recursive orphan leaves' option.

  The <emphasis role="bold">Remove recursive root leaves</emphasis> option must be reimplemented.

- CP-24443 'Enable/Disable pruned mode' is not properly set.

  The pruned mode options are not set properly.

- CP-24558 Pagination does not work on an enumerable field.

- CP-24646 Hidden records must not be used for hierarchy display.

- CP-24675 The cycle member remains, in a ternary dependency hierarchy.

  In a ternary dependency hierarchy containing a cycle member, the cycle member remains alone after a search; it is not in a valid branch.

- CP-24746 Hierarchy REST API orphan members are not properly managed.

  In the REST API, a hierarchy's orphan members are not managed properly.

### Data workflows

- CP-19283 Documentation in activation record is not updated when updating the label of a Launcher.

  A launcher activation label can be inherited from the label of its launcher or customized. If this label is inherited, it is not updated when the label of the launcher is modified and users might not realize this. No information or hint displays to inform users that they must save again to apply new values.

- CP-22631 Fix "remove" icon in workflow diagram editor.

  The <emphasis role="bold">Remove</emphasis> icon in the workflow diagram editor does not display correctly.

- CP-24148 No way to clear a profile field in a workflow step

  There is no way to clear a profile field in a workflow step.

- CP-24578 Workfow complex objects should be expanded by default.

- CP-24724 When dragging a link to another step and cancelling the confirmation, the link end spot changes.

- CP-24769 The documentation for the Xpath parameter of the update a record field value script task is not correct.

- CP-25239 Data context mapping in the model configuration should be open by default.

### Dataspaces & History

- CP-24934 A `NullPointerException` occurs during the dataspace compare action.

### Documentation

- CP-18443 Fix java sample in security documentation.

  The Java sample in the documentation on security best practices needs to be updated.

- CP-25026 Incorrect Java EE platform for WebSphere AS 8.5 and 9.0 support

  The Java EE platform for WebSphere Application Server 8.5 and 9.0 support is incorrect.

- CP-25092 The double quote usage for the Windows path in the Tomcat installation note is incorrect.

### Infrastructure

- CP-24586 All `handleRepositoryStartup` method should complete before opening access to EBX®.

### Queries

- CP-24291 Field trimmer removes all fields from the input to a LogicalAggregate with COUNT().

  A `ClassCastException` occurs during the field trimming step.

- CP-24319 Result of RequestResult.getSize() might be incorrect and vary from call to call.

  The `RequestResult.getSize()` method might return an incorrect result and vary from call to call.

- CP-24551 Performance problem when setting request log level to DEBUG because of a slow RelNode to SQL translation.

  A performance issue occurs when setting the request log level to DEBUG.

- CP-24608 Although set as non confidential, hidden nodes cannot be used in a foreign key filter when under a complex node.

- CP-24631 Sort by resource field (and pagination) when the Lucene index is not available throws an exception.

- CP-24677 An SQL query throws a `CannotPlanException` due to `HepRelVertex` in the plan after the Hep phase.

### Team Up

- CP-24911 An error occurs when applying search with Team up fields on hierarchy view.

### User interface

- CP-2041 [33485] Fields are unexpectly filled automatically while creating a record through an association.

  When creating a record through an association, fields in the creation form should be pre-filled, but not read-only.

- CP-17509 An error occurs when using a web component URL that selects a perspective and a branch.

- CP-19856 The page for selecting backed-up user does not display in some cases

  A user selection page backup does not display when defining a custom login.

- CP-20087 [IE11] An alignment problem occurs between the text of button and its arrow.

  On the <emphasis role="bold">Import</emphasis> screen and <emphasis role="bold">Task Creation<emphasis> modal, the button text and arrow do not align horizontally.

- CP-20157 [All browsers] The toolbar overlaps the number of filters applied when searching on a table under data workflow.

  When users take a task and apply an advanced search, the toolbar overlaps the number of filters applied.

- CP-21620 [WCAG 2.0 - 4.1.2.][Accessibility] The 'Remove' and 'Checkbox' buttons should provide additional information when using the accessibility checker tools (NVDA).

  Additional information should include its role, state, and value related information such as the element removed and checked, and it's corresponding value.

- CP-21684 The tables under a group still display when the group is set to hidden.

- CP-21753 [IE11] An alignment problem occurs in the Wait task creation screen of Workflow models.

  In the workflow model's <emphasis role="bold">Wait task</emphasis> creation screen, the "x" icon for the <emphasis role="bold">Hidden in progress view</emphasis> fields are not vertically aligned with the radio buttons <emphasis>Yes</emphasis> and <emphasis>No</emphasis>.

- CP-22032 A corresponding dataset is not selected when selecting the 'Data' column on the 'Export' dataspace screen.

  The dataset selection behavior does not work correctly on the <emphasis role="bold">Export</emphasis> dataspace screen.

- CP-22041 The URL computing documentation must mention the data lineage configuration when using a reverse proxy.

  When using a reverse proxy (particularly in https), it is necessary to configure the data lineage property. This should be mentioned in the URL computing configuration.

- CP-22275 Default values are lost if a custom widget is defined.

  In certain circumstances default values are lost when a custom widget is defined.

- CP-22295 [All browsers] The scrollbar is not displayed on 'Refresh all data models'.

  When invoking 'Refresh all data models', the scrollbar is not displayed in the pop-up.

- CP-22703 Increase advanced search pane height produces a bad display.

  Display issues occur in the hierarchical and tile views when re-sizing the advanced search pane.

- CP-22970 The default label is missing in the Workflow launcher records.

- CP-23788 [All browsers] When applying an advanced search with the "present in" operator, the value of the drop-down list field is duplicated sometimes.

  The value of the drop-down list field is duplicated when applying an advanced search with the "present in" operator.

- CP-24131 The highlighted bar is hidden in Data Model and Workflow sections.

- CP-24668 A confirmation message is not displayed for a user service declared on a dataset in a perspective.

- CP-24771 The bottom horizontal scroll bar doesn't display when loading tables in the UI.

- CP-25000 Errors are not clickable.

- CP-25166 When the label of a record is empty, the breadcrumb and its documentation pane should display a placeholder.

### Users & Permissions

- CP-21226 Exception when filtering on linked field if the FK is hidden.

  An exception is thrown when filtering on a linked field if the foreign key is hidden.

- CP-24489 The dropdown to set the owner of perspectives is only showing profiles with the built-in administrator role.

Release Notes