Release Notes for Oracle Health Insurance Product Definition Release 4.24.1.0.0

This document contains the release notes for Oracle Health Insurance Product Definition Release 4.24.1.0.0.

Version compatibility: Oracle Health Insurance Product Definition Release 4.24.1.x is only compatible with other Oracle Health Insurance applications release version 4.24.1.x unless explicitly stated otherwise.
In accordance with the OHI error correction policy (Document 1494031.1 on My Oracle Support), error correction support will be provided for this release and the previous two releases.

Enhancements

ID Summary Patch

AUT-3282

Enhance Monitoring/Liveliness Check in OHI applications

OHI applications expose a /health endpoint that should report the healthiness of the application on that node. The implementation originally was very limited: it returned a static response. This has been changed in 4.23.1: if memory is lower, /health returns 429. With this release we are extending the /health endpoint to:

  • /health/ready which returns UP if the node is able to process requests, DOWN otherwise. A number of readiness checks have been implemented including memory, database connectivity and cpu utilisation for which the threshold is defined by a new optional system property ohi.system.cpu.threshold.high

  • /health/live which returns UP if the node is still alive, DOWN otherwise. A liveliness check has been implemented using the Coherence Health Check API.

AUT-3342

Automatic detection of stuck activities

As part of this enhancement, when an activity is in queue, the Activities IP returns status QD (Queued).

  • Added new status QD to the domain "ACTIVITY STATUS".

  • Added a new column process_queued_datetime to the table "act_activities".

Stuck Activities:

Added a new functionality to detect and send notification for the activities that get stuck. This functionality is enabled by default and can be disabled by setting ohi.activityprocessing.heartbeat.frequency property value to '0'.

The following system properties have been added to set up heartbeat and cleanup service time intervals for activities:

  • ohi.activityprocessing.cleanup.frequency (default value is 600 seconds)

  • ohi.activityprocessing.heartbeat.frequency (default value is 300 seconds)

When an activity is detected as stuck, that is when the root activity’s status changes from InProcess (IP) to TechnicalError (TE) by the cleanup service, it is re-submitted and the maximum number of re-submissions can be configured by the following property:

  • ohi.activityprocessing.max.resubmit.attempt.count (default value is 3)

If the stuck activity exceeds max.resubmit.attempt.count, it is sent as a notification to any of the following configured endpoints:

  • ohi.activityprocessing.notification.endpoint.<0>, where 0 is activity type.

  • ohi.activityprocessing.notification.endpoint

CPN-3037

Automatically gather SQL monitor report for REST API call

In many scenarios, evaluating the SQL execution plan for REST API calls is crucial to determine the efficiency of their access paths and to gauge their potential resource cost. The current manual process of enabling SQL logging, identifying relevant SQL statements within the logs, and retrieving their execution plans/SQL monitor plan is time consuming for the DBA/AMS team (in SaaS deployments).

This enhancement aims to automate the creation and retrieval of SQL monitor reports for Query API calls, eliminating the need for manual intervention and streamlining the process.

As part of this feature, a new header parameter enablesqlmonitorreport is introduced in Query API. This parameter is intended for use only in Non-Production environments and can have the following values:

  • all: Monitors all SQL queries generated in the Query API

  • rootResourceOnly: Monitors only the SQL query generated on the root resource

  • Not specified: If this header is not included, no SQL monitor report is generated for any SQL query, maintaining the current behavior

CPN-3079

Auto purge feature

As data volume in Oracle Health Insurance applications continue to grow with the processing of more data, it becomes essential to manage the database efficiently. Oracle Health Insurance applications include various PL/SQL packages for purging processes. However, these processes currently require manual intervention by customer DBAs/AMS team to configure and schedule purge jobs during planned maintenance windows.

To streamline this process and automate database maintenance, we are introducing an auto-purge job feature. This feature eliminates the need for manual scheduling of various purge jobs and ensures that data is regularly purged according to predefined criteria.

As part of this enhancement, we have a introduced a new PL/SQL package ohi_auto_purge_pkg.purge_all and modified the following functionalities :

  1. The structure of the following procedures has been revised, introducing an optional input parameter p_commit_size to enhance flexibility and control over the purging process

    • cla_data_purge_pkg.purge_data

    • ohi_repl_purge_pkg.purge_data

  2. Log message purging is now integrated into the auto-purge feature, and as a result, the following HTTP API resources have been made read-only.

    • logeventretentionperiods API

    • loglevelretentionperiods API

  3. Purging of PHI logs is now integrated into the auto-purge feature. So, the property ohi.logging.phi.min.retentionperiod is removed

  4. The process now integrates purging of all datafile sets into the auto-purge system, eliminating the need for separate scheduled scavenging and purging of incident files. So, the property ohi.incident.datafileset.retentionperiod is removed

Oracle recommends frequent and automatic purging of technical data and operational data using the auto-purge job feature. For example, customer DBA/AMS team (in SaaS) can set up auto purge through the use of a DBMS_SCHEDULER job. See the user guide for more details and for a sample SQL script that creates auto purge job using DBMS_SCHEDULER.create_job PL/SQL procedure.

Note that the initial purge job might take longer if the volume of the data is very high (for example, if the system has two years of data to purge and if the retention days for technical data are set to 60 days). So, Oracle recommends the DBA/AMS team to set a higher retention period (for example, one year and 11 months) for the initial run (so only 30 days of data is purged in the very first run). The retention days can be reduced gradually until the historical data is purged.

CPN-3100

Enhancing Environment Name Setup in Oracle Health Insurance Applications

