February 2020, 4.20 Release Notes

February 2020, 4.20 Release Notes

In this article:

Important

About SnapLogic Releases

  • Per the SnapLogic Release Process, all remaining Snaplex instances across customer Orgs are upgraded to the 4.20 build (master-6950-4.20 Patch 3) at 9 pm PT on March 21, 2020.

  • This 4.20 GA release includes the patches deployed to SnapLogic after the 4.19 GA release, as listed in the 4.19 Dot Releases page. 

  • We recommend that you upgrade to the latest Chrome or Firefox browser version and clear your browser cache before logging into the SnapLogic Intelligent Integration Platform (IIP).



Java 11 Support

Starting from the 4.18 August release, SnapLogic supports Java 11 for Groundplex instances. We recommend all customers to migrate to Java 11, since Oracle no longer releases security updates for Java 8. For details, see Upgrading Your Groundplex to Java 11.


New IP Whitelisting Requirements Reminder

We remind all customers of the new IP Whitelisting requirements that have been in effect since the 4.18 August 2019 release. Ensure that your network administrators review the following:

Platform 

New Features and Enhancements

  • Asset Palette: Introduces a new opt-in feature, providing a dynamic display of the Catalog for Snaps, Pipelines, and Pattern Pipelines. You can enable this new display through the User Settings dialog in Designer. In addition to freeing up more space on the Designer Canvas for you to build your Pipelines, the redesigned Asset Palette offers Pipeline Recommendation capabilities by using Convolutional Neural Networks that improve the quality of suggested Snap, Pipeline Pattern, and Pipeline through personalization. Iris recommends these Pipelines based on the Snaps you use. 

    You can take advantage of the following new capabilities when you use the opt-in Asset Palette:

    • Snap Search

    • Pipeline Search

    • Pattern Pipeline Search

    • Documentation Search in SnapLogic Designer

  • Expression Recommendation: Enhances the suggestion capabilities of Iris to include Expression Recommendation. In Snaps that use expressions (for example, Mapper Snap), the Iris Expression Catalog enables you to receive expression recommendations based on the input schema, and expressions in the Pipelines from projects where you have read access.

  • Enhancing the UI icons for the Expression Toggle to better distinguish between On and Off modes: 

Expression Toggle Off–Enter a value as a string.

Expression Toggle On–Enter a value as an expression.

When you click

, you can enter an expression in the adjacent field by clicking (
) to display a drop-down list of available expressions.

  • Additions to the SnapLogic Expression Language:

    • toLocaleString: When formatting a date, you can now pass a locale language-tag in the options object.

    • Array Functions: The following array functions are now available for Uint8 arrays.

      • Uint8Array.Of: Creates a new Uint8 array from a variable number of arguments.

      • Uint8Array.subarray(): Returns a new subarray from an Uint8 array, where the arguments are the indexes begin and end offsets.

      • Uint8Array.indexOf(): Returns the first index at which a given element is present.

      • Uint8Array.lastindex.Of(): Returns the last index at which a given element is present.

      • concat: Returns a new array that concatenates the initial array with the arrays or values provided as arguments.


  • Node Alerts: You can now view Snaplex node alerts on the Dashboard, where other information about your Pipeline executions is displayed. This change centralizes the location of monitoring information, enhancing the usability of this reporting functionality. Accordingly, these alerts no longer appear in the Activity Log in Manager.


  • New Pipeline Parameter: You can now capture the start and end times of Tasks with task.start and task.end, which you can pass as an expression in a Mapper Snap. This capability is particularly useful for Scheduled Tasks, where you view the last execution window.


  • Size Limitation on Pipeline Parameters: In this release (February 2020, 4.20), an additional limit is added which caps the total size of the Pipeline parameter values for one Pipeline execution (including parameters that are not captured) to 8MB. If the Pipeline parameter values exceed 8MB in size, then the Pipeline does not execute.

Known Issues

When you create or update a Task, the dialog displays a checkbox labeled Anomaly Notifications in preparation to enable a future functionality. Selecting the checkbox does not actually trigger any notifications.



Standard-mode Snaps

New Features and Enhancements

Reverting to the Old UI

You can revert to the old UI form by deselecting the New Form UI check box in the User Settings dialog. We will cease supporting the old UI form in a future release.

  • If you have built custom Snaps, then we strongly recommend you to recompile your custom Snaps using our latest SDK, so that your Snaps can take advantage of the latest performance optimizations and security updates. 

New Snaps

  • Flow Snap Pack: Introducing the Gate Snap, which relies on all upstream Snaps successfully executing before you send their consolidated contents as a single document to the downstream Snaps.


  • Salesforce Snap PackIntroducing the Salesforce Bulk Query Snap, which enables you to perform bulk SOQL queries on Salesforce.


  • Introduces the SuccessFactors Snap Pack, which enables you to work with the human capital management (HCM) system, covering everything from payroll to employee engagement. This Snap Pack includes the following Snaps:

