New Features
Originally published 05/31/2021. List of limitations updated 06/02/2021.
- GoodData.CN for Kubernetes is available as a Helm chart. You need a license key in order to run GoodData.CN in your Kubernetes environment.
- You can use technical columns to filter your data in the workspace hierarchy. Columns with the prefix wdf_ are not used during model generation, however you can use them to filter data in your workspaces.
Changes
- AQE caches were turned off by default as their behavior in multitenant use cases was not optimal. To migrate data sources from version 1.0 to 1.1 where this change is in effect, please use the migration procedure described in the Upgrade Guide section of these release notes.
Fixes
- To reduce the occurrence of “not authorized” errors, we prolonged the duration of tokens from 1 hour to 24 hours.
- Relationships in the logical data model (LDM) are now automatically generated for Vertica DB.
- It is not possible to create API tokens for non-existing users anymore.
- Declarative API (
/api/entities/workspaces/<workspace is>/analyticalDashboards/
) now works even when including visualization objects (?include=visualizationObjects
). - Improved the error messages that appear in the following situations:
- POST call to .../api/auth/users does not contain a password.
- Missing user group during user creation through the API ../api/entities/users.
- Data source is not available.
- The hostname does not refer to an existing organization
Known Limitations
- Logout does not work with Auth0 IdP or Google IdP.
- Incompatibility with Amazon Cognito.
- The column used as a Workspace Data Filter must be part of the logical data model. If the column is not part of the LDM, the filter is not applied when creating the physical data model.
Upgrade Guide
Preparation
- Set the environment variables.
- If you used the demo environment from the GoodData.CN Community Edition (CE) image, use the following values:
export ENDPOINT=http://localhost:3000
export API_TOKEN=YWRtaW46Ym9vdHN0cmFwOmFkbWluMTIz
- If you set up your own environment, use the values specific to your environment.
- If you used the demo environment from the GoodData.CN Community Edition (CE) image, use the following values:
- Install a JSON command-line processor (for example, “jq”).
Back Up the Current Working Environment
If you want to start with a new environment after the upgrade, you can either
- Back up only a specific portion of the metadata (for example, only data sources or users)
or - Skip this step completely.
Back Up the Data Sources
Execute the following statement to save all the data sources as files named data-source_<id>.json in the /tmp directory:
for i in $(
curl -s -H "Authorization: Bearer $API_TOKEN" \
-X GET "$ENDPOINT/api/entities/dataSources" |
jq -r '.data[].id'
); do
echo "Exporting Data Source $i"
curl -s -H "Authorization: Bearer $API_TOKEN" \
-X GET $ENDPOINT/api/entities/dataSources/$i \
> /tmp/data-source_$i.json; \
done
The passwords to the databases will not be included in the backup files. Ensure that you remember them or have them stored separately.
Note: Back up the data sources if you want to also back up and then restore the physical data model.
Back Up the Physical Data Model
Execute the following statement to save all the physical data models as files named pdm_<id>.json in the /tmp directory:
for i in $(
curl -s -H "Authorization: Bearer $API_TOKEN" \
-X GET "$ENDPOINT/api/entities/dataSources" |
jq -r '.data[].id' \
); do \
echo "Exporting PDM of Data Source $i"
curl -s -H "Authorization: Bearer $API_TOKEN" \
-X GET $ENDPOINT/api/layout/dataSources/$i/physicalModel \
> /tmp/pdm_$i.json; \
done
Back Up the Logical Data Models and the Analytical Models of All Workspaces
Execute the following statement to save all the logical data models and analytical models of all your workspaces as a file named all-workspaces.json in the /tmp directory:
curl -X GET $ENDPOINT/api/layout/workspaces \
-H "Authorization: Bearer $API_TOKEN" \
> /tmp/all-workspaces.json
Back Up the Users and User Groups
The default admin group and both the admin user and the demo user will be automatically created when you start the new GoodData.CN CE image. If you have added other users to your current environment, you will have to re-add them after the upgrade.
Upgrade Your GoodData.CN
- Stop your current GoodData.CN CE image.
- Download the latest GoodData.CN CE image from hub.docker.com.
- Start the new GoodData.CN CE image as usual.
Initialize the Working Environment
Restore the Data Sources
- Prepare the passwords to your database because you will be prompted to enter them.
For the password of the demo data source (demo-ds) see Register Datasource by API. - Execute the following statement to restore the data sources from the files named data-source_<id>.json in the /tmp directory:
for i in /tmp/data-source_*.json ; do
ds_name=$(basename $i .json)
echo "Processing $ds_name";
DB_PASSWORD=$(bash -c 'read -s -p "Enter password: " X; echo $X');
echo "Updating password and removing deprecated fields in DataSource $ds_name"
jq ".data.attributes.password = \"$DB_PASSWORD\"" < $i | jq
'del(.data.attributes.enableCaching)' | \
curl -X POST $ENDPOINT/api/entities/dataSources \
-H "Content-Type:application/vnd.gooddata.api+json" \
-H "Authorization: Bearer $API_TOKEN" \
-d @-
done
Restore the Physical Data Model
Execute the following statement to restore all the physical data models from the files named pdm_<id>.json in the /tmp directory:
for i in /tmp/data-source_*.json; do
id=$(jq -r '.data.id' < $i)
echo "Restoring PDM of DataSource $id"
curl -X PUT $ENDPOINT/api/layout/dataSources/$id/physicalModel \
-H "Content-Type:application/json" \
-H "Authorization: Bearer $API_TOKEN" \
-d@/tmp/pdm_${id}.json; \
done
Restore the Logical Data Model and the Analytical Model
Execute the following statement to restore all the logical data models and analytical models of all your workspaces from the file named all-workspaces.json in the /tmp directory:
curl -X PUT $ENDPOINT/api/layout/workspaces \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type:application/json" \
-d @/tmp/all-workspaces.json
Add the Users and User Groups
The default admin group and both the admin user and the demo user have been automatically created when you started the new GoodData.CN CE image. If you had other users in your previous installation, re-add them.