Tonic Structural release information

Learn about what’s in the latest Tonic.ai product releases.
v224
May 27, 2021

Features

Added support for Db2 iSeries

Added support for Delta Table on Databricks

Added support for reading IAM roles off Databricks machines instead of providing IAM credentials

Added a UI notification when your Tonic version is 10+ versions behind

Added support for MongoDB 2.4 and 3.4

Added the ability to automatically skip tables that match a regular expression via an environment variable

Added the ability to obfuscate values inside an array in Mongo

Added the ability for the JSON Mask generator to parse JSON objects containing escaped characters and surrounded by quotes

Added the ability to automatically cast for mismatched types during downstream subsetting

Added a Regex generator

Added a Generative Adversarial Network Generator

Bug Fixes

Refreshes subset preview when table mode is changed

Improved handling of IAM credentials on Databricks when an IAM instance profile is present

Hide Other in generator dropdown when there are no additional generators

v207
April 29, 2021

Features

Added support for MongoDB

Added support for Amazon Redshift

Delta Table support on Databricks

Upgrades the subset preview with UI improvements

Bug Fixes

Better handling of adding foreign keys pointing to non-primary keys

Checks for PostgreSQL version mismatch

Remove generator button now works in synthesis mode and on key columns

Added support to break subsetting cycle when both Foreign Key and Primary Key are nullable

v202
April 20, 2021

Features

Subset Preview

Support for Google SSO, including ability to read group membership

Java UDFs on Spark for Character Scramble and MAC Address generators

Added custom value processor extension framework

Bug Fixes

Auto-increment on MySQL bug fix

No longer remote auto-increment on primary keys or on preserved tables

Fixes composite foreign key issue with one nullable column in key

Incremental mode now works when a rowversion or timestamp column is on the table

Fixed collation issue for MySQL 8

v199
April 8, 2021

Features

Add environment variable for altering MySQL batch size during CopyRows

Ability to search label on Foreign Key viewer

CSV generator support for tab/multi delimiters

Better performance tracking in the UI for upstream and downstream tables

Sunset Classic Subsetting in favor of the now default Full algorithm

Bug Fixes

Fix auto_increment issue on bigint columns

Don't fail if foreign key column has been removed

Fix Auto Increment on MySQL when dropping indexes

Better support for JSON during MySQL generation

v196
March 31, 2021

Features

Support added for non-primary key auto-incrementing columns

MySQL no longer requires locks on the source database during generations

Generators are now easier to remove in the UI

Reference tables can now be defined in subsetting configurations

Enhancements to the Foreign Key UI

Added a clickable link to the Job Start notification

New Character Separated Value generator added

Bug Fixes

Performance optimizations for the Address generator

Improved UI experience for workspaces with thousands of tables

Optimized memory usage for large workspaces during data generation jobs

v189
March 12, 2021

Features

Subsetting upstream has better handling for table relations with multiple constraint groups where one of the constraint groups is often null

Differential Privacy is now available for Continuous generator

Added new Tonic logos

Generators are not allowed on foreign key columns that are also primary keys

Subsetting is now functional when Primary Key Generators are applied to primary keys

Bug Fixes

Resolved data upload for MySQL

Oracle 19 helper improvements

HIPAA address generator fix for zip codes

Refresh data table after Foreign Keys update

v185
March 3, 2021

Features

Password reset functionality added

Search and Sort columns when adding Foreign keys in Tonic

Nullable Foreign keys are now an option when adding them in Tonic

New Date Shift generator added

Foreign Keys are now sorted alphabetically by default

Ability to set a starting point in the sequential integer generator

Bug Fixes

Fix in how we handle multi-column primary keys in subsetting

@ mentioning style improvements for commenting

UI fixes for Foreign Keys section

Enhancements to statistics generation with conditional + categorical generators

Copying Databricks workspace works as expected

v178
February 17, 2021

Features

Support for Db2 LUW added

New option to set strictness for schema changes

Added support for pg_repack extension

Added support for more Key generators in Spark

Added support for tinyint and smallint data types in subsetting