Updated Snap Packs

  • Active Directory Snap Pack

    • View all elements of array fields in Search and List Users Snaps: Fixes the Search Snap and the List Users Snap wherein the Snaps displayed only the first element of an array field. Now, the Snaps display all the elements of an array field.


  • Flow Snap Pack: The Pipeline Execute Snap now provides the following capabilities:

    • Specify the Snaplex on which to run child Pipelines. You can now select the Snaplex on which to run the child Pipelines through the Execute On and Snaplex Path fields. The default option is executing the child Pipeline on the same Snaplex node as the Parent, but you can also specify a different Snaplex through the drop-down list, which includes the option to manually enter a Snaplex name.

    • Configure retry logic for child Pipeline executions. You can now configure retry logic for child Pipeline executions though the following fields: Number of Retries, Retry Interval, and Timeout fields. 


  • REST Snap Pack

    • Retain original file names when posting to Google Drive: The new Multipart related option in the Upload body type property in the REST Post [Not Recommended] Snap enables you to post files to the Google Drive API and retain the original names.

    • Obtain access tokens from REST endpoints automatically: The REST Account now has a new Grant Type option called Client Credentials. This enables the Snap to obtain an access token to the client ID and client secret through the token endpoint URL.


  • ServiceNow Snap Pack

    • Query both autogenerated and custom fields in ServiceNow: The ServiceNow Query Snap enhances its scope to include both autogenerated and custom fields.


Deprecated Snaps

  • LinkedIn Snap Pack: In this release, we retire the LinkedIn Snap Pack from the SnapLogic Snaps Catalog. Pipelines having the LinkedIn Snaps will no longer work.

Known Issues

  • Excel Parser SnapDoes not read password-protected Excel files and fails with the error: "Failure: Failed to parse input data."

  • PostgreSQL-Execute Snap: Does not support $$ as an escape character for enclosing string input, as $ is a reserved character for variable substitution in SnapLogic.

  • Cassandra-Execute Snap: The Cassandra-Execute Snap using Apache Cassandra V3 does not support $$ as an escape character for enclosing string input, as $ is a reserved character for variable substitution in SnapLogic.

  • Generic JDBC-Execute Snap: If a SELECT query in the SQL statement field in the Snap Settings contains duplicate column names, then the query result displays the column name twice, with the latter mention prefixed with the table name. If the column name occurs more than twice, the second entry is still prefixed with the table name but it displays the value of the last mention of the column in the query. The example below illustrates this behavior. 

    To avoid this issue, we recommend that you give unique column names in the query.

  • SOAP Execute Snap: After upgrading your Snaplex to 4.20 GA version, Pipelines with SOAP Execute Snap that uses the Apache CXF library might hang without executing. The Snap using HTTPComponents library executes successfully.


  • All Database Write (Insert/Update/Upsert) Snaps: When you set Auto commit to True in a database Snap Settings and Number of retries to more than 0 the retry functionality inserts duplicate records if the Snap tries reconnecting to the database. To avoid this error, we recommend you to do one of the following depending upon your use case:

    • Set Auto commit to false, or 

    • Set Number of retries to 0 to avoid duplicate records passing downstream while executing a Pipeline, or

    • Use a primary key in your database that does not allow duplicate records to be inserted into the database, or

    • Use an Upsert Snap instead of Insert Snap that overwrites any duplicate records. 

Before setting Number of retries to more than 0, contact support@snaplogic.com for guidance. 

  • NetSuite SOAP Snap Pack: The following NetSuite Snaps currently do not support custom records: NetSuite Get, NetSuite Get List, NetSuite Async Get, and NetSuite Delete.


  • Reltio Snap Pack: You cannot roll back the productized Reltio Snap Pack to a prior version due to an upgrade to the platform-provided AWS SDK version that it leverages.


  • Transform Snap Pack: If you are using OpenJDK 11 in the Snaplex on which you want to execute Excel Formatter Snaps, you must install Fontconfig on the Snaplex. Otherwise, the Snap displays an error.


  • Hadoop Snap Pack:

    • After upgrading your Snaplex to 4.20 GA version, Pipelines with HDFS Reader Snap that use Kerberos authentication might remain in the start state.

    • ORC Writer/Reader Snaps fail on S3 when using the 4.20 Snaplex with the previous Snap Pack version (hadoop8270 and snapsmrc528) displaying this error – Unable to read input stream, Reason: For input string: "100M" error 

    • ORC Reader/Writer and Parquet Reader/Writer Snaps fail when executing a Pipeline on S3 with this error – org.apache.hadoop.fs.StorageStatistics


  • Diff Snap (Standard mode): When using the new UI form to create new or editing existing Pipelines with Diff Snap, Output view name values go missing in Snap Settings after switching to Views or Info tab. The workaround is to switch back to the old UI form (disable New UI Form in User Settings) and then create the new Pipelines or edit existing Pipelines.


  • Workday Read Snap:

    • Using the old UI form, the Snap does not find existing Workday accounts.

    • Using the new UI form, the Snap crashes when validating a Pipeline displaying a null pointer exception error.


  • A Null Pointer Exception error displays when updating Snaps that contain empty property values in the new UI form. The existing Pipelines are not impacted unless a change is made on the Snap and saved. A workaround is to switch to the old UI form (disable New UI Form in User Settings). 



