- Graphwise Platform Documentation
- Graphwise Documentation
- How to Install & Manage Graphwise Components
- Installation & Migration
- Semantic Workbench Installation and Upgrade
- Migrating to Version 2.4.0 of the Semantic Workbench
Migrating to Version 2.4.0 of the Semantic Workbench
24/02/2026
This section covers breaking changes and required actions when upgrading to version 2.4.0 of the Semantic Workbench. If you are performing a fresh installation, refer to Semantic Workbench Installation and Upgrade.
The Semantic Workbench no longer uses standalone download scripts or WAR file deployments. It is now deployed as a cloud-native application using Docker containers orchestrated by a Helm chart on Kubernetes
Note
While the recommended installation method is via the public Helm chart, legacy support for WAR file deployments remains available. However, standalone download and uninstall scripts have been officially deprecated and removed from the distribution.
Provision a Kubernetes cluster (version 1.32+) if not already present
Install Helm (version 3.18+) and kubectl
Follow the installation steps in the Installation and Upgrade guide to deploy the application using the Helm chart
Migrate any custom
workbench.propertiessettings to theconfiguration.propertiessection in your Helm values file
Core configuration values are now provided via environment variables instead of being hardcoded in a workbench.properties file. The Helm chart manages these through Kubernetes ConfigMaps and Secrets.
Extract values from your existing
workbench.propertiesfileMap them to the corresponding
configuration.propertieskeys in your Helm values fileFor sensitive values (client secrets, passwords), use
configuration.propertiesOverrides.existingSecretto reference a Kubernetes Secret
Property Mapping:
Old Property ( | New Helm Value ( |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The recommender API endpoint path has been updated as follows:
Old Endpoint | New Endpoint |
|---|---|
|
|
Update any external clients or scripts that directly call this endpoint
Note
Internal application calls are automatically updated.
The default database file name has been updated for consistency:
Old Name | New Name |
|---|---|
|
|
Warning
Create a backup of your existing database file before upgrading!
If using an external database: Update your database connection string using
configuration.properties.SPRING_DATASOURCE_URLIf migrating Docker volumes: Ensure volume mounts point to the correct database file location
Manual migration (if necessary):
mv sqlite_recommender_workbench.db sqlite_semantic_workbench.db
The application context path has been renamed:
Old Path | New Path |
|---|---|
|
|
Update bookmarks and links to:
http://your-server/SemanticWorkbenchUpdate reverse proxy configurations (nginx, Apache, etc.) where applicable
Update any CI/CD scripts or health check endpoints
If using the Helm chart Ingress, the context path is automatically set to
/SemanticWorkbench
The minimum Java version has been upgraded.
Old Requirement | New Requirement |
|---|---|
Java 17 | Java 21 (Temurin recommended) |
For standalone deployments: Upgrade your Java runtime to version 21 and update
JAVA_HOME.Note
Helm chart deployments are automatically handled by the container image. No action needed.
After upgrading, verify that:
The application starts successfully:
# For Helm deployments kubectl get pods -l app.kubernetes.io/name=semantic-workbench
The authentication works:
Test login via Keycloak through the Semantic Workbench UI
The database migration was successful:
Verify whether your configurations are still present in the UI
If you encounter issues after upgrading, perform a rollback:
# List release history helm history semantic-workbench # Roll back to a previous revision helm rollback semantic-workbench <revision-number>
Stop the application
Restore database backup
Revert to previous version by specifying the old image tag:
helm upgrade semantic-workbench poolparty-semantic-suite/workbench \ --set image.tag=<previous-version> \ -f values-override.yaml
Verify the rollback:
kubectl get pods -l app.kubernetes.io/name=semantic-workbench