Bug Fixes

Better cache handling for subsetting

Improvements for NULL checking in Consistency On

Fixed issues in subsetting preview

Reduced collisions in Unique Email generator

Workers no longer crash when unable to obtain a queued job

Empty post-job scripts now throw a warning rather than failing the job

Better log messages with primary key generators fail

Fixed arithmetic overflow error when calculating SQL Server database size

Fixed upstream exhaustion in subsetting

v165
February 3, 2021

Features

Protection Audit Trail now logs enable/disable of Differential Privacy toggle

Support for Memory Optimized tables in SQL Server

Ability to add new relationships in the Foreign Keys section

NULL generator can now be used on columns with uniqueness constraints

New subsetting option: Full Algorithm (default is still Classic Algorithm)

Bug Fixes

Fixed issue with retrieving column names when adding FK in Foreign Keys section

resolved conflict when setting generator to consistent on a column with a Constant generator

Switching between email generator and unique email generator now clears state as expected

MySQL point columns no longer halt generation

v159
January 22, 2021

Features

New UUID Key generator

Support for PostgreSQL Client keys

Options to preserve OUIs and Uniqueness in MAC address generator

New HIPAA Address generator

Email generator can be used on synthesized tables

Custom Categorical generators can now be linked

Workspace ID copy button added

Column output data can now be made consistent on other column's data

Spark filtering of tables in Databricks

Improved logging

Bug Fixes

Better handling of times without timezone values in PostgreSQL

UI fixes

Subscriptions and Publications no longer copied in PostgreSQL

v154
December 23, 2020

Features

Improved performance of synthesized tables

Added new Foreign Key Viewer + Remover

Bug Fixes

Fixed issue with display of password reset errors

Fixed rendering issue with boundary of some popovers

v152
December 11, 2020

Features

API endpoint test_destination_db_connection added

User can now filter tables by schema in the Database View

Support for Hive + Spark datasource added

Support for synthesis on datetime primary keys

Improvements/Bug Fixes

Improved error messages displayed in the UI

Logging improvements

Synthesis mode improvements

Fixed UI issue with First connection wizard

v145
November 25, 2020

Better logging during job execution

Support for Spark + AVRO files

Various Spark improvements

v142
November 11, 2020

Features

Undo/Redo capabilities for workspace changes

More information in Job Details

New Strict Mode available when generating data via the API

Now supports for AVRO files

Now supports EMR Steps API

Bug Fixes

Error logging enhancements for Spark

Various UI improvements

v132
October 28, 2020

Features

Added support for Spark/Amazon S3 as a data source and destination

Improved Company Name generator

Added support for text and ntext types in SQL Server

Added support for Google Big Query as a data source and destination

Workspace ownership can now be transferred from user to user

Bug Fixes

AWS Commons extension no longer breaks data generations

JSON and XML Mask generator configuration fixes

Minor display fixes

v129
October 14, 2020

Features

Find and Replace generator introduced

Tonic saves a copy of the workspace configuration to job history every time a generation is started

You can now share workspaces with your SSO defined groups

Bug Fixes

Corrected rending issue for column sort option in Database View.

v123
September 29, 2020

Features

Support for PingID SSO

Option to download foreign key file

Social Insurance generator added

Bug Fixes

Test Connection errors now show why the connection failed

V119
September 17, 2020

Features

Added the ability to create post job scripts that will be executed against the destination server at the end of the generation

Added Cross Table Sum generator. Allows summing of rows from another table by partition

Added single sign-on support

Added Enterprise license key support

Added a check to validate the foreign key file before a generation executes

Allow maximum for Integer Key generator

Removed dependency on RabbitMQ

Added ability to have SQL Server and PostgreSQL trust server certificates in workspace editor

Additional logging was added around relationship integrity during subsetting

Added adjustable batch sizes for Oracle

Bug Fixes

Fixed several rendering issues in the table view

Tries multiple connection methods for Oracle

Supports Extended VarChar2s for Oracle

No longer hides foreign key column headings for synthesize mode

Job descriptions for jobs cancelled before they started running are more accurate

