Release Notes for Oracle Health Insurance Value-Based Payments Release 4.24.1.0.0

This document contains the release notes for Oracle Health Insurance Value-Based Payments Release 4.24.1.0.0.

Version compatibility: Oracle Health Insurance Value-Based Payments 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.

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-28011

Search Page for all Providers

This enhancement introduces a new search Page for all Providers, where all providers (organizational and individual) can be searched.

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-29892

Added County and State and County Code to address page

With this enhancement:

  • Person’s address page is updated to include County and State and County Code fields

  • Additional restriction added for State and County Code to only allow positive values

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

POL-14640

Introducing a scheduler for checking the status of the current tasks

The task processing framework has been improved with automated mechanisms for task recovery and notifications in case tasks (for example, data replication synchronization task) become stuck in a particular status for a long time.

Documentation Links:
Administration Guide - Application

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. As part of POL-14140, the HttpLink entity has been removed. If the HttpLink was exported or imported using the Configuration Migration Tool (CMT), the technical tables may still contain references to the HttpLink record. To clear these references, run the following commands as OHI_CAPITATION_OWNER:

    TRUNCATE TABLE OHI$CFG_MIGR_MARSHALLED_ITEMS;
    TRUNCATE TABLE OHI$DATA_SET_PROCESS_FAILURES;

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.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.

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.max.resubmit.attempt.count

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

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.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-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-3117

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"

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.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

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

POL-14640

Added

ohi.taskprocessing.<0>.processing.timeinterval

Determines the overhead in seconds over the pending time interval to check if a task is stuck in the PENDING status.

POL-14640

Added

ohi.taskprocessing.scheduler.pending.overhead

The maximum time for which a task can be present in the PROCESSING status. The scheduler will recover the task if it is in PROCESSING status for a time greater than this time interval. Allowable values are the ref_code’s: 'PolicyUpdateRequestPolling', 'DataReplicationTargetSynchronization', 'IntegrationEventAggregateCreator', 'IntegrationTransformation', 'RepublishingFailedMessages'. ref_code replaces {0}.

POL-14640

Added

ohi.taskprocessing.notification.endpoint

The URL to which notifications should be sent by OHI if the task is in PROCESSING/PENDING status for a longer period or if the task is in ERRORED status. (Note that the maximum time a task can be in PROCESSING/PENDING status is configurable)

POL-14640

Added

ohi.taskprocessing.scheduler.frequency

Determines how frequently the scheduler should run.

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

loglevelretentionperiods API

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

CPN-3079

Removed

logeventretentionperiods API

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

CPN-3117

Added

Generic API for OAuthParameter

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

CPN-3117

Modified

generic/oauthassertionjwtbearergrantconfigurations/

Supports configuration of OAuth parameters through oAuthClientParameters

CPN-3117

Modified

generic/oauthclientcredentialsgrantconfigurations

Supports configuration of OAuth parameters through oAuthClientParameters

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.

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-28011

Added

Providers(All)(RM0036)

New search page for Providers which displays results from both organization and individual provider. The create button provides a dropdown with the option to create an organization or individual provider.

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)

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

System Properties

Remove system properties

ohi.ui.maxrowstoreretrieve

POL-14140

Removed

Usages (Entity)

Removal of below attributes

  1. In Lov?

  2. Search in Lov?

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

MDS

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

POL-14140

Removed

Access Restriction

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

POL-14140

Removed

Agent (Entity)

Remove dynamic logic addressed to signature Name Format (Agent)

POL-14140

Removed

https-link (Entity)

Remove entity (httplinks)

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

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

Schedule Dimension (Entity)

Removal of below attributes

  1. display length

Bug Fixes

BugDB SR Internal Summary

36992614

3-36452370811

CPN-3308

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.

36189836

CPN-2980

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.

36236317

CPN-2993

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

36195745

CPN-3035

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

36220232

CPN-3021

Relation Links aren’t removed for a relation when empty list is given as payload

Description:

Unable to delete Relation Links by giving empty relation link list as payload for Persons IP.

Resolution:

Relation Links can be deleted by giving empty relation link list as payload in case of Persons IP.

36204113

3-34786906091

CPN-3007

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

Description:

Dynamic logic byte code was not loaded during server startup on non-master nodes after invalidateall IP was invoked. It was instead getting loaded at the actual dynamic logic execution time.

Resolution:

Dynamic logic byte code is now loaded during server startup on non-master nodes even after invalidateall IP is invoked.

35513644

CPN-2595

Person code generation dynamiclogic is not used to construct the person code, even after activating the dynamiclogic that has signature Person Code generation.

Description:

Person code generation dynamiclogic is not used to construct the person code, even after activating the dynamiclogic that has signature Person Code Generation.

Resolution:

Extended the person entity to assign a code if it is empty before persistence. The code is generated using dynamic logic that has person code generation signature.

36150413

CPN-2687

Individual providers - Unable to edit service address configured as deeplink in rendering address tab

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

36239835

3-35499768621

CPN-3029

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.2.0.0, 4.23.1.0.1

36628879

CPN-3224

For purge of activities the foreign key to root activity was not dropped while it should be.

Description:

Because of an inconsistency in data structure (like dynamic fields on the act_activities table) in previous release the foreign key from activity to root activity was not dropped, causing the purge activities to fail on constraint failure.

Resolution:

Data structure is made consistent and the foreign key from activity to root activity is dropped.

36764222

CPN-3307

Purge activities fails on integrity constraint

Description:

There exist foreign key constraints in a few tables referencing Activities which should not be present, causing purge failure and integrity constraint violation is thrown during deletion.

Resolution:

Removing unnecessary foreign key constraints to facilitate the successful completion of the purge operation.

36547170

3-34871101921

CPN-3187

Invoking exchange with filename containing diacritics corrupts created datafile name

Description:

Invoking exchange with file upload, where the filename contains diacritics, erroneously transforms the filename to some other characters.

Resolution:

By incorporating standard encoding for UTF-8 and ISO_8859-1 in multiform requests, filename with diacritics is not getting corrupted.

36317200

CPN-3072

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.

36281275

CPN-3062

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.

36618805

CPN-3221

Translations not working in few pages

Description:

Following pages/buttons are not translatable: Persons page Actions dropdown, MenuItem for BookMarks

Resolution:

Persons page Actions dropdown, MenuItem for BookMarks,

36945787

3-37403675211

CPN-3401

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.

36809680

CPN-3358

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

36823846

CPN-3366

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

36387405

CPN-3103

Non-reversible number free fields do not function

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

36458915

3-36176430291

CPN-3133

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

Backports:

4.23.1.0.1

36739508

3-36913840401

CPN-3298

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.

36424991

CPN-2685

Mandatory pop up is reflecting In organization provider under service provider when accessed from lookup.

Description:

Mandatory pop up is reflecting In organization provider under service provider when accessed from lookup.

Resolution:

Mandatory popup is not shown In organization provider under service provider when accessed from lookup.

36194711

CPN-2991

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

36377428

CPN-3098

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

36908529

3-37567131801

CPN-3389

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.

36410443

3-34612052061

CPN-3111

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

36416523

3-34612052061

CPN-3117

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.

34980215

3-31796002821

CPN-2418

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

36239835

CPN-3029

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

4.23.2.0.0

36250730

36239835

CPN-3029

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

4.23.1.0.1

36250742

36458915

CPN-3133

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

4.23.1.0.1

36459089

3-36176430291

Known Issues

BugDB SR Internal Summary

32477683

CPN-1431

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.

33430852

CPN-1811

Usages - Add to Floorplan - When same usage is associated in all the sets of a floorplan, the values are not rendered properly on the entity’s page.

Description:

When an usage is added to Floorplan to display the same dynamic field in multiple sets of the entity page, the respective fields are not rendering the values as expected. So there needs to be a reconfiguration check in place to handle this situation.

34401173

3-29621579461

CPN-2146

The CMT recovery process fails with a null pointer exception

Description:

During restart, the data set processes for CMT are cleaned up. As a result, the CMT recovery process fails with a null pointer exception.

35031585

3-31969350441

CPN-2430

Query API cannot handle optional fields with flex code definition requesting combination 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.

35686859

CPN-2724

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

36967832

CPN-3407

Queued activities remain in QD status when memory protector kicks-in

Description:

The queued activities always remain in QD status when application memory is recovered after breaching the critical memory threshold. Expected: The activities must move to IP status when the application recovers from memory failures and there is enough room available to process the activities

36970168

3-37743857111

CPN-3410

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.

36977368

CPN-3415

Remove Copy from Global activities details page

Description:

Copy action should not be shown for view only details pages

36991723

3-37582942001

CPN-3423

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

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.