Release Notes 21.0.443
1. RELEASE INFO
Product | AGILE DATA ENGINE |
Release | 21.0.443 |
Release date | 27th of September 2021 |
Release status | RELEASED |
Release type | MAJOR.MINOR.UPDATE.PATCH |
SaaS Availability | AVAILABLE | RESTRICTED (by request) |
AWS Availability | AVAILABLE | RESTRICTED (by request) |
Azure Availability | AVAILABLE | RESTRICTED (by request) |
Patch release scope | Not applicable | Design | Runtime | SaaS |
2. CONTENT OF THE RELEASE
2.1 Highlights
New External APIs for customers' connectivity to Deployment Management (promote, demote, deploy etc.) in SaaS Enterprise Edition (in limited preview)
New External APIs to export load definitions from Runtime environments in SaaS Enterprise Edition (in limited preview)
New timeslot logic as a performance tuning option for event data loading
Data Vault: New Multi-active Satellite entity type and load SQL generation
Generic 1:1 Load SQL generation is supported in all of the DBMS services (in public preview)
Export Package (JSON) per Commit / Recent (uncommitted) in Designer
New Copy from Refs. automation e.g. in case of Link entity types
2.2 Security
Security fixes
ID | Description |
---|---|
ADE‑XYZ | Updates 3rd party dependencies |
2.3 Infrastructure
Improvements
ID | Description |
---|---|
ADE‑3773 | Upgrade of Terraform to version v1.0.3 |
ADE‑4204 | Update AKS version to 1.20.9 |
Fixes
ID | Description |
---|---|
ADE‑4011 | Starting Jenkins takes time in AWS |
ADE‑4057 | Azure installation complains about unused variables |
ADE‑4128 | ade main configuration read in tests complains about non-existing azure object |
ADE‑4149 | Remove AWS ecs LoadBalancerPublicSecurityGroup |
2.4 Designer
New Features
ID | Description |
---|---|
ADE‑3993 | Export Package (JSON) per Commit / Recent (uncommitted) in Designer |
Improvements
ID | Description |
---|---|
ADE‑3730 | Focused/hovered element could be more highlighted when navigating with tab e.g. |
ADE‑3763 | Add sorting and in-place filtering in References list in Designer UI |
ADE‑3857 | Hover colors and tab selection in lists to be more distinctive in Modeler |
ADE‑3944 | Improve Move to another package with search and disabling the button when nothing selected |
ADE‑4014 | Merge SVGs to use them as components |
ADE‑4126 | Technical attribute type freely selectable regardless on the entity types |
3rd party upgrades
ID | Description |
---|---|
ADE‑3975 | Upgrade React version and related 3rd party components |
ADE‑3558 | Update deprecated react code |
ADE‑3869 | Migrate the frontend of Designer to TypeScript |
ADE‑3977 | Upgrade sass library |
ADE‑4009 | Upgrade Webpack from V4 to V5 |
ADE‑4012 | Organize 3rd party packages |
ADE‑4010 | MUI Theme import |
Fixes
ID | Description |
---|---|
ADE‑4026 | Memory leak issue with visualizations |
ADE‑4055 | App search crash react app |
ADE‑3613 | Problems when zooming in Designers UI |
ADE‑3874 | 'Copy by Ref.' button wrongly disappears under certain condition |
ADE‑4004 | Clustered nodes in visualization fail to resize correctly if label length is increased from default value |
ADE‑4019 | Broken buttons |
ADE‑4030 | move to another package in data model under edit mode is not working |
ADE‑4053 | Masking policy not shown on Modeler Export SQL for Snowflake |
ADE‑4158 | Entity reference modification parent attributes malfunction |
ADE‑3973 | Variable <target_entity_logical_name> does not work with VIEWs |
ADE‑4098 | Commit message length over 200 chars fails the commit |
2.5 Configurability
Improvements
ID | Description |
---|---|
ADE‑4142 | Modified Config entity defaults can not be installed to a new environment |
ADE‑4134 | Migration for config_load_templates import |
ADE‑4099 | Default load per entity type list does not update after deleted entry and import |
2.6 Deployment Management
Improvements
ID | Description |
---|---|
ADE‑3879 | Manual demote for a promoted package |
ADE‑4159 | Make metarepository api aware of running environment and stop generating history entries on RUNTIME |
ADE‑4023 | Promotion search needs capability to return latest deployment state to make visualization easier/faster |
ADE‑4072 | Jenkins to persist users created from the UI |
ADE‑4034 | Commit information to package summary data and commit id to package commit history |
Fixes
ID | Description |
---|---|
ADE‑3720 | Commit Id should be stated instead of Revision in job description |
ADE‑4157 | Deployment jams when package being installed has multiple dependencies and dependencies are partially installed |
ADE‑4013 | Waiting deployPackageOrder fails |
ADE‑4062 | Changing schema & renaming table does not use alter table in Snowflake |
ADE‑4074 | Jenkins curl commands fail to self-signed certificate error |
ADE‑4133 | Environment package rules do not get updated |
ADE‑3840 | Verify env dependency and package rule validity expiration use timestamps correctly |
ADE‑3935 | Jenkins easier (log) console access |
ADE‑3936 | Jenkins Package Job visualization improvements |
2.7 Loads and Workflows
New Features
ID | Description |
---|---|
ADE‑3780 | New timeslot logic as a performance tuning option for event data loading |
ADE‑3992 | Multi-active Satellite entity type and SQL load generation |
ADE‑3995 | Generic 1:1 Load SQL generation support for BigQuery, Azure Synapse, Azure SQL DB |
Fixes
ID | Description |
---|---|
ADE‑3971 | Executor cannot handle bad gateway (502) error but fails without retry |
ADE‑4025 | Run ID migration logic is not working based on schema and entity name |
ADE‑4038 | Logic based on attribute name DV_RUNNING_ID to toggle multi-active satellite load SQL generation is broken |
ADE‑4046 | Generated crawler loads cause dag run failure because of missing entityId |
2.8 DBMS Support
Improvements and Fixes
ID | Description |
---|---|
ADE‑3750 | Support for SUPER data type in Amazon Redshift |
ADE‑3835 | Update Google BigQuery JDBC driver |
ADE‑3882 | Amazon Redshift COPY prefers to use IAM_ROLE instead of CREDENTIALS |
ADE‑3744 | Variables references (tokens) not working in manifest load + Azure Synapse SQL + override_file_load |
ADE‑3987 | Make BigQuery table changes to use more ALTER |
ADE‑4021 | BigQuery affected rows not showing correct information |
ADE‑4093 | BigQuery to be location aware |
ADE‑4094 | Support table level permission handling for BigQuery |
ADE‑4108 | BigQuery to support newlines in text field by default when loading CSV |
ADE‑4111 | File format option support for BigQuery |
ADE‑4165 | BigQuery does not cast singular values in hash-function |
ADE‑4062 | Changing schema & renaming table does not use alter table in Snowflake |
ADE‑4053 | Masking policy not shown on Modeler Export SQL for Snowflake |
ADE‑3973 | Variable <target_entity_logical_name> does not work with VIEWs |
ADE‑2646 | Snowflake+JDBC: set application connection string to AGILEDATAENGINE |
ADE‑2647 | Snowflake+Python: set application=AGILEDATAENGINE |
2.9 Dashboards
N/A
2.10 SaaS Editions
Notify API
ID | Description |
---|---|
ADE‑3890 | notify-api to support meta content_length |
ADE‑2845 | Notify API: Error reporting improvements |
External API
ID | Description |
---|---|
ADE‑3830 | Publish environment/instances/deployment paths to external api |
ADE‑3831 | Publish deployment information to external api |
ADE‑3949 | Publish promotion operation to external api |
ADE‑3965 | Exposing external api endpoint to expose loads |
ADE‑4033 | Make External API of load exports use pre-signed URLs technique for big json objects |
ADE‑3953 | Add a result limit parameter to promotion queries |
ADE‑3954 | Add limit parameter to the promotion query endpoint |
ADE‑3964 | Exposing manager api endpoint to generate and return loads and improve load json content with version and generation time |
ADE‑4058 | Add endpoint to return all runtime environments at once |
3. NOTIFICATIONS
3.1 Supported Upgrade Path
From 20.0.365 to 20.1
From 20.1 to 20.2.
From 20.2 to 21.0.435 (in Private Azure mandatory, in Private AWS optional)
From 21.0.435 to 21.0.443
Upgrading from earlier releases
First to 20.1.380.patch1 and then to 20.2 and then to 21.0.
E.g. from 19.3.334.patch4 to 20.0.354_patch7 and then directly 20.1.380.patch1 (or any latest of 20.1), then to 20.2.396.patch5 and finally to this release.
See earlier release notes also if upgrading from older releases.
3.2 Automatic migration mode need to be set for Deployment Management migration
Main configuration parameter deploymentApiMigrationMode should be set to value MINIMAL.
The migration will take place when Deployment API service starts and it will migrate the information of deployed and promoted and to-be-promoted packages into Deployment API's database.
Also, it will migrate the entity and config packages from build repository to new commit repository (based on the database and S3/Blob storage).
3.3 Automatic Metadata Repository Database snapshots in Private AWS edition
When ADE update detects release change or PostgreSQL version change in main configuration, database snapshots will be created from all ADE RDS PostgreSQL instances of that environment.
This happens by default as a post step in update and the retention time of 62 days is applied for these snapshots. This feature can be configured in main configuration if needed.
3.4 Private Azure edition: bastion hardening CentOS image has changed
If installing ADE to Private Azure or updating bastion to apply bastion hardening, the new Centos image to be used is defined and consult our Professional Services.
If trying to apply bastion hardening with earlier ADE release versions, it will fail. Corrected bastion hardening to this release.
This only concerns new Private Azure installations or if otherwise needed to re-install the bastion host with the hardening. Existing hardened bastions will work.
3.5 Private Azure edition: AKS cluster version upgrade
The AKS version will be upgraded to 1.20.9 by this release. Also AKS node pool version will be updated to the same as AKS version.
The update of the node pool version requires re-creation of the AKS cluster.
3.6 Metadata Repository Database's PostgreSQL version upgrade
If not yet done with earlier release, in AWS edition the PostgreSQL version will be upgraded from current 9.6 to 11. This took about 25 minutes per environment in our test environment. Dependent on the database sizes.
In Private Azure edition, the upgrade is not done by default. It must be done by you manually. The PostgreSQL upgrade from 9.x to 11 should already be done with earlier release 20.2.
3.7 Private Azure edition: PostgresSQL version check
ADE update in Private Azure will now check that the PostgresSQL version is 11 (The version provided by ADE release currently) and if not, an exception is thrown and update can't be continued before upgraded to 11.
3.8 packageversion token value has changed and it will get longer values than earlier
Originally <packageversion> token has gotten the value from Jenkins build number ranging usually from 1 to 10000.
From 21.0 onwards the token will get the value from Deployment API's commit id, which is global sequence per installation and it starts from value 1000000 for new commits and from value 500000 for migrated packages. So when using <packageversion> token with strictly limited varchar/char lengths in a column, this can cause failure or truncated value at least.
3.9 Related to Grafana upgrade, old alive session might cause problem in login
NOTE: If having problems logging in to Grafana, it will need to clear old Grafana sessions from the web browser. Open dev tools and sessions and remove Grafana related.
3.10 Related to Grafana upgrade, AWS Cloudwatch datasource can fail in Private AWS editions
NOTE: If having AWS Cloudwatch datasource, it might switch provider to "credential". This will fail since there is no any credential files in Grafana service. The provider should be "AWS SDK Default", it will use the granted AWS role for Cloudwatch.
3.11 There is new Run ID API and the old batch API is deprecated
There is new implementation of the Run ID API. The old one is deprecated and will not function (only getting new batchId works). Workflow Orchestration (aka. Dagger) will use the new one.
There is no user action needed unless old APIs are used by some custom implementation. The change is that the new one uses Entity IDs and Load IDs instead of Entity and Load names.
The Runtime internal service Process API serves the API as before and makes migration of Run ID history into new table structure P_RUN_ID (old is P_RUNID).
3.12 Additional options to use with update scripts
For speeding up the update process:
packages-only: This will download ADE package and sync docker images to local machine and to target repository, but not run the installation.
Consider loading docker images to target ADE environment by this option beforehand. This update operation will not change anything in that environment except for adding new images to repositories.
skip-packages: Will skip the docker image downloading and syncing to target repo. Useful if needed to iterate ADE configuration changes etc.
E.g: ./update_ade_design.sh the-main-conf.yaml DESIGN skip-packages