We are improving how the environment name is set in Oracle Health Insurance applications using the (existing) system property ohi.environment.identifier which can be set by the DBA for on-prem deployments or by AMS team in case of SaaS deployment. This change will impact the following areas:

  • Property Management: Property entity includes a name, value, and environment attribute. Previously, the environment attribute matched the application’s database name. Going forward, it will reflect the value set in the set for the system property ohi.environment.identifier.

  • Source Environment Tracking: Configuration items selected for migration include eight auditing fields. Previously, the two source environment fields (createdByEnvironment and lastUpdatedByEnvironment) stored the database SID. These fields will now reflect the value set in the system property ohi.environment.identifier. Note that in the UI, the environment name in the configuration migration import page will show the database SID for the old imports, but going forward (for new imports), the value set in the system property ohi.environment.identifier will be shown.

  • Data Set Operations Integration Point: When importing from an environment, the "sourceEnvironment" attribute is required. Previously, this attribute contained the database SID of the source environment. Now, it will reflect the value set in the system property ohi.environment.identifier from the source system.

These changes remove the dependency on the database SID and eliminate the need to access the DBMS to retrieve the environment name.

Note: The value of the ohi.environment.identifier system property should not exceed 158 characters, as specified in the property description.

CPN-3120

Dynamic chunk size for extract activities

This enhancement is further optimization in extract execution on top of this enhancement POL-12778, which has been delivered as backports in 4.23.2, 4.23.1 and 3.22.2. This release introduces improvements to the memory utilization of the extract activity, optimizes the loading of dynamic records, and updates several configuration properties related to extract activity.

Memory Utilization Improvement

When an extract is executed, the application creates a global activity. The global activity spawns multiple child activities. Each child activity extracts a specific number of entities/records and creates a data file. Initially, each child activity extracts records in chunks, based on the system property ohi.processing.chunksize.SELECT_EXTRACT_ITEMS. In this release, the system dynamically adjusts the chunk size based on memory utilization, starting with the value configured in ohi.processing.chunksize.SELECT_EXTRACT_ITEMS and optimizing as needed.

Optimization of Dynamic Records Loading

The system previously loaded all dynamic records of an entity into memory and then filter for the required dynamic record. In this release, the system directly loads only the required dynamic records into memory, significantly optimizing the process.

Configuration Properties Update

Following properties have been added in POL-12778 and we have removed them in this enhancement:

  • ohi.extract.datafilesize

  • ohi.extract.datafilesize.{0}

We’ve introduced 3 new properties (see Configuration Properties section for more details on these properties):

  • ohi.extract.datafilecount

  • ohi.extract.datafilecount.resourcename.{0}

  • ohi.extract.datafilecount.notificationkey.{0}

NXT-24066

WebLogic authentication implemented compliant with the Java Authorization and Authentication Service (JAAS) specification

This enhancement introduces support for the SAML 2.0 authentication mechanism in the Oracle Health Insurance. Additionally, a new JAR file named "CustomIdentityAsserter" has been created to accommodate the Basic Auth configuration.

Refer installation guide for further detail.

4.23.1.0.4

NXT-24398

Cache query (by code) results on configuration entities

This enhancement implements caching for all the configuration entities using code. This has been previously implemented only for a few entities.

4.23.2.0.0

NXT-27703

New REST endpoint to return fully constructed property model using floorplan & metadata

A new IP has been introduced, which combines floor plan and metadata in the same response. This reduces the number of REST calls from UI, thereby improving page loading time.

NXT-27912

Support for regEx in UI

This enhancement introduces ability to: * Specify regular expressions for string and number fields * Define the range for date fields * Override the minimum and maximum field length for number and string fields

Documentation Links:
Developer Guide

NXT-28050

Improvements to page templates : Search Pages (List and Table)

With this enhancement, Search Object List View and Search Object Table View Floorplan look and feel is updated:

  • Global header is fixed when page scrolls

  • Theme strip bar is moved from Global header to App header bottom

  • Floor Plan Selection, Quick Search and Advanced Search are left aligned

  • Page level Primary and Secondary actions are right aligned

  • Table and Result level actions are shown in content area

Documentation Links:
Developer Guide

NXT-28067

UI: Copy feature for editable table

This enhancement allows user to configure copy action on table and tab table components in the floorplan at the row level. Clicking on copy: - Creates a new entry in Edit mode. - Does a deep copy of the object including child resources as configured in the Floorplan.

NXT-28236

UI: Download in Widgets

This enhancement introduces ability to download viewed data from widgets

NXT-28241

Upgrade Coherence library in activity processing

In this release, we have upgraded Coherence library used in activity processing to enhance the efficiency. Additionally, a new system property has been introduced, giving you the flexibility to disable activity processing on a specific JVM/node if necessary. This can help manage workloads more effectively.

NXT-28449

Additional functionality for UI Form component

With this enhancement, the UI Form component now supports:

  • Editable list resources

  • Sort capabilities for tables configured within a Form

  • Conditionally hiding a sub-section

NXT-28465

Optimize REST graph recreation of reference sheet line when a new reference sheet is created

It was observed that creating reference sheet line every time a reference sheet creates is expensive process, which is causing huge memory consumption and causing time out issues. To address this, some source code have been optimised in ReferenceSheet.

NXT-28671

Improvements to page templates : View and Edit List (Table)

With this enhancement, Search View and Edit Object List (Table) Floorplan look and feel is updated:

  • Global header is fixed when page scrolls

  • Theme strip bar is moved from Global header to App header bottom

  • Floor Plan Selection, Quick Search and Advanced Search are left aligned

  • Page level Primary and Secondary actions are right aligned

  • Table and Result level actions are shown in content area

NXT-29497

UI: Copy feature on Floorplan, Widget pages and dynamic records

This enhancement gives the copy action on Floorplan and Widgets pages out of the box and for tab list (result component) a user can configure copy action for all dynamic records

NXT-30155

Removal of whitespaces from the HTTP API responses

