V704 - V756

A new entry is added each week, and contains the release notes for all of the Tonic versions that were released during that week.

V751 - V756

March 17, 2023
Added a confirmation step when updating the baseline configuration of a generator preset from a column configuration panel.
Fixed an issue where job failures sometimes caused the worker process to crash in a way that prevented new jobs from running.
To improve Tonic web application security, added X-Frame-Options/X-Content-Type-Option headers.
  • Corrected an issue on the workspace configuration page so that read-only items are no longer clickable.
  • You can now use connection strings to connect to the source and destination databases.
SQL Server
  • Fixed an issue where data generation failed when all URNs in the database have no dependencies.

V748 - V750

March 14, 2023
Setting the default configuration for generators (Requires an Enterprise license)
The Generator Presets view allows you to configure the default configuration for generators. The current configuration is used whenever that generator is assigned to a column.
To update the configuration, you must be an owner or editor of a workspace in the instance.
In the configuration for a column, you can override the saved default configuration, which we call the baseline configuration. You can also revert to the current baseline configuration or save your configuration as the new baseline configuration.
Other updates
On the workspace management view, the workspace options are now included in the collapsed version of the heading.
For free trial users, the option to create a workspace is always visible in the Tonic heading.
For SAML SSO, if the value of NameID is not an email address, Tonic uses the email claim in the SAML response.
  • Added a TONIC_WORKSPACE_DEFAULT_ERROR_ON_OVERRIDE environment variable to determine whether new Databricks tables ErrorOnOverride by default. The default value is true, indicating that new tables ErrorOnOverride.
SQL Server
  • Changed the default value of BYPASS_MS_XML_PARSING from false to true. The variable indicates whether to convert XML columns to nvarchar(max) to avoid potential XML parsing bugs.

V741 - V747

March 10, 2023
Releases 742 and 743 were removed from quay because of a regression that was fixed in later releases.
Graph View for subsetting
The Configuration tab of Subsetting view now includes a toggle to switch between Table View and Graph View.
Table View is the existing tabular list of tables.
Graph View is a diagram view that displays the tables and the relationships between them. Similar to Table View, when you click a table in Graph View, the table details panel displays for that table. You can configure subsetting from either view. For more information, see Graph View.
On Graph View, Tonic adds a marker when the subset configuration for a table changed since the last subsetting data generation. A table might be added to the subset, removed from the subset, or modified within the subset. See Identifying configuration changes since the most recent subsetting run.
Tonic data encryption
The new Tonic data encryption feature, available for Professional and Enterprise licenses, allows you to set up a configuration to decrypt source data before applying a generator, encrypt transformed data before writing it to the destination database, or both.
Tonic data encryption uses AES encryption.
Tonic data encryption requires you to set environment variables for the decryption key (TONIC_DATA_DECRYPTION_KEY) and encryption key (TONIC_DATA_ENCRYPTION_KEY). Both keys must use the same key size - either 128, 192, or 256 bits.
Admin users configure Tonic data encryption from the Data Encryption tab of the Admin Panel.
When you enable Tonic data encryption, the generator configuration includes a setting to indicate whether to use it for that column.
Other updates
Fixed an issue where navigating to Database View from Schema Changes view for a table-specific issue did not apply the correct filters.
Fixed an issue where workspace import could inadvertently add multiple subset targets in the same table.
Added support for ssh-rsa for data connections.
Improved error logging for the Timestamp Shift generator.
Fixed the display for the import workspace dialog.
  • The new ObjectId Key generator allows you to de-identify object ID columns.
  • Moved the scanning of MongoDB collections into the Tonic worker.
  • Fixed an issue that caused data generation to fail with the error canceling statement due to statement timeout.
SQL Server
  • Fixed an issue where a bug in the SQL Server Management Objects (SMO) library caused data generation to fail when using partitioning in Azure.
  • Fixed an issue that caused data generation to fail when system tables were included.

V729 - V740

March 3, 2023
When you log back in to Tonic, it now displays the workspace management view for the most recently viewed workspace.
Improved error messaging for rarely occurring user authentication issues.
Fixed display issues on the Subsetting view where part of the subset results graph did not display and the Configuration tab did not scroll.
Amazon Redshift
  • Fixed an issue where indexes created with an expireAfterSections value are not created in the destination database.
  • Fixed a regression where unscanned collections did not display in workspaces.
  • Fixed an issue that prevented Tonic from being able to connect to MongoDB-compatible DocumentDB databases.
  • Fixed an issue where DocumentDB jobs failed when run from Windows.
  • Updated to ensure that TONIC_WRITE_PARALLELISM is always 1, to prevent lock timeouts.
  • Increased resilience around possible failures when retrieving a MySQL schema during data generation.
