Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Search our knowledge base, curated by global Support, for answers ranging from account questions to troubleshooting error messages.
Executing the Qlik Migration Tools leads to the following error on line 185 of 7_migrateapps.ps1:
Error: operation unsupported for server-type "cloud" (Qlik Cloud). Supported server-types are: ["windows"]
Example:
qlik context use $QlikWindowsContext | out-null qlik qrs app export create $appid --skipdata $SS --exportScope all --output-file $exportAppFile
Verify you have followed the required step-by-step configuration documented in Using qlik-cli with Qlik Sense Enterprise client-managed Repository API (QRS).
Specifically, do not forget to execute this cmd to add the Qlik Sense Enterprise on Windows server to qlik-cli. See Configure a context in qlik-cli for details.
Example:
##qlik context create QSEoW --server <server name> --server-type windows --api-key <JWT Token>
Possible causes:
Lines 184 and 185 test the connection as documented in Qlik-CLI: Test the connection and point to a misconfiguration of the context.
From R2024-05, Java 17 will become the only supported version to start most Talend modules, enforcing the improved security of Java 17 and eliminating concerns about Java's end-of-support for older versions. In 2025, Java 17 will become the only supported version for all operations in Talend modules.
Starting from v2.13, Talend Remote Engine requires Java 17 to run. If some of your artifacts, such as Big Data Jobs, require other Java versions, see Specifying a Java version to run Jobs or Microservices.
Content
Qlik Talend Module | Patch Level and Version |
Studio | Supported from R2023-10 onwards |
Remote Engine | 2.13 or later |
Runtime | 8.0.1-R2023-10 or later |
For Windows users, please follow the JDK installation guide (docs.oracle.com).
For Linux users, please follow the JDK installation guide (docs.oracle.com).
For MAC OS users, please follow the JDK installation guide (docs.oracle.com).
When working with software that supports multiple versions of Java, it's important to be able to specify the exact Java version you want to use. This ensures compatibility and consistent behavior across your applications. Here is how you can specify a specific Java version on the following products (such as build servers, shared application server, and similar):
For Studio users who are using multiple JDKs, please follow the appropriate instructions listed above and follow the proceeding additional steps:
-vm
<JDK17 HOME>\bin\server\jvm.dll
For Remote Engine (RE) users who are using multiple JDKs, please follow the appropriate instructions listed above and follow the proceeding additional steps.
For Runtime users who are using multiple JDKs, please follow the appropriate instructions listed above and follow the proceeding additional steps.
If Runtime is not running as a service:
With the Enable Java 17 compatibility option activated, any Job built by Talend Studio cannot be executed with Java 8. For this reason, verify the Java environment on your Job execution servers before activating the option.
To use Talend Administration Center with Java 17, you need to open the <tac_installation_folder>/apache-tomcat/bin/setenv.sh file and add the following commands:
# export modules export JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/sun.security.x509=ALL-UNNAMED --add-opens=java.base/sun.security.pkcs=ALL-UNNAMED"
Windows users use <tac_installation_folder>\apache-tomcat\bin\setenv.bat
Follow the steps below to configure the JobServer to use the new Java version.
Navigate to the JobServer Configuration:
Go to the <JobServerRootDir>\conf directory, where <JobServerRootDir> is the path to your Talend JobServer installation.
Open the Configuration File for Editing:
Locate the TalendJobServer.properties file and open it with a text editor of your choice.
Set the Java 17 Executable Path:
Find the line dedicated to the Job launcher path within the file. You will modify this line to point to the Java 17 executable.
org.talend.remote.jobserver.commons.config.JobServerConfiguration.JOB_LAUNCHER_PATH="C:\\Program Files\\Java\\jdk-17\\bin\\java.exe"
org.talend.remote.jobserver.commons.config.JobServerConfiguration.JOB_LAUNCHER_PATH=/usr/lib/jvm/java-17-openjdk/bin/java
Replace the example paths with the actual path where Java 17 is installed on your system. Ensure to point directly to the Java executable within the bin directory of your JDK installation.
Save Your Changes:
After editing, save the TalendJobServer.properties file.
Restart Talend JobServer:
For the changes to take effect, restart your Talend JobServer.
After completing these steps, Talend JobServer will utilize Java 17 for executing Jobs, ensuring compatibility with the latest Java version supported by Talend modules.
For Java 17 users, Talend CICD process requires the following Maven options:
set "MAVEN_OPTS=%MAVEN_OPTS% --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/sun.security.x509=ALL-UNNAMED --add-opens=java.base/sun.security.pkcs=ALL-UNNAMED"
For Java 17 users, Talend CICD process requires the following Maven options:
export MAVEN_OPTS="$MAVEN_OPTS \ --add-opens=java.base/java.net=ALL-UNNAMED \ --add-opens=java.base/sun.security.x509=ALL-UNNAMED \ --add-opens=java.base/sun.security.pkcs=ALL-UNNAMED"
<name>TALEND_CI_RUN_CONFIG</name> <description>Define the Maven parameters to be used by the product execution, such as: - Studio location - debug flags These parameters will be put to maven 'mavenOpts'. If Jenkins is using Java 17, add: --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/sun.security.x509=ALL-UNNAMED --add-opens=java.base/sun.security.pkcs=ALL-UNNAMED </description>
Overview
Enable your Remote Engine to run Jobs or Microservices using a specific Java version.
By default, a Remote Engine uses the Java version of its environment to execute Jobs or Microservices. With Remote Engine v2.13 and onwards, Java 17 is mandatory for engine startup. However, when it comes to running Jobs or Microservices, you can specify a different Java version. This feature allows you to use a newer engine version to run the artifacts designed with older Java versions, without the need to rebuild these artifacts, such as the Big Data Jobs, which reply on Java 8 only.
When developing new Jobs or Microservices that do not exclusively rely on Java 8, that is to say, they are not Big Data Jobs, consider building them with the add-opens option to ensure compatibility with Java 17. This option opens the necessary packages for Java 17 compatibility, making your Jobs or Microservices directly runnable on the newer Remote Engine version, without having to go through the procedure explained in this section for defining a specific Java version. For further information about how to use this add-opens option and its limitation, see Setting up Java in Talend Studio.
Procedure
c:\\Program\ Files\\Java\\jdk11.0.18_10\\bin\\java.exe
org.talend.remote.jobserver.commons.config.JobServerConfiguration.JOB_LAUNCHER_PATH=c:\\jdks\\jdk11.0.18_10\\bin\\java.exe
ms.custom.jre.path=C\:/Java/jdk/binMake this modification before deploying your Microservices to ensure that these changes are correctly taken into account.
For Java Option Command --add-opens, using SPACE or = depends on OS, JDK version or the place where you setup, there are 3 cases:
1. support both SPACE and =
2. support SPACE only
3. support = only
Example:
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens java.base/java.net=ALL-UNNAMED
Our Customer has over existing 200 big data spark jobs migrated from 7.3.1 to 8.0.1 and it gives "IndexOutOfBoundsException" after "use Dataset API in migrated components" checkbox is enabled in Spark Configuration.
Error Log
!ENTRY org.eclipse.ui.workbench 4 2 2024-03-28 18:01:50.038 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench". !STACK 0 java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0 at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) at java.base/java.util.Objects.checkIndex(Objects.java:372) at java.base/java.util.ArrayList.get(ArrayList.java:459) at org.talend.designer.bigdata.avro.AvroRecordStructGenerator.firstSchemaFieldHasAnAsterisk(AvroRecordStructGenerator.java:256) at org.talend.designer.bigdata.avro.AvroRecordStructGenerator.generateRecordStructForDataset(AvroRecordStructGenerator.java:242) at org.talend.repository.spark.editor.SparkDataProcess.generateRecordStructForConnection(SparkDataProcess.java:207) at org.talend.designer.bigdata.common.BigDataDataProcess.buildRecordStructsForConnections(BigDataDataProcess.java:612) at org.talend.designer.bigdata.common.BigDataDataProcess.buildRecordStructsForConnections(BigDataDataProcess.java:588) at org.talend.repository.spark.editor.SparkDataProcess.buildFromGraphicalProcess(SparkDataProcess.java:156) at org.talend.designer.bigdata.common.BigDataProcess.getGeneratingNodes(BigDataProcess.java:93) at org.talend.designer.core.ui.editor.process.Process.getNodesOfType(Process.java:3949) at org.talend.designer.core.ui.editor.nodes.Node.checkParameters(Node.java:3029) at org.talend.designer.core.ui.editor.nodes.Node.checkNode(Node.java:4406) at org.talend.designer.core.ui.editor.process.Process.checkProblems(Process.java:3801) at org.talend.designer.core.ui.editor.process.Process.checkProcess(Process.java:3792) at org.talend.designer.core.ui.views.problems.Problems.initCurrentProblems(Problems.java:265) at org.talend.designer.core.ui.views.problems.Problems.addProcess(Problems.java:257) at org.talend.designer.core.ui.ActiveProcessTracker.addJobInProblemView(ActiveProcessTracker.java:169) at org.talend.designer.core.ui.ActiveProcessTracker.partOpened(ActiveProcessTracker.java:294)
After checked with R&D and made some investigation and analysis on it, this is a Plugin code generation logic bug from: plugins/org.talend.designer.bigdata/src/org/talend/designer/bigdata/avro/AvroRecordStructGenerator.java
Fixed patch: V8.0.1-R2024-04 patch
Internal defect ID, TBD-16238
This Techspert Talks session covers:
- What to plan for
- Migration Pathways
- Cloud Best Practices
Chapters:
Resources:
In the realm of software integration and data management, ensuring compatibility and functionality across different versions is crucial.
Talend, a leading provider of data integration and integrity solutions, offers a straightforward process for users to test migration from existing active licenses to newer versions.
This guide outlines how to request and effectively utilize a Talend Test Migration License, whether for cloud or on-premises deployments.
A Talend Test Migration License allows users to transition from their current active license to a newer version temporarily for testing purposes.
This enables organizations to assess the new features, functionalities, and compatibility with their existing systems before committing to a full migration.
Before requesting a Talend test migration license, ensure you have the following details ready:
Please create a new case in Qlik Customer Support Portal with the following case template.
Case Subject: Request for Talend Test Migration License
Dear Support Team,
I hope this message finds you well.
I am writing to request a Talend test migration license for our cloud deployment. Below are the required details:
Your prompt assistance in providing this test migration license would be greatly appreciated. Thank you for your support and consideration.
Best regards, [Your Name]
Case Subject: Request for Talend Test Migration License (Cloud)
Dear Support Team,
I hope this message finds you well.
I am writing to request a Talend test migration license for our cloud deployment. Below are the required details:
Your prompt assistance in providing this test migration license would be greatly appreciated. Thank you for your support and consideration.
Best regards,
John Doe
For On-Premises Deployments:
Please create a new case in Qlik Customer Support Portal with the following case template.
Case Subject: Request for Talend Test Migration License
Dear Support Team,
I hope this message finds you well.
I am writing to request a Talend test migration license for our on-premises deployment. Below are the required details:
Your prompt assistance in providing this test migration license would be greatly appreciated. Thank you for your support and consideration.
Best regards, [Your Name]
Case Subject: Request for Talend Test Migration License (On-Premises)
Dear Support Team,
I hope this message finds you well.
I am writing to request a Talend test migration license for our on-premises deployment. Below are the required details:
Your prompt assistance in providing this test migration license would be greatly appreciated. Thank you for your support and consideration.
Best regards, John Doe
Effectively utilizing a Talend test migration license is essential for organizations looking to evaluate new Talend software versions without disrupting existing operations.
By following the outlined steps and using the provided templates, users can streamline the process of requesting and deploying a test migration license tailored to their specific deployment needs.
If you are looking to extend a Test Migration License, see How to extend Talend Test Migration License
If you are looking for Qlik Support Case Portal, see How to contact Qlik Support
The Oracle source endpoint occasionally encounters an error during the CDC stage.
The error message in task log file:
[SOURCE_CAPTURE ]T: OCI error 'ORA-12592: TNS:bad packet' [1022307] (oradcdc_bfileapi.c:312)
The issue specifically arises during the CDC stage; The problem is irrelevant to the Oracle instant client version, and it's not a timeout issue (parameter SQLNET.SEND_TIMEOUT).
Oracle SQLNet packet inspection feature in Firewall (sometimes called as Advanced SQL feature in Firewalls) has been causing the TNS bad packet ORA-12592 error.
#00156619, QB-26584
The problem occurs on a Windows 2019 server, generally after an upgrade or a new installation of NPrinting.
It is possible to access the NPrinting Web console and click on the start button of a task or on "Reload Metadata" for a connection, but then nothing happens. The execution is not started and no error message is shown.
This error message can be found on Scheduler and Engine logs:
ERROR: RabbitMQ.Client.Exceptions.BrokerUnreachableException: None of the specified endpoints were reachable ---> System.AggregateException: One or more errors occurred. ---> System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm↓↓ --- End of inner exception stack trace
In order to fix the problem, it is necessary to force NPrinting to work with TLS 1.2. This can be done in the RabbitMQ configuration.
The "advanced.config" file contains a setting forcing NPrinting to use TLS 1.2 for the services communication.
Notice that it may be necessary to repeat this process after an upgrade, because configuration files can be replaced in some cases.
The problem is due to a defect in the Server Operating System.
Some Windows 2019 machines erroneously advertise TLSv 1.3 as a supported version, so the .NET executables shipped with NPrinting May 2023 try to use TLS 1.3 to connect to the messaging service. But TLS 1.3 is not supported by Windows Server 2019 and the connection fails for this reason.
Some communications between services are then not occurring. For example, the task execution requests are not reaching the Database and can't start.
After updating a Job containing the tHMap component, the Job does not work properly, the current version is Talend Studio with patch R2023-04 and the old version is Talend Studio with patch R2022-10.
In the old version of Talend Studio, the Job runs fine, but when trying to import the Job into the new version of Talend Studio, it fails with an error.
org.talend.studiolite.p2.featmanage.util.GuessFeatureProvider - Can't find feature for component:tHMap
The tHmap component is not shipped with Talend Studio by default. To use it, you need to install the Data Mapper > Talend Data Mapper feature using the Feature Manager.
This article outlines the best practices for moving from on-premise Talend Data Services to Talend API services in Talend Cloud.
Content:
Talend on-premises ESB implementations have two methods of implementing REST APIs:
Both approaches can be implemented in Talend Runtime, in that both methods are built as OSGi bundles and deployed in Talend Runtime. You can deploy both services as a standalone microservice or as a microservice on a Docker container. This article focuses on the Remote Engine and Remote Runtime for deployment as an OSGi bundle.
As organizations are modernizing their IT landscape, most of the infrastructure and services are moving to the cloud. As part of that trend, the emergence of microservice architecture data services and APIs are taking center stage. These data services and APIs need flexibility, scalability, and manageability built around common and company-wide standards for infrastructures and services.
A move to Talend Cloud platform is typically part of a larger organizational strategy to move the data environment to the cloud. Therefore, many auxiliary components for data services that were necessary for Talend on-premises ESB and API Services are no longer needed and are, thus, not included in Talend API Services in the cloud.
For example, Talend Cloud platform doesn't require the following services:
Service Activity Monitoring (SAM) and Service Locator
Monitoring and management using Talend supplied components like Service Locator and SAM.
Monitoring and logging
Logging from the OSGi bundles were also supporting advanced MDC event logging, which was integrated into the ELK stack for log monitoring. The on-premises and ESB implementation would use the ELK stack deployed and managed on-premises to provide logging functionalities.
Authentication and Authorization Service
Security (Authentication and Authorization) was provided in Talend on-premises and ESB using Talend Identity and Access Management based on Syncope, with authorization based on XACML policies. Also, JAAS based configurations were supported.
Artifact repository
Typically, it was necessary to configure an artifact repository on Talend Runtime to resolve any dependencies that may have been defined in Talend built OSGi resources.
While these services are beneficial in enabling sophisticated functionality for REST APIs on-premises, they are not necessary on Talend Cloud platform because most cloud-based deployments are architected to use cloud vendor-provided services as a best practice.
As a result, these services, included within Talend on-premises platform, are no longer required for Talend in the cloud API deployments in Talend because more suitable options are available on AWS or Azure, on which Talend Cloud platform runs.
The on-premises only services discussed above are no longer needed or included in the architecture because you can use services from the cloud provider (AWS or Azure) to achieve the same functionalities. The end result is a reduced Talend footprint and a simpler to manage data services platform. The following diagram illustrates a typical architecture for deploying Talend services in a cloud environment:
Taking a deeper look at using an AWS cloud to deploy a full stack for data services deployment. An AWS API Gateway is used to create APIs. The Endpoint type can also be decided at this point.
Talend recommends using Talend API Designer to create an OAS or Swagger definition, and the API that is defined can be used for importing to an Amazon API Gateway. If you haven’t implemented the APIs, you can import the same specification into Talend Studio to help build tight APIs. Because all aspects of an API build is on a Technology Standard definition, you can deploy an API on any vendor supplied API Gateway.
The monitoring and logging aspects of the APIs, previously handled by SAM for on-premises deployments, can be enabled on API Gateway.
Amazon CloudWatch provides a specific dashboard for APIs hosted on an API Gateway. You can use CloudWatch to gather runtime logs, and it provides most of the features provided by an ELK stack on-premises.
You can enable API security on an API Gateway as well. There is a complete set of AWS services that provide various functionality to enable the necessary API security. Apart from the Authentication and Authorization features, they include SSL certificate management needed for enterprise-wide security. Also, API key management and usage plans can help build modern data marketplace setups for your customers.
For more information, see the Amazon web page, Controlling and managing access to a REST API in API Gateway.
There are three types of deployments:
The overall cloud strategy can guide your choice.
The CI/CD pipelines setup for on-premises data services and Routes can be enhanced and extended to handle CI/CD in the cloud. As a result, the SDLC for the Talend projects will, for the most part, remain the same. The only enhancements would be the usage of Talend Promotion pipelines, which can be executed from Talend Cloud platform or through provider APIs.
The corporate artifact repository used for managing dependencies in an on-premises deployment can be reused for Talend in the cloud. You can leverage the artifact repository to host plug-ins needed for CI/CD.
Talend recommends that you use the latest Talend Studio cumulative patch for migration.
Dependency issues with cConfig on Routes and tLibraryLoad for data service type Jobs noticed in builds are solved with new patches.