In Oracle Health Insurance Enterprise Claims Adjudication, to optimize the loading time of the claims page to improve overall performance, we have disabled fomatting of HTTP API responses. This reduces the size of the response.

POL-11680

Metadata change for conditional mandatory dynamic field usages

When retrieving the metadata for a resource, dynamic field usages configured as conditional mandatory are now excluded from the list of required attributes.

POL-12035

Include Flex Code Identifiers in Extracts

For multi-value or time-validity usage: . Unique ID added for for multi-valued or time-validity usage for the field/FlexCode . FlexCodeSystem ID added as "flexCodeDefinitionId” for FlexCode/DynamicRecord . Additional fields to be added which are not marked as key value or descriptors and the actual usage name for FlexCode/DynamicRecord For Single value Non Time Valid usage: . FlexCodeSystem ID added as "flexCodeDefinitionId” for FlexCode/DynamicRecord . Additional fields to be added which are not marked as key value or descriptors and the actual usage name for FlexCode/DynamicRecord

POL-12956

Purge data files

In Oracle Health Insurance applications, data files generated during various activities (e.g., extract activity, financial messages activity and data files uploaded to initiate long-running operations) remain in the system even after they have been processed/consumed. Currently, there is no mechanism in place to automatically clean up these data files once they have been processed/consumed, leading to inefficiency of the database storage space.

This enhancement aims to automate the cleanup process and optimize database storage space. To enable purging data files, we have introduced a new PL/SQL package ohi_purge_datafileset_pkg.

POL-14132

Clearance of activities stuck in In Process stage from coherence submission caches using IP

Due to excessive load, the processing-pattern grid service stops processing activities, causing them to be stuck in the in process stage for a long time. Manually marking these activities to technical error (TE) and resubmitting them results in an exception as a reference to these activities already exist in coherence submission caches. Thus, the recovery of activities is only possible upon a full restart. The new integration point supports the clearance of coherence submission caches to facilitate the activity recovery process to avoid a complete restart.

POL-14140

ADF specific configuration removed

This enhancement removes and modifies configuration that was for ADF specific

PRD-3738

Product Service Definitions (Across Products) - Bulk actions - Update/Delete multiple Product Service Definitions

This enhancement introduces bulks actions for Product Service Definitions (Across Products) UI page : Delete Selected Rows, Add Specific Network, Remove Specific Network, Update Selected Rows. Note: As part of this enhancement the below issue is fixed - Blank row will not show up for mandatory fields (anything in bulk operation)

PRD-3875

Selective financial limit Carry-over

This enhancement introduces the ability to decide whether an out-of-pocket-maximum (OOPM) limit consumption counts towards year-end carryover. For example: * An OOPM consumption from a coinsurance or a copay do not count towards a carryover. * An OOPM consumption from a deductible does count towards a carryover.

A new indicator, exclude from carry over is introduced on the product-benefit-specification limit to help make this decision. The indicator is available for the build product process to define the carryover settings.

4.23.1.0.3, 4.23.1.0.4

PRD-3973

Product Dynamic Records

This enhancement introduces dynamic records on products

POL-16238

Deprecated APIs in Groovy 3

In the upcoming 4.25.1.0.0 release, we will upgrade the Groovy library from 3.x to 4.x. Several APIs have been deprecated in Groovy 3 and are removed in Groovy 4.

Upgrade Steps for Installation

To perform the upgrade, perform the following steps:

  1. Perform any pre-upgrade steps.

  2. Stop all the managed nodes running the existing version of the application.

  3. Perform any pre-undeploy steps.

  4. Undeploy the existing version of the application.

  5. Back up the database.

  6. Perform any post-undeploy steps.

  7. Unpack the release bundle into a directory that we refer to as OHI_ROOT from now on.

  8. Change Installation Configuration: In <OHI_ROOT>/util/install, make a copy of ohi_install.cfg.template and name it ohi_install.cfg.

  9. Edit ohi_install.cfg to contain your specific database connection data and other configuration settings. The settings are explained in the file itself.

  10. Make sure NO connections are present to the database using the OHI_xxx_USER account (where xxx is the abbreviation of the application)

  11. Run the Upgrade script:

    1. Open a command window and browse to <OHI_ROOT>/util/install.

    2. Run the upgrade by executing ./ohi-update.sh .

  12. Make the required changes to the ohi properties file

  13. Perform any post-upgrade steps

  14. Start WebLogic application server

  15. Deploy the Application

  16. Perform any post-deploy steps

Additional Upgrade Steps for Installation

The following phases are defined:

  1. pre-upgrade: Application is still running

  2. pre-undeploy: Application is stopped, but not undeployed.

  3. post-undeploy: Application is undeployed. Database is backed up

  4. post-upgrade: Released upgrade script has run.

  5. post-deploy: New application is deployed and is up and running.

post-undeploy

  1. See "Users and Authentication" section in the "Install and Configure Oracle WebLogic" topic in the Installation Guide, before deploying the new upgraded EAR if you are using Basic Auth as the authentication mechanism.

  2. Install the mandatory Coherence 14.1.1 Feature Pack 22.06 Cumulative Patch 9. See the Installation Guide, section "Required Software" for more details.

  3. Removal of the deprecated operational reporting views:
    The support of the operational reporting views has been removed from this release, and their schemas and the roles will no longer be required. The below steps are optional and if the customer wants to use the deprecated operational reporting views, they can retain the below schemas
    OHI_PRODDEF_VIEWS_OWNER
    OHI_PRODDEF_CONF_VWS_OWNER
    OHI_PRODDEF_NONCONF_VWS_OWNER

    OHI will not support any changes or fixes to the above mentioned schemas.

    As a part of the upgrade, it is recommended to run the following commands as SYSTEM user to remove the below schemas and the roles from the application pdb:

DROP USER OHI_PRODDEF_VIEWS_OWNER CASCADE;
DROP USER OHI_PRODDEF_CONF_VWS_OWNER CASCADE;
DROP USER OHI_PRODDEF_NONCONF_VWS_OWNER CASCADE;
DROP ROLE OHI_PRODDEF_CONF_VWS_ROLE;
DROP ROLE OHI_PRODDEF_NONCONF_VWS_ROLE;

post-upgrade

Note: This action applies only to the production environment.

Action: In the properties file, add a new property ohi.query.api.enable.sqlmonitorreport and set its value to false.

Example: ohi.query.api.enable.sqlmonitorreport=false

Configuration Properties

Ref Action Description

AUT-3282

Added

ohi.system.cpu.threshold.high

Property to set the system CPU utilisation threshold. If system CPU goes above this value, the system enters the low CPU state.

AUT-3342

Added

ohi.activityprocessing.max.resubmit.attempt.count

This property configures the maximum number of times a stuck root activity can be re-submitted for processing.

AUT-3342

Added

ohi.activityprocessing.heartbeat.frequency

This property configures the scheduled time frame for updating the last_updated_date column for the running activities to rectify the activities getting stuck in the progress status.

AUT-3342

Added

ohi.activityprocessing.cleanup.frequency

If any in progress activities, (current - last updated date) timestamp is greater than value configured by this property, then the status gets updated to technical error.

CPN-3037

Added

ohi.query.api.enable.sqlmonitorreport

Property to enable SQL monitor reports. Set to TRUE (by default) for lower environments and set to FALSE for production environment.

CPN-3079

Removed

ohi.logging.phi.min.retentionperiod

Purging of logs is now integrated into the auto-purge feature. So, this property is removed. The default retention for PHI logs with the auto-purge function is 2560 days (7 years) and can be managed through the autopurgemetadata API

CPN-3079

Removed

ohi.incident.datafileset.retentionperiod

Purging of all datafile sets is now integrated into the auto-purge system, hence, eliminating the need for separate scheduled scavenging and purging of incident files. So, this property is removed.

CPN-3120

Added

ohi.extract.datafilecount.notificationkey.{0}

This property behaves similar to ohi.extract.datafilecount, but controls the number of data files generated for a specific notificationKey. The placeholder value {0} refers to the notificationKey used in the extract request.

CPN-3120

Added

ohi.extract.datafilecount.resourcename.{0}

This property behaves similar to ohi.extract.datafilecount, but controls the number of data files generated for a specific resourcename/entity. The placeholder value {0} refers to the resourceName used in the extract request.

CPN-3120

Added

ohi.extract.datafilecount

A new optional configuration property is added which controls the number of data files generated by the extract activity. This property also determines the number of child activities executed. The value set for this property directly impacts the parallelism of child activities. A higher value allows for more parallel child activities, which can improve performance by making the extraction process multi-threaded, but at the cost of generating more number of data files. On the other hand, Setting a value too low, such as 1 or 10, may result in the extract process functioning as a single-threaded operation, potentially reducing performance. While the default value of this property is set to 100, Oracle recommends to evaluate your specific requirements and performance needs to determine the optimal value.

CPN-3120

Removed

ohi.extract.datafilesize.{0}

This property is replaced with new property ohi.extract.datafilecount.resourcename.{0}

CPN-3120

Removed

ohi.extract.datafilesize

This property is replaced with new property ohi.extract.datafilecount

NXT-28241

Added

ohi.activityprocessing.enabled

A new optional system property is introduced to disable activity processing on a specific JVM/node

PRD-4233

Added

ohi.oauth.token.jwt.assertion.param.name

Name of JWT assertion parameter used in OAuth token request. It could be different across OAuth server. Default value is "assertion"

Web Services

Ref Action Description

AUT-3342

Modified

Activities API

Attribute resubmitAttemptCount added.

CPN-3037

Modified

Query API

A new header parameter enablesqlmonitorreport is introduced in Query API. This parameter is intended for use only in Non-Production environments and can have the following values:

  • all: Monitors all SQL queries generated in the Query API

  • rootResourceOnly: Monitors only the SQL query generated on the root resource

  • Not specified: If this header is not included, no SQL monitor report is generated for any SQL query, maintaining the current behavior

CPN-3079

Added

autopurgemetadata API

Added a new autopurgemetadata API

CPN-3079

Removed

logeventretentionperiods API

logeventretentionperiods API supports only GET operation. POST/PATCH/PUT/DELETE operations are not longer supported

CPN-3079

Removed

loglevelretentionperiods API

loglevelretentionperiods API supports only GET operation. POST/PATCH/PUT/DELETE operations are not longer supported

NXT-27703

Added

floorplans

This IP will return floor plan combined with metadata in a single response.

POL-14132

Added

clearsubmissioncaches IP

New IP to clear coherence submission caches.

PRD-3875

Modified

Build Product

Carry Over Settings are used when product benefit specification limits are generated

PRD-3875

Modified

Products Export

Exclude from carry over indicator is included in the product benefit specification limits

PRD-4233

Added

Generic API for OAuthParameter

Introduced generic APIs to manage OAuth parameters. Refer /generic/oauthparameters/metadata to know available endpoints to manage OAuthParameter entity

PRD-4233

Modified

generic/oauthclientcredentialsgrantconfigurations

Supports configuration of OAuth parameters through oAuthClientParameters

PRD-4233

Modified

generic/oauthassertionjwtbearergrantconfigurations/

Supports configuration of OAuth parameters through oAuthClientParameters

Data Conversion

Ref Action Description

NXT-27703

Added

Access Restrictions

Read access for the floorplans IP is provided as a part of mandatory accesses required for the applications in SETUP_ACCESS_ROLE.

NXT-28067

Modified

View Object List Pages