Testing the source database connection now works for viewers and auditors

Workspaces are now sorted alphabetically in the workspace drop down

Changing a linked generator now properly breaks the link

Foreign key columns now show up properly without needing a refresh after setting the primary key table to synthesized mode

Expand long column names on hover in the Privacy Hubs audit trail

Workspaces with broken connections to their database can once again be edited

Views no longer show in the list of tables for Oracle databases.

v107
August 20, 2020

Features

Workspace sharing - Allows sharing workspaces between multiple users with different access controls (This is an Enterprise Plan feature)

Added 'In' operator to the Conditional Generator.

Added environment variable to bypass certificate validation when connecting to databases with self-signed certificates.

Schema change detection will now flag columns with null generators that have been made not-null.

Performance

Significantly improved the speed that information is gathered about the source database affecting overall UI performance and schema change detection.

Added additional diagnostic information around query execution times to the logs.

Bug Fixes

Fixed issue where switching table mode to synthesized mode in Database View would not work.

Increase accuracy of error messages on SQL Server when tables fail to get created.

Integer Key generator in Oracle for Number columns now base off of the precision, stopping overflow

Resolved name collision when subsetting with a table that has more than one foreign key to the same primary key.

Fixed preview on tables that use the sequential integer generator.

Changing synthesized row counts from database view now saves properly.

Popover of column name on table view no longer flashes.

Large constant values no longer cause display issues in Database View.

Fixed issue with connection test sometimes failing when using MySQL.

Character Scramble now preserves null values when operation on JSON.

Fixed OID collision issue on Oracle.

Preview no longer fails when using complicated partitioning strategies.

Constant generator no longer loses preview when you click away.

v101
July 31, 2020

Features

ASCII Character Primary Key generator that supports a wider range of characters in the column.

New API Endpoint for getting information on a single data generation job

Key generators now work on unique columns

Improvements to PII Detection:

  • Added detection for columns containing passwords, postal codes, and VINs.
  • Reduced false positives for SWIFT codes, ICD9, ICD10, US Cities

Switched to a new MySQL driver

Make XML Mask generator more human readable

Allow synthesize mode on Conditional generator and Unique Email generator

Add event generator in Oracle

Performance Improvements

UI performance for resolving schema difference

Bug Fixes

Better checking of uniqueness requirements for columns

Fixed constraints on large tables timing out in SQL Server

Fixed conversion issue with XML columns outside of subsets during subsetting

Block subsetting with synthesized tables

Do not allow source and destination to be the same in MySQL

Make preview stay up to date when generator is removed from different view

Fixed vulnerability with lodash

v97
July 15, 2020

Features

Tables on SQL Server can now be updated in an incremental fashion where only the changes since the last generation are processed. More details here.

Added support for customer categorical generator in synthesize mode.

Date truncation generator has been added so you can truncate dates to a specified date part.

Added support for timestamp ranges in PostgreSQL.

Phone number generator now supports multinational phone numbers. The output phone number will match the country/region of the input phone number.

Integer key generator can now operate on an Int64/Long column.

Bugs

Fixed issue where a specifically sized payload could cause the API request to fail.

Geo generator properly passes through null values.

Added back remove table API.

Tables containing unicode characters now work in preserve destination mode on Sql Server.

Improved handling of transaction scopes for SQL Server.

Fixed issue where generators applied through the conditional generator sometimes used their default options during generation.

Generators added through autodetect are now able to be marked consistent/deferentially private.

Resolved multithreading issue using the key generators on tables with linked foreign keys.

SQL Server date columns no longer show time in the table view.

v93
July 1, 2020

Features

Added ability for full name generators to be consistent with partial name generators.

Generator popovers now scroll after reaching a certain height.

Add Random Double generator.

Add ability to delete Tonic account.

Improved job progress tracking for Oracle.

Allow workspaces to be imported and exported.

Added support for conditional generator on SQL Server image columns.

Negative numbers can now be used in the constant generator with numeric columns.

Added support for timezone arrays in PostgreSQL.

Performance Improvements