Prior 4.19 Snap Dot Releases in 4.20 GA 

The prior 4.19 Snap Dot Release updates are now a part of the current 4.20 GA release.

Snap Pack

Update Date

Build

Updates

Snap Pack

Update Date

Build

Updates

Snowflake

Feb 4, 2020 

db/snowflake8687

Fixes the Snowflake Bulk Load snap where the Snap fails to load documents containing single quotes when the Load empty strings checkbox is not selected.

SOAP

Jan 22, 2020 

soap8642

Fixes the SOAP Execute Snap where the Snap encounters the following issues:

  • The Snap throws NPE when generating a SOAP request template.

  • The Snap throws the following errorwhen making a SOAP call, if the SOAPAction HTTP headercontains a stringDoes not match an operation.

MySQL

Jan 21, 2020 

db/mysql8638

Fixes the MySQL Database Account where the associated Snaps produce a huge count of open file descriptors when theConfigure SSH Tunnelproperty is enabled.

MySQL

Jan 21, 2020 

db/mysql8635

Fixes the MySQL - Execute Snap where the retry option fails to establish a connection with the MySQL database, after an interrupted transmission.

Active Directory

Jan 16, 2020 

activedirectory8506

Fixes the Search Snap and the List Users Snap wherein the Snaps displayed only the first element of an array field. Now, the Snaps display all the elements of an array field.

Dynamics CRM

Jan 7, 2020 

dynamicscrm8531

Updates the Dynamics CRM Upsert Snap to process the GUID format, and the Dynamics CRM Search Snap to parse additional object schema types.

Snowflake

Jan 4, 2020 

db/snowflake8499

Adds the Handle Timestamp and Date Time Data property to Snowflake - Execute and Snowflake - Select Snaps. This property enables you to specify whether the Snap should translate UTC time to your local time.

Splunk

Dec 17, 2019 

splunk8425

Fixes an issue with the Splunk Search Snap where the output data did not display some of the preview fields.

JMS

Dec 16, 2019 

jms8420

  • Adds the following properties to the JMS Consumer and the JMS Producer Snaps to enable retry and reconnect features:

    • Number of retries: Lets you define the number of times the Snap should reattempt an operation before throwing a connection/network error.

    • Retry interval (milliseconds): Lets you define the number of milliseconds for which the Snap must wait between subsequent retries in case of a connection/network error.

  • Enables the JMS Producer Snap to clean up stale connections.

  • Fixes the JMS Acknowledge Snap where the Snap failed unexpectedly without providing a reason.

SuccessFactors

Dec 15, 2019 

successfactors8351

Introduces the SuccessFactors Snap Pack, which enables you to work with the human capital management (HCM) system, covering everything from payroll to employee engagement. This Snap Pack includes the following Snaps:

Dec 13, 2019 

  • db/azuresql8403

  • db/cassandra8404

  • db/jdbc8405

  • db/mysql8407

  • db/oracle8408

  • db/postgres8409

  • db/redshift8410

  • db/saphana8411

  • db/snowflake8412

  • db/sqlserver8413

  • db/teradata8414

  • vertica8415

Fixes an issue with various Update Snaps where the Snaps were unable to perform specified operations when:

  • An expression was used in the Update condition property.

  • Input data contained the character '?'.

MySQL

Dec 11, 2019 

db/mysql8390

Fixes an issue where the MySQL Snaps were unable to reconnect to the MySQL database after the breakdown of a connection.

Dec 9, 2019 

  • msdynamicsax8376

  • soap8375

The MS Dynamics AX and SOAP Snaps have a Library API drop-down list. When you select the non-default HTTP Components, there is a breaking change in the structure of the output response document between 4.19 GA version (snapsmrc528) and the latest patch version (msdynamicsax8376 and soap8375). 

We recommend that if you want to use the non-default (non-CXF) value for Library API, then you must use this latest patch version, as subsequent GA releases may result in Pipeline executions failing. 

If your current or new Pipelines use CXF as the Library API value, or do not handle SOAP response bodies greater than 1000 lines, or do not rely on NTLM authentication, then you can continue using your existing Snap Pack version (stable distribution: snapsmrc528).

REST

Dec 9, 2019 

rest8374

  • Adds a drop-down property Retry Policy to the REST Snaps to provide users with different retry options for connection and 4xx and 5xx error responses.

  • Fixes the REST GET Snap, which limited the output to five documents even when more output documents are expected.



Critical fix:

If your current or new Pipelines with REST Snaps use the retry functionality, we recommend you use this patch, as subsequent GA releases may result in Pipeline executions failing. Else, you can continue using your existing Snap Pack version (stable distribution: snapsmrc528).

Binary

Dec 6, 2019 

binary8369