PingDirectory suite of products 9.3.0.5 (March 2024)
Added logging history for the setup tool
Improved DS-47831 PingDirectory
A copy of the setup script output is now saved to an archive file in the /history directory. This should help with troubleshooting installations where multiple server images have been extracted on top of each other and setup has been run multiple times.
Fixed a NullPointerException caused by an unconfigured alert handler
Fixed DS-47455 PingDirectory, PingDirectoryProxy, PingDataSync, PingDataMetrics
Fixed an issue where a NullPointerException was thrown when an alert or alarm was raised and one or more of the alert handlers weren’t configured. This most commonly happened when the server was being stopped.
Now, instead of throwing a NullPointerException, the server logs this message: Alert notification '<notification>' will not be processed by alert handler '<alert_handler>' since that alert handler does not have configuration.
Fixed an encoding issue with UTF-8 in URI search filters
Fixed DS-48300 PingDirectory, PingDataSync
Fixed an issue where PingDataSync couldn’t properly encode certain UTF-8 characters used in a URI search request filter sent to an external server. The server is now able to encode filter values that include any UTF-8 characters.
Fixed an issue with attribute duplication
Fixed DS-48585 PingDirectory
Fixed an issue where replace operations that target attributes with subordinate types would cause the subordinate attribute values to be duplicated.
Fixed an issue where the server could throw a DATABASE_LOCK_CONFLICT error
Fixed DS-45949 PingDirectory
Fixed an issue where aborting a transaction on a PingDirectory server could sometimes fail to release a write-lock, causing all subsequent transactions to fail with the error DATABASE_LOCK_CONFLICT until the server was restarted.
Fixed a potential NullPointerException during replication
Fixed DS-47289 PingDirectory
Fixed a potential NullPointerException that the server could throw during replication if missing changes were found for a replica, but that replica didn’t exist on all servers. This scenario can happen when an obsolete replica is purged concurrent to the check for missing changes.
Fixed a replication issue where a suffix could have multiple generation IDs
Fixed DS-47695 PingDirectory
The generation ID, represented by ds-sync-generation-id, is a value used by replication to determine if replicas are compatible and can be replicated. To address the issue of multiple generation IDs for the same suffix, the generation ID is now calculated independent of the disk order in which the entries are stored. This new behavior is helpful when entries are imported on new servers instead of initializing them.
Fixed an issue with dsreplication status information
Fixed DS-47326 PingDirectory
Fixed an issue where running the dsreplication status
--displayservertable command sometimes failed to display peer server statuses or generation IDs.
Fixed the default behavior of check-replication-domains
Fixed DS-47655 PingDirectory
Changed the check-replication-domains tool to default to the server’s root directory and removed the --serverRoot argument requirement.
Fixed an incorrect suggestion in the replication terminal output
Fixed DS-47878 PingDirectory
Fixed a problem where dsreplication initialize suggested using the --force option if you were unable to connect to the server properly.
Fixed an issue that prevented use of the Changelog Password Encryption plugin in replicated environments
Fixed DS-48205 PingDirectory
Fixed an issue where the Changelog Password Encryption plugin would not work properly in a replicated environment if a password was changed with a Password Modify extended operation.