Resolved Issues

The following issues have been resolved with this release of PingDataSync Server:

Ticket ID Description
DS-1261 The collect-support-data tool can now use the --timeRange argument to collect logging information within a specified time range.
DS-1706 Updated interactive dsconfig to include an option for toggling between sorting similar properties together and sorting them alphabetically.
DS-2880 When DSEE servers are prepared for synchronization, the nsslapd-changelogmaxentries DSEE configuration property is no longer set to 500,000. The size of DSEE's Retro changelog is now limited entirely by the nsslapd-changelogmaxage configuration property.
DS-3095 Added a new search-logs tool. Similar to the command-line tool grep, the search-logs tool searches across log files to extract lines that match the provided patterns. The search-logs tool can handle log messages with multiple lines, extract log messages within a specified time range, and include rotated log files.
DS-5425 Global synchronization no longer needs to be enabled when using the set-startpoint command to set a synchronization start point.
DS-8794, DS-9652, DS-12704 The setup and initial configuration tools now support offline modes that can be used to bootstrap the server configuration while it is not running. The files that these tools generate are saved to the server's resource directory.
DS-10010 Reduced the memory overhead of debug logging in high-throughput environments by sharing logging buffers across multiple threads.
DS-10447 Updated the resync command to display additional error messages to the console and a log file. The location of the log file defaults to <server-root>>/logs/tools/resync-errors.log but can be overridden by using the --consoleLogFilePath option.
DS-10558 To prevent the circular synchronization of changes, the Sync Source ignore-changes-by-dn configuration parameter now defaults to the default synchronization user, cn=Sync User,cn=Root DNs,cn=config.
DS-11067 Added properties to the task backend for limiting the number of log messages that are retained in task entries, as well as for limiting the size of the in-memory representation of those entries. The server error log still records all log messages that a task generates, even if they are not retained in the corresponding entry in the task backend.
DS-11522 Updated the server's JVM arguments to always log garbage collection (GC) information to a rotating set of log files stored within logs/jvm/gc.log.N. The file system usage is limited to 300MB. If the server had previously been configured with VERBOSE_GC, then GC logging information is no longer logged to logs/server.out.
DS-11936 Constructed mappings now support mappings that are conditional with the dsconfig parameter conditional-value-pattern. Each parameter consists of an LDAP filter and a pattern, the former of which must be matched for the pattern to be used.
DS-12123 Updated the Configuration API output to include undefined properties and values.
DS-12182 Updated the setup tool to use HTTPS for initial configuration. Unsecure HTTP can be enabled post-setup or by using the non-interactive setup.
DS-12245 Updated the Configuration API to support filtering, sorting, and paging for object list operations. For more information, refer to PingDataSync Server Administration Guide.
DS-12285 Fixed an issue in which changes to SMTP External Server configurations did not take effect until after a server restart.
DS-12287 Addressed cases in which certain messages might have been suppressed in logs and alerts.
DS-12483 Added support for running on Oracle Java 8 and OpenJDK 8 platforms.
DS-12496 Added logging of all HTTP requests that are disallowed because of CORS. This fix simplifies the process of troubleshooting HTTP 403/Forbidden errors.
DS-12576 Updated the Detailed HTTP Operation Log Publisher to log the appropriate return code, 404 NOT FOUND, when defined endpoints do not handle a request.
DS-12579 The server can now detect an out of file handles situation on the operating system, and can shut down to prevent running in an unreliable state.
DS-12616 Updated the prepare-* tools to avoid unnecessary confirmation for trust of a prepared server's certificate when the --trustStorePath argument specifies a trust store that establishes trust.
DS-12681, DS-13475 Improved the server's support for selecting TLS cipher suites. When the server is configured to use a specific set of cipher suites, it now validates that the JVM supports all of the configured suites. When the server is not configured to use a specific set of cipher suites, it customizes the set of default suites to prioritize the ones that use strong cryptography, especially suites that offer forward secrecy, and to exclude the ones with known weaknesses.

Fixed an issue in which a JVM bug blocked a Sync Pipe after the following error was reported to the error log:

AckHandler#completed called with a value that's not pending.
DS-12727 Added an Available File Descriptors gauge to monitor the number of available file descriptors. The gauge detects whether a server is running out of file descriptors and can degrade the server appropriately.

Updated the resync command to include the Recent ops/second statistic, which displays the number of operations per second for the previous ten-second iteration.

To maintain consistency with other tools, the Average ops/second statistic has been renamed to Overall ops/second.

DS-12798 MakeLDIF templates now have the ability to escape special characters like curly braces ({}), angle brackets (<>), and square brackets ([]) by using a backslash (\). For additional examples, refer to config/MakeLDIF/examples-of-all-tags.template.

The following UnboundID product names have changed:

  • Identity Data Store has been changed to Data Store.
  • Identity Proxy has been changed to Proxy Server.
  • Identity Data Sync Server has been changed to Data Sync Server.
  • Identity Broker has been changed to Data Broker.
DS-12833 Updated the alert-handler configuration to indicate whether the alert handler is invoked asynchronously in a background thread or by the thread that generates the alert. For alerts that are generated during the course of processing an operation, invoking potentially time-consuming alert handlers in a background thread can avoid impacting the response time adversely for the operation, while still making administrators aware of the relevant issue.
DS-12833 Updated the server to provide support for SMTP connection pooling. When sending an email message, the server attempts to reuse an existing SMTP connection rather than establish a new connection for each message.
DS-12880 Fixed a rare condition that might have caused the logger rotation and retention thread to exit under heavy file system load or during a network file system outage.
DS-12897 Fixed an issue that changed the dsconfig tool's complexity settings whenever the advanced arguments of some tools were used.
DS-12969 Improved the server locking that dsconfig uses in offline batch mode. The server lock is now held for the entire batch duration instead of for each invocation. Also reduced the probability of contention for file locks that server tools use to determine the server status.
DS-13163 Addressed an issue in which the data definition language (DDL) log field mappings for the JDBC error log were not previously documented.
DS-13242 Updated the prepare-external-server tool to suppress output when run with the --quiet option.
DS-13552 Fixed a log publisher defect that resulted in an unreadable file when compression and signing were enabled simultaneously.

Updated the create-systemd-script tool by adding the following capabilities:

  • Resource limits for available open file descriptors (NOFILE)
  • Shared memory reservations (MEMLOCK)

The generated script lists the recommended file descriptors limit and the resource limit setting for enabling large page support. The settings in the create-systemd-script output supersede prior documentation for setting the number of open file descriptors on non-systemd systems.

DS-13718 Fixed an issue in which the resync command incorrectly reported synchronized entries as modified. This issue occurred with Active Directory Sync Destinations.
DS-13769 Fixed an issue in which the stale state for remote sync pipes could be merged repeatedly with an active PingDataSync Server, either after failover or when starting and stopping the sync pipes. When a sync pipe is deleted, its saved sync pipe state is now removed.
DS-14061 Fixed an issue in which a set-startpoint command could fail when synchronizing from an Active Directory LDS source. Additionally, when synchronizing changes to an Active Directory LDS instance, the userAccountControl attribute is no longer included when creating new entries.
DS-14140 The ldifsearch command now supports the option ---isCompressed for LDIF files that have been compressed with gzip.
DS-14186 Fixed an issue in which an active PingDataSync Server could accept a smaller change number when merging the remote state for a changelog Sync Source.