System floorplan with View Object List template is updated with Copy action (also few system floorplan having tab table configuration)

NXT-29497

Modified

Floorplan and Widgets page

System floorplan for Floorplans and widgets is updated with Copy action

Dynamic Logic

Ref Action Description

POL-14140

Removed

country (Entity)

Remove dynamic logic addressed to signature (Country Format)

UI Changes

Ref Action Description

AUT-3342

Modified

All activity pages

A new status - 'Queued' and a new field 'processQueuedDateTime' has been added to these pages.

NXT-28067

Modified

View Object List Pages

Copy row action added for view object list pages and in some pages having tab table configuration

NXT-28236

Modified

Widgets

Download button added to widgets

NXT-28449

Modified

Policy Enrollment page

Form Table is made editable and sort is enabled in the form table for policy enrollment page with 'MEDICARE_ADVANTAGE' tag

NXT-29497

Added

Floorplan and Widgets page

Added copy action in floorplan and widgets hierarchical recursive pages

POL-14140

Modified

Country(RM0004)

Removal of below attributes from the country floorplan

  1. prompt additional part 1

  2. prompt additional part 2

  3. prompt additional part 3

  4. dynamic function (Number Format)

PRD-3738

Modified

Across Product Page

Added bulk edit, delete feature and few other advanced editing features to this page.Blank row do not show up for mandatory fields

PRD-3875

Modified

View Generated Product

Exclude from carry over indicator is visible in the product benefit specification limits

PRD-3875

Modified

Products Page

New section to define carry over settings

PRD-3973

Modified

Products Page

Dynamic records are available on products

Breaking Changes

Ref Action Description

CPN-3079

Removed

loglevelretentionperiods API

loglevelretentionperiods support only GET operation. POST/PATCH/PUT/DELETE operations are no longer supported. So, it is not possible to purge log messages based on a specific log level. Instead purging of logs (irrespective of the log level) is now integrated into the auto-purge feature

CPN-3079

Removed

logeventretentionperiods API

logeventretentionperiods API support only GET operation. POST/PATCH/PUT/DELETE operations are no longer supported. So, it is not possible to purge log messages based on a specific log level. Instead purging of logs (irrespective of the log level) is now integrated into the auto-purge feature

CPN-3100

Modified

properties API

If the environment attribute is used when configuring properties using the properties API, the value of the environment attribute should now match the value set for the system property ohi.environment.identifier. If these values differ, update the environment attribute using the properties API.

Example:

If the following properties (with different values for two different environments) are configured in the system:

Property-1
id: 123
name: fusion.financials.url
value: http://host-dev:port/fusion
environment: DEV_CPN_PDB
Property-2
id: 456
name: fusion.financials.url
value: http://host-prod:port/fusion
environment: PROD_CPN_PDB

And if the value of the system property ohi.environment.identifier is set to OHI Capitation Production Environment in the Production environment and to OHI Capitation Development Environment in the Dev environment, then the environment attribute of the above two properties should be updated using the properties API after upgrading to this release, i.e.,

PATCH http://[hostName]:[portNumber]/[api-context-root]/generic/properties/123
{
    "environment": "OHI Capitation Development Environment"
}

and

PATCH http://[hostName]:[portNumber]/[api-context-root]/generic/properties/456
{
    "environment": "OHI Capitation Production Environment"
}

NXT-24066

Modified

Installation Configuration

Customers using the Basic Authentication mechanism must follow the installation guide to install the newly built JAR file, "CustomIdentityAsserter.jar," and configure the WebLogic security provider accordingly.

POL-14140

Removed

country (Entity)

Removal of below attributes from the country entity . Number format . Amount Number Format . Integer Format . prompt additional part 1 . prompt additional part 2 . prompt additional part 3 . Dynamic Function (Address Format Code)

POL-14140

Removed

Claims Forms (Entity)

Removal of below attributes . procedure 1 display name . procedure 2 display name . procedure 3 display name

POL-14140

Removed

Schedule Dimension (Entity)

Removal of below attributes

  1. display length

POL-14140

Removed

Usages (Entity)

Removal of below attributes

  1. In Lov?

  2. Search in Lov?

POL-14140

Removed

https-link (Entity)

Remove entity (httplinks)

  1. Remove dynamic logic addressed to signature (HTTP LINK)

POL-14140

Removed

System Properties

Remove system properties

ohi.ui.maxrowstoreretrieve

POL-14140

Removed

MDS

Remove signature, Name : MDS (COND) and MDS (FUNC)

POL-14140

Removed

Agent (Entity)

Remove dynamic logic addressed to signature Name Format (Agent)

POL-14140

Removed

Access Restriction

Remove access restriction type : attached data (Policies), financial hold and unlock claim lines (Claims)

Bug Fixes

BugDB SR Internal Summary

36997589

PRD-4387

Translations not working in few pages

Description:

Following pages/buttons are not translatable: Persons page Actions dropdown, MenuItem for BookMarks GroupClients page - Set Status to Change Dialog text

Resolution:

Persons page Actions dropdown, MenuItem for BookMarks, GroupClients page - Set Status to Change Dialog text are translatable now

36886298

3-36452370811

PRD-4429

Advanced search lov’s for dynamic fields are not loading in referencesheetlines

Description:

Not able to search using the LOV’s in the reference sheet lines page. When clicking in the LOV field an error occurs on the api/generic/flexcodes/search.

Resolution:

Proper results are displayed in the LOV for flexcodes based on diagnosis, procedures and providers, displays

Backports:

4.23.1.0.4

34994560

3-31866550011

PRD-3268

Reservation regime code is missing in product export zip .

Description:

When a product with benefit specification of type Reservation regime is exported , regime code of the underlying regime is not attached in the export . hence missing in the exported zip file .

Resolution:

We can see the expected regime code for the export now .

