Dynamic Processing Settings - Changes & Fixes

This page covers changes and fixes to Dynamic Processing Settings provided in IPF Release 2025.4.0

New

  • Improved the industry data ingestion process by introducing a rule that skips the approval check. When the processing entity is either unset or marked as UNKNOWN, and the data source is IMPORT, any pending approval check for that setting is automatically bypassed. (PAY-16147)

  • Adding default NoOp MessageLogEntryEnricher implementation, used by CRUD Client Connector Adapter, so the implementation side is not required (but it can) to provide it.(PAY-16210)

  • DpsResponse as response instead of String for DPS delete connectors. (PAY-16422)

  • MessageLogEntryEnricher is now strongly typed for DPS delete connectors (PAY-16422): MessageLogEntryEnricher<DeleteSettingRequest>,MessageLogEntryEnricher<DpsResponse> are required. If they are not provided, the default MessageLogEntryEnricher<?> noOpMessageLogEntryEnricher will be used.

Fixed

  • ChangeStreamHistoryLost (errorCode 286) indicates that a change stream can not be started with a specified date. The stream would repeatedly fail with the same error. The fix is introduced to handle this error correctly: falling back to querying the collection in order to catch up with the latest. Testing is done manually against Atlas MongoDB, where it can only be reproduced so far.

  • Fixed an issue where requests routed through client connectors failed when parameters contained whitespace or other URL-encoded characters.(PAY-18168)

  • Added missing @Bean annotation for (conditional on missing bean) DTOConverter class. Clients are not obligated to create their own implementation now.

OpenAPI schema generation

  • Improved accuracy for generated API documentation (OpenAPI) regarding lists of values and time zones. (PAY-15744)

    • Fields with specific allowed values (enums) now clearly list those options in the API definition.

    • Time zone fields now provide a validated list of all supported time zones.

  • Fixed swagger UI for Dynamic Processing Settings API (automatically generated). (PAY-14879)

    • Path and query parameters are now generated as string schema (not object like before).

    • Swagger UI url now goes to a /custom-api-docs instead of spring’s automatically generated /v3/api-docs (new spring and webflux version were wrongly generating path and query params as objects, instead of string).

Changed

  • Create setting - in case of setting having import source and not having processingEntity specified - this means processingEntity being null or having value UNKNOWN:(PAY-15412)

    • setting will be updated if it already exists in database

    • setting will be created if it does not exist in database

  • One DeleteSettingRequest type (removed DeleteScheduledSettingRequest as they are the same structure).

Breaking Changes

  • Introduced DpsResponse as response on DPS delete client connectors. Previously it was just String.(PAY-16422)

  • DeleteSettingRequest is now used on both client connectors for deletion as request type (removed DeleteScheduledSettingRequest as they are the same structure).(PAY-16422)