Significant performance increase when using the continuous generator.

Bug Fixes

No longer displaying out of date conditional generator configuration in the collapsed view.

Fixed issue with not being able to backspace the constant value on a constant generator applied to a numeric column.

Users can no longer duplicate subset targets on the subset configuration page.

Removed conditional generator as a sub-generator choice when using the XML or JSON Mask generators.

Fixed issue where consistency could not be applied to a generator inside the conditional generator.

Loading indicators on the table view are now more consistent.

Continuous generator now works with smaller partitions when generating statistics.

Job details page now scrolls when number of steps is too large for the screen area.

Fixed issue where adding a custom categorical generator inside the JSON Mask generator could cause an error.

Removing a table from the Schema Changes page now properly removes it from the subsetting configuration.

Disabled including tables out of subset was enabled when subsetting was not.

Fixed broken link for API documents on the Job Details page.

Fixed issue where sequential integer generator didn't reset itself between generations.

Forced browser to get new version of assets after each release.

Add SQL injection safety to generators that partition.

Fixed issue with switching between workspaces on the jobs view.

Moved popovers in database view to not be blocking other columns.

Fix issue with attribute info generator failing on empty attributes.

Stopped job progress from updating after job is complete.

Fixed issue with canceled jobs still running if they were cancelled before they could run.

v90
June 17, 2020

Features

Added the ability to specify a domain and enable consistency on the unique email generator

Conditional generator can now be used with the Unique Email generator

Added confirmation step for canceling a generation.

Added support for JSON and JSONB arrays in Postgres.

Performance Improvements

Updates to your workspace are now done through JSON Patch.

Bug Fixes

Fixed issue where a table was unable to be switched to synthesized mode.

Fixed issue where min and max on the random integer generator were not editable.

Fixed issue where multiple changes might not be saved properly if executed within a few milliseconds of each other.

Fixed issue where constraints failed to apply to a large Sql server database.

Fixed display issue where the password input appeared to be filled in on the destination database connection screen.

Swagger docs no longer report enum fields as integers.

Fixed issue where edit, copy, and delete workspace buttons where still clickable even when disabled.

Decreased clickable area on consistency and differential privacy switches.

Fixed issue with NaN values in PostgreSQL double fields.

v87
May 29, 2020

Features

A new subsetting option allows you to process tables that are not included in your subset.

Several Conditional Generator improvements:

  • Conditional Generator can now filter rows by a regular expression.
  • Conditional Generator now supports the following additional generators: Categorical, Custom Categorical, Alphanumeric Key, Numeric String Key, Integer Key.
  • 'Is null' and 'is not null' operators added to conditional generator

Custom Categorical Generator now supports numeric types.

Random timestamp generator can now be added to text columns.

Password managers are now prevented from interfering with the database connection form.

Improved logging for constraint application on SQL server.

Renamed 'private' to 'sensitive' when referring to a column with data that needs to be protected.

Column headers are now red when a column is sensitive but not protected.

Performance Improvements

Workspace updates no longer happen on keystroke and will now wait until you exit the field or popup.

Changed the way the application loads workspaces to increase performance for large workspaces.

Bug Fixes

Fix display issue with Custom Categorical Generator when there were no categories.

Fixed error message when applying random timestamp generator.

Fixed issue with column editor size changing when marking a column as sensitive.

Fixed an issue with xml columns on SQL server

v84
May 12, 2020

Features

Tables can now be filtered by their current mode in the database view.

Added support for the 'contains' operator on the conditional generator.

Company name generator now supports consistency.

Added version check when editing a workspace to better support multitab/multibrowser use.

Multiple users can now edit the same workspace without worrying about race conditions. Note: this is a first step, more multiuser features are in development.

Performance Improvements

Improved speed of tables in mask mode by fixing issue introduced in v76.

Bug Fixes

Fixed issue with applying a large number of constraints with SQL Server.

Random boolean, IP address, and random integer generators now work correctly with the conditional generator

Tasks that complete immediately now display correctly in the job details page.

Fixed display issue with data preview button on Privacy Hub.