Backports:

4.23.2.0.0

36203968

3-34786906091

PRD-4064

Dynamic logic byte code is not loaded during server startup on non master nodes after invalidateall API is invoked

Description:

Dynamic logic byte code is expected to load at the startup of non-master nodes if the invalidateall API was invoked in master node but was not being observed.

Resolution:

Dynamic logic byte code is now loaded at the startup of non-master nodes if the invalidateall API was invoked in master node.

Backports:

4.23.1.0.3

36506940

3-36314937451

PRD-4328

Parameter Alias Value Not Visible in JET when it has value 0

Description:

Parameter values of any type, when the parameter has a value of 0, are not displayed in JET

Resolution:

Parameter Alias value which has value set to 0 is visible in JET

36251824

PRD-4048

All records are not shown in downloaded file, only 10 records are shown even after scrolling in table page

Description:

When a user scrolls through a set of records and clicks on download action in the table, the downloaded file doesn’t show the correct result.

Resolution:

All the records viewed in the table page is downloaded to the file when clicked on download action

35680864

PRD-3638

Cost sharing: Clicking on add button is not showing any input box ,rather showing in read-only mode

Description:

Navigate to products and open any product. Click on cost share tab. On click on add, it should show edit mode of the row, with option to input values It is showing in read-only mode, user has to click on edit button explicitly in order to enter value

Resolution:

On click of add button in Cost Sharing, new row is added in edit mode with option to enter values

36244262

PRD-4113

Unable to edit values in drawer when a field is configured as deeplink

Description:

It is not possible to edit resources which are configured as Deeplinks. For example in Individual providers, it is not possible to edit service address in rendering address tab. On click of edit button in service address drawer, its directly navigating back to individual providers page and not possible to edit/save

Resolution:

Edit works fine in Deeplink drawers now and also the values are saved properly on the resource configured as deeplink

35684779

PRD-3694

For certain special LOV properties configured in the floorplan with suffix 'JET', upon selecting a value, the focus moves out of the table row

Description:

On selecting a value from dropdown for special functional LOV properties in table pages, the focus moves out of the table row

Resolution:

On selecting a value from dropdown for the special functional LOV properties in table, the focus remains on the respective field.

36377446

PRD-4215

Save and Cancel shortcuts aren’t working for create Hierarchical Recursive pages

Description:

Save and Cancel shortcuts aren’t working for create Hierarchical Recursive pages

Resolution:

Save and Cancel shortcuts will work for create Hierarchical Recursive pages also now

36472061

3-36256248451

PRD-4262

Unable to search on service option in service definitions page

Description:

When opening the Service Definitions page in Jet is is not possible to search on the Service Option. Advanced search using service option is missing in service definition page.

Resolution:

Search on service option is possible in both quick/advance search in service definitions page

Backports:

4.23.1.0.4

36320537

PRD-4046

Incorrect result shown in Boilerplates Table

Description:

The boilerplate table shows incorrect results after performing the 'ADD' and then 'CANCEL' actions simultaneously. This behavior is generic to other table-based pages.

Resolution:

Correct results are shown after performing the 'ADD' and then 'CANCEL' actions simultaneously in table-based pages

36757864

PRD-4427

Product Export Set not working, showing error

Description:

Navigate to product export set and click on create. There is an error in console

Resolution:

Product export set can be created without any errors

36189844

PRD-4035

Execute datafile incident cleanup job (scavenging scheduler job) only on single node

Description:

The datafile set scavenging/cleanup job is scheduled to clean up application incidents (trace files) every day at midnight.

This Spring scheduling job is executed on all the nodes, which is an unwanted use of resources, it is it would be efficient to run this only once (eg: on the master/oldest node in the coherence cluster).

Resolution:

Added condition to execute the scheduled job only on single node.

34882051

PRD-3187

Service definition page: Issue with "consume auth " field not getting cleared

Description:

In case user has checked the "consume auth" checkbox, when the service definition was type authorization, and when we change from "Authorization" type to any other type, the consume auth checkbox field is hidden(checkbox itself not showing as expected) from UI, but in backend it is still true, with other type of service definition and it creates problem when we migrate our generated products to claims application.

Resolution:

Values are set properly for "consume auth" field when service definition gets changed from type "Authorization" and vice versa

36409954

3-34612052061

PRD-4222

JWT bearer grant type is not working

Description:

OHI supports both client_credentials and urn:ietf:params:oauth:grant-type:jwt-bearer (shortly referred as JWT bearer) grant types in OAuth, however JWT bearer grant type is not working as expected.

Resolution:

Fixed logical issues in code to make it working

36317180

PRD-4153

Generate baseviews fails intermittently with CacheCreationException

Description:

Generate baseviews fails intermittently with CacheCreationException: Name of the cache entityNamePropertyCache already exists.

Resolution:

Generation of base views works fine without any intermittent exceptions.

36281243

PRD-4136

Non-selective criteria in reference objects cause OHI to load too many objects in memory.

Description:

Non-selective criteria in reference objects cause OHI to load too many objects in memory.

Resolution:

Non-selective criteria in reference objects now only load two objects in the memory, which will not cause the memory protector to kick in.

36416513

3-34612052061

PRD-4233

OAuth parameters should be configurable

Description:

OHI product supports only standard OAuth parameters. As its value/name can deviate across OAuth server, OHI application isn’t able to establish connection with OAuth server.

Resolution:

Introduced capability in OHI product to define custom OAuth parameters. These parameters can be reused across different OAuth clients later.

34866056

PRD-2942

Checkbox is not getting checked by default in UI using conditional display in table pages

Description:

Default value on checkbox is not getting checked in UI, when it has value set as true by using conditional display. Go to Configuration, Services, Service Definitions page. Fill mandatory fields, select "Type" as "Authorization" and click on Save. Consume Authorization will have latest value as "true", but in UI it will be unchecked