SQL Server
  • Improved performance when reading large fields.
  • Fixed an issue that caused data generation to fail with the error Sequence contains no matching element.
  • Fixed an issue that caused data generation to fail on SQL Server 2014.

V721 - V728

February 24, 2023
As of V724, the AI Synthesizer generator is by default not available. To enable the AI Synthesizer generator, set the environment variable TONIC_NN_GENERATOR_ENABLED to true. If the AI Synthesizer generator is assigned in a table, but the environment variable is false, then data generation fails.
During subset processing, when Tonic encounters a circular dependency, to break the circle, it nullifies the values of one of the foreign key columns. By default, it nullifies all of the foreign key column values. A new environment variable, TONIC_SUBSETTING_AGGRESSIVELY_NULL_CYCLICAL_FKS, controls the behavior. By default, the value is true. If you set the value to false, then Tonic only nullifies foreign key values that do not exist as primary key values in the other table.
Fixed an issue where authentication using Azure SSO failed if the user was a member of a large number of IdP groups.
Improved detection during sensitivity scans of columns that contain birth dates.
  • Fixed an issue where adding a new null type field to the data caused data generation to fail.
  • Fixed an issue where data generation returned the following error: Specified argument was out of the range of valid values. (Parameter 'minSize').
  • Fixed an issue where tables with generated columns, but no generator assignments, were not correctly copied to the destination database.
  • Improved handling and messaging for connection timeouts.
  • Fixed an issue where retrying a connection multiple times returned an incorrect error.
SQL Server
  • Fixed issues where users could not configure data generation for tables that contained hierarchyid columns.
  • Fixed an issue that prevented Preserve Destination from being used on schema-bound tables.
  • Fixed an issue that prevented Incremental and Preserve Destination table modes on memory-optimized tables.
  • Fixed an issue where column attributes such as the nullability of a column were not correctly reflected in the destination database.
  • Fixed an issue where schema binding was not maintained in the destination database.

V714 - V720

February 17, 2023
Redesigned Tonic navigation
As of V719, we have redesigned the Tonic navigation. The left navigation menu is removed. On Workspaces view, click the workspace name to display the workspace management view for that workspace. The workspace management view contains a horizontal navigation bar to provide access to the workspace configuration and generation tools, and a heading menu to provide access to other workspace actions.
On Workspaces view, the first column is now a checkbox to select workspaces to which to apply an option from the Actions menu.
The Tonic application header contains links to Workspaces view and the Admin Panel.
New table filtering for Google BigQuery
As of V717, Google BigQuery supports table filtering. On the table mode selection panel, for tables that use De-Identify mode, you can provide a WHERE clause to filter the records that are included in the destination data.
Other updates
Fixed an issue where Tonic workers did not start after an upgrade when a read-only file system was mounted for custom value processors.
Improved the detection of vehicle identification numbers (VINs) in source data.
  • Improved generator recommendations for columns that are part of a compound unique constraint.
SQL Server
  • Fixed an issue that caused jobs to fail when none of the tables were assigned De-Identify mode.

V704 - V713

February 10, 2023
Fixed an issue where when subsetting used parallel processing, the subsetting steps displayed incorrectly.
Improved the error message that is displayed when unsupported data types are present in a table.
On the Subsetting view, on the row count popup, provided a clearer explanation when the destination row count is larger than the source row count.
Fixed an issue where simultaneously updating workspace permissions for multiple users failed to apply the updates.
Made some small performance improvements to the Regex Mask and Array Regex Mask generators.
Improved the job cancellation logic to ensure that selecting the cancel option actually cancels the job.
When a SAML SSO login is initiated, Tonic now redirects the browser to the correct URL.
When Tonic detects an invalid or deprecated generator, it no longer returns the error message Unexpected generator id {generatorId}, create a dedicated Metadata class for this generator.
  • Fixed an issue that caused lockouts and timeouts on the destination database.
  • Reduced the number of destination database permissions that are required for data generation.
  • When you use the Limit Schemas feature, and you choose to filter to only include specific schemas, Tonic no longer includes all of the extensions in the database. It only includes extensions that are related to the included schemas.
  • Values are now truncated to fit the char type before they are written to the destination database.
  • Generators that support consistency can now be made consistent with columns that are user-defined enum values.
  • The Conditional generator can now use columns that are user-defined enums as conditions to apply sub-generators.
  • Tonic now correctly determines whether to truncate a unicode string when fitting the string into a data type that is close in size.
  • Improved resiliency to destination database connection failures.