Resolution:

Consume Authorization will have latest value as "true" (set using conditional display) and displayed as checked in UI

36194849

PRD-4044

Add new row is shown at last in table pages

Description:

Click Add new in table page. A new row is getting appended in the last visible row of the screen

Resolution:

Table component is modified with the below changes: 1) On click of Add button, a new row will be added to the top of the available rows. It is a sticky row to the table 2) Two new icons are added to a new row. Check icon would add the new row to the table and clicking on Cross icon would discard the new row. 3) User will have to click on Check icon and Save to persist the newly added data

36424935

PRD-3671

Selected value is not showing in edit and read only mode for custom properties in Products page

Description:

When one of these custom properties ( renewalPeriodJET, carryOverPeriodJET, and otherProductsCarryOverPeriodJET) is updated in Products > Product Limit Renewal Period Selected Page, the value is not showing in edit and read-only mode.

Resolution:

In products page, fields renewalPeriod, carryOverPeriod and otherProductsCarryOverPeriod shows selected value properly in edit and read only mode

36945757

3-37403675211

PRD-4554

Accessing reference sheet lines via the post search operation requires more than just retrieve access to the Reference Sheet Lines API.

Description:

Accessing reference sheet lines via the POST search operation requires both retrieve and create permissions on the Reference Sheet Lines API. Simply having retrieve access is insufficient to perform this operation.

Resolution:

Accessing reference sheet lines using the POST search operation now only requires retrieve access.

36809701

PRD-4470

Additional fields drawer: Client side error not shown for mandatory fields

Description:

If we have a mandatory field to be filled in Additional Fields drawer and the user is not notified with this

Resolution:

Client side validation is highlighted in Additional Fields drawer

36739511

3-36913840401

PRD-4422

Extract requests can have a limited number of characters in the condition

Description:

Extract request with a large query fails with activity message "ORA-06502: PL/SQL: numeric or value error ORA-06512: at line 1". This is because the selection is stored in a variable with a maximum of 32000 characters.

Resolution:

Selection is now stored as a clob of which the maximum size depends on environment settings: (4 GB - 1) * DB_BLOCK_SIZE initialization parameter (8 TB to 128 TB). Contact database administrator for more details if needed. This change allows for a more extensive query in the extract request and a lesser chance of running into the ORA-06502 error.

36997592

PRD-4218

Reversible column is removed from UI and it is not possible to store negative values now

Description:

Configure a 3 digit non-reversible number field. Expected behavior is that it allows for values between 0 and 999 but able to enter and store negative values.

Resolution:

Reversible column is removed from UI and it is not possible to store negative values now

36459367

3-36176430291

PRD-4251

Dynamic records ID should be returned as string in the API response

Description:

The ID of dynamic records of resources are returned as number (Long) in the API response, they should be returned as String.

Resolution:

The Dynamic records ID was transformed from Long to String in the API response

36316838

PRD-4152

Validation Message: If informative messages are attached then the validation messages tab is not displayed

Description:

Validation Message: If informative messages are attached then the validation messages tab is not displayed

Resolution:

Validation messages tab is displayed for informative messages also

36241428

PRD-4112

Length of OHI_ID_ARRAY database type is still 14 after upgrading to 4.23.1 release

Description:

Length of OHI_ID_ARRAY database type is still 14 after upgrading to 4.23.1 release

Resolution:

The length of OHI_ID_ARRAY database type is updated to 19

Backports:

4.23.1.0.2, 4.23.2.0.0

36413704

PRD-3935

Download not working for property: specificNetworksJET

Description:

Download not working as expected for specificNetworksJET property

Resolution:

All the results loaded in UI is properly downloaded for specificNetworksJET property as well

36833539

PRD-4482

Integer field values are shown with separator (12,345 instead of 12345)

Description:

Enter '12345' in integer fields like "house number" or state and country code" in Persons page, it is getting displayed as 12,345

Resolution:

Integer field values are shown without separators now

36908521

3-37567131801

PRD-4543

NoClassDefFoundError error is returned when creating a new dynamic logic with trace logging enabled for the logger ohi.dynamiclogic

Description:

A NoClassDefFoundError occurs when attempting to create a new dynamic logic with trace logging enabled for the ohi.dynamiclogic logger, instead of successfully creating the dynamic logic.

Resolution:

After adding the missing third-party dependency, dynamic logic can now be successfully created with trace logging enabled for the ohi.dynamiclogic logger.

36482029

PRD-4320

Edit field is present in referencesheet headers even after making the fields non editable in the floorplan

Description:

Edit field is present in REFERENCESHEET headers even after making the fields non editable in the floorplan. Enable the custom floorplan for REFERENCESHEET page and remove edit action from action component. The edit option is still there.

Resolution:

Edit button will not appear if edit action is removed from the floorplan in Reference sheets page

34980201

3-31796002821

PRD-3267

Dynamic logic timeout property is ignored when compiling dynamic logic at startup time

Description:

The dynamic logic timeout property (ohi.dynamiclogic.timeout or ohi.dynamiclogic.timeout.{0}) is ignored when the dynamic logic is compiled at system startup time.

Resolution:

Load the system property from the database if the loading of system properties is not completed. If loading of system property is completed then load from cache.

Issues that were backported in previous Release / Patch

BugDB Internal Summary Backport BugDB SR

34994560

PRD-3268

Reservation regime code is missing in product export zip .

4.23.2.0.0

36225779

3-31866550011

36203968

PRD-4064

Dynamic logic byte code is not loaded during server startup on non master nodes after invalidateall API is invoked

4.23.1.0.3

36203984

3-34786906091

36241428

PRD-4112

Length of OHI_ID_ARRAY database type is still 14 after upgrading to 4.23.1 release

4.23.1.0.2

36250863

36241428

PRD-4112

Length of OHI_ID_ARRAY database type is still 14 after upgrading to 4.23.1 release

4.23.2.0.0

36250855

36472061

PRD-4262

Unable to search on service option in service definitions page

4.23.1.0.4

36472070

3-36256248451

36886298

PRD-4429

Advanced search lov’s for dynamic fields are not loading in referencesheetlines

4.23.1.0.4

36886318

3-36452370811

Known Issues

BugDB SR Internal Summary

32477670

PRD-2488

No base view generated for reference sheet lines

Description:

Reference sheet(line)s use a different storage structure (JSON) for the dynamic fields. The base view generator does not support that yet. So the reference sheet line columns can’t be queried using base views.

35031586

3-31969350441

PRD-3280

Query API cannot handle optimal field with flex code definition requesting combinations with null

Description:

When you do a query search with a combination of a null, for instance (multicore.eq('Y').or.multicore.eq(null)). The result shows the records with value Y, not those with a null value.

35722276

PRD-3672

Scrolling issue: Page is getting refreshed after user clicks on "cancel" button in unsaved pop up page

Description:

"unsaved pop up changes" is seen when user edits any column, selects any value and scrolls. On click on cancel, the changes are not saved and page is getting reload.

35686869

PRD-3690

Reset Query Statistics - in Monitor Dynamic Logic Querying

Description:

When we query something in the testunit dynamic logic and then invoke/test another dynamic logic in the same testunit dynamic logic, the value/count for all query parameters displays incorrect

35702216

PRD-3704

SaaS: Default service options and services are not getting added while creating a new product.

Description:

When 'productIncludeDefaultJET' has a value set to true, this should allow the users to add default services and service options to the Product. Currently, this is not happening in SAAS environments.

35945676

PRD-3910

There is no way to know if/when products http build is complete

Description:

In the JET UI page for Operations > Data Exchanges > Outbound Exchange > Products Http, there is no way for the user to know that the build is complete after they have clicked the build button. There is no progress indicator,

36436623

3-36153544321

PRD-4241

Dynamic logic with Universal indicator is missing in PRODUCTS_HTTP export

Description:

When dynamic logic of type Benefit Specification (other) has the indicator Universal set, it should be included as condition for each benefit specification in the Product Export. This does not happen for the export of type PRODUCTS_HTTP

36500545

3-35756979891,3-37319985201

PRD-4347

On successful data file set import, user not redirected to 'import history' page from inbound benefits/products page

Description:

To show the process started by the user, code is present in the url parameters. The url should be in this format - <context-url>/?ojr=inbound-benefits-products%2Fimport_history%3Bcode%3D<data file set code>. But instead the url is encoded twice: the first time parameter is encoded and the second time the entire url is encoded. It generates a URL like - <context-url>/?ojr=inbound-benefits-products%2Fimport_history%3Bcode%3DTEST%2525COVER202 where 'TEST%COVER202' is the data file set code. Here '%' in 'TEST%COVER202' is encoded twice to 'TEST%2525COVER202'. Even after removing the extra 25 from the url, deep linking to import history page is not working.

36905047

PRD-4495

Validation check: Condition is not copied and showing blank

Description:

Validation check: Condition is not copied and showing blank

36877423

3-37334420911

PRD-4514

In the product service definition, 'authorization missing?' for the type coverage is stored as null instead of no

Description:

In the product service definition, when we don’t choose 'Authorization Missing?' for the type coverage, its stored as null instead of No, which results an error at 'BenefitSpecification' response, when we export that particular product.

36970159

3-37743857111

PRD-4570

Incorrect use of ohi.ws.client.readtimeout propperty to set the entire request/response timeout

Description:

The system property ohi.ws.client.readtimeout is intended to control the time (in milliseconds) that the client will wait for a response from the server after sending a request. However, it is currently being incorrectly applied to set the timeout for the entire request/response conversation, rather than just the response wait time.

36973015

3-37582942001

PRD-4572

Large chronicle queue files of size 180GB were created by applicationDBAppender while capturing application log events

Description:

The applicationDBAppender that captures the application log events in DB generated a large chronicle queue files of size 180GB due to an exception that got re-queued in an end-less while loop

36977441

PRD-4575

Remove Copy from Global activities details page

Description:

Copy action should not be shown for view only details pages

36993408

PRD-4588

Products: "+Add" button missing in adjudication stop limit and adjudication continue limit in create mode

Description:

"+Add" button missing in adjudication stop limit and adjudication continue limit in create mode until check icon is selected

36993749

PRD-4589

Inbound & outbound exchange: Action items like build, message, download missing

Description:

Inbound & outbound exchange: Action items like build, message, download missing

Deprecated Items

These features will be removed in a future release. Customers are advised to review the documentation and take timely action.

JIRA Key Announced Release Announced Summary

NXT-25000

3.22.2.0.0

The use of parameters that influence the resource representation in the 'Accept' header of an HTTP request is deprecated.

NXT-25662

3.22.2.0.0

The support to GET operations on Query API calls is deprecated.

PRD-2672

3.22.2.0.0

The Product Status API operation toEdit is deprecated

PRD-3018

3.22.2.0.0

The Export Product and Export Benefits integration points are deprecated

POL-16238

4.24.1.0.0

In the upcoming 4.25.1.0.0 release, we will upgrade the Groovy library from 3.x to 4.x. Several APIs have been deprecated in Groovy 3 and are removed in Groovy 4. For example, classes previously available in both groovy.util and groovy.xml (such as XmlSlurper and XmlParser) are now available only in the groovy.xml package in Groovy 4. Therefore, customers who use classes from groovy.util must update their dynamic logic to use groovy.xml instead to ensure compatibility with Groovy 4.