Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Data connections to Qlik Cloud or Qlik Sense Enterprise on Windows can fail for several reasons. In this article we aim to provide you with a step-by-step guide on how to begin troubleshooting data connectivity errors, ruling out the most common root causes.
Content:
The first step in your investigation is to verify basic network connectivity to the database.
Work with your network administrator on both where necessary.
If the network and firewall settings are not the issue, verify if the database operates as expected.
Next, we verify if the credentials and settings in our connection are correct. The easiest way to do this is by logging in directly to the database using its native client.
Examples of on-premise database clients include:
For cloud-based databases:
The specific tools you use will depend on the cloud provider you are using and the type of database you have.
Verify if the following are correct in Qlik Sense (details may vary depending on your data connection):
Depending on your permissions, you can either edit/verify your connection directly in the Qlik Sense App Data Load Editor or in the Space.
Using the Data Load Editor:
Depending on your permissions, you can either edit/verify your connection directly in the Qlik Sense App Data Load Editor or in the Qlik Sense Management Console.
Using the Data Load Editor:
Using the Qlik Sense Management Console:
Once you have confirmed the connection details, you can test the connection in Qlik Sense.
Data connections generally fail during reload. Qlik Sense will log details of the error or preceding warnings in the corresponding reload log. These error and warning messages can then be used to look up solutions or troubleshoot further.
Search the warnings and errors in our knowledge base for known solutions. Begin your search here.
If you have completed all the above and have not found solutions in the Qlik knowledge base, reach out to the database vendor for additional support. They will be able to provide specific information on troubleshooting the issue with your specific database.
After upgrading to Qlik Sense Enterprise on Windows May 2023 (or later), the Qlik Sense Repository Service may cause CPU usage spikes on the central node. In addition, the central Engine node may show an increased average RAM consumption while a high volume of reloads is being executed.
The Qlik Sense System_Repository log file will read:
"API call to Engine service was successful: The retrieved 'StaticByteSize' value for app 'App-GUID' is: 'Size in bytes' bytes."
Default location of log: C:\ProgramData\Qlik\Sense\Log\Repository\Trace\[Server_Name]_System_Repository.txt
This activity is associated with the ability to see the Base memory size in the Qlik Sense Enterprise Management Console. See Show base memory size of apps in QMC.
The feature to see Base memory size can be disabled. This may require an upgrade and will require downtime as configuration files need to be changed.
Take a backup of your environment before proceeding.
If any issues occur, revert the changes by restoring the backed up files and open a ticket with Support providing the changed versions of repository.exe.config, capabilities.json mentioning this article.
Show base memory size of apps in QMC
QB-22795
QB-24301
Qlik Sense Enterprise on Windows May 2023, August 2023, November 2023, February 2024.
Long access times to Qlik Cloud or when performing reloads using the Direct Access Gateway may be caused by high network latency between your location and the AWS datacenter hosting the affected tenant.
A possible browser test to check the network connection from a computer to AWS can be found at AWS Latency Test.
This test does not concern Qlik Cloud's platform, and can therefore be used to determine if there are purely network-related issues.
This is just a first-step tool, not a conclusive one. A latency of 300ms or more might still not affect user experience in Qlik Cloud, but it's still worth using the tool quickly for a first assessment.
How to verify and measure transfer speed from Direct Access gateway to Qlik Cloud
Qlik Insight Advisor performs slowly. No errors are logged.
To optimize performance,
For additional performance or optimization questions, head over to the Qlik App Development forum, where your knowledgeable Qlik peers and our active Support Agents can better assist you.
This article covers how to improve performance when using the Qlik Replicate Source Endpoint DB2i in a task, specifically by enabling the AfterImageOnly Internal Parameter.
Enabling the AfterImageOnly option on a DB2 for i (DB2i) source endpoint in Qlik Replicate provides performance and efficiency benefits, particularly when running Apply Changes tasks.
Content
In DB2i journaling, every change to a record can be logged with:
By default, both images may be captured. The AfterImageOnly setting signals Qlik Replicate to capture only the after image of each change.
AfterImageOnly is an Internal Parameter. To set it:
No reload of the task or table is required. You can resume your task after saving the Endpoint.
AfterImageOnly does not fit every situation. To not use the parameter, if:
Environment
When Qlik Replicate runs on a newly provisioned Linux server, the system memory usage is abnormally high and reaches critical thresholds.
To resolve the issue, reduce or disable huge page allocation by updating the kernel parameter:
vm.nr_hugepages = 0
To make it persistent across reboots, update /etc/sysctl.conf. Then apply the change by "sudo sysctl -p"
The issue is related to the Linux kernel parameter vm.nr_hugepages, which defines the number of huge pages (typically 2 MB each) that are pre-allocated in memory.
In this case, the system was configured with:
vm.nr_hugepages = 24629
This reserves approximately 48 GB of memory (2M * 24629) for huge pages, significantly reducing the amount of available memory for other processes. If too many huge pages are reserved, the system may run low on regular memory pages, leading to performance degradation or instability.
00352619
Qlik Replicate provides the option to set different types of notification rules. These notifications then send emails when specific events occur during a task's runtime.
Every notification rule is set for a specific event of interest. You can define one or more notification rules for one or more tasks.
For detailed information on the different notification options, please refer to the section Notification settings in the Qlik Replicate Users guide
This article describes how to set up a notification rule that will send an email to a recipient list when a task faces latency:
To deactivate the notification, untick the active check box:
For better performance of Talend Runtime Server, you could uninstall Kar files to free up storage space.
This article briefly introuduces How to uninstall kar files from Talend Runtime Server
Prerequiste
For command
kar:uninstall
It is a command used to uninstall a KAR file (identified by a name).
By uninstall, it means that:
For instance, to uninstall the previously installed my-kar-1.0-SNAPSHOT.kar KAR file:
karaf@root()> kar:uninstall my-kar-1.0-SNAPSHOT
Talend Runtime Server
Please run the following karaf commands to clean Kar files from your Repository
#stop running artifact task
bundle:list |grep -i <artifact-name>
bundle:uninstall <artifact-name | bundle-id>
#clean task kar cache
kar:list |grep -i <artifact-name>
kar:uninstall <artifact-name>
For more information about KAR file, please refer to Apache Content
kar:* commands to manage KAR archives.
Some particular job is always failing with OutOfMemory error when using Cloud Engine.
Cloud Engine has a maximum memory usage of 8GB
If you are also looking for OutOfMemory Error Occurs when executing a job on Remote Engine, please have a look at this article as below:
OutOfMemory Error Occurs When Executing a job on Remote Engine
There are connection and Net Work Slow issues between Talend Cloud and Talend Remote Engine
The following errors are produced in the logs:
org.apache.http.conn.ConnectTimeoutException: Connect to pair.**.cloud.talend.com:443 [pair.**.cloud.talend.com/****,
Retry processing request to {s}-> pair.**.cloud.talend.com:443
org.apache.http.conn.ConnectTimeoutException: Connect to pair.**.cloud.talend.com:443 [pair.**.cloud.talend.com/****,
pair.**.cloud.talend.com/****, pair.**.
This service is used to communicate the status information for the Remote Engine such as its heartbeats and availability.
org.apache.http.conn.ConnectTimeoutException: Connect to pair.**.cloud.talend.com:443 [pair.**.cloud.talend.com/****,pair.**.cloud.talend.com/****, pair.**.cloud.talend.com/****] failed: Connect timed out
Retrying request to {s}->pair.**.cloud.talend.com:443
This service is used to communicate about task runs such as receiving, deploying, or undeploying events, and sending information about task run status and metrics.
Failed to connect to [https://msg.**.cloud.talend.com:443] after: 1 attempt(s) with Failed to perform GET on: https://msg.**.cloud.talend.com:443 as response was: Connect to **** [****] failed: Connection refused: connect, continuing to retry.
# In seconds
wait.for.connection.parameters.timeout=300
flow.deployment.timeout=300to 600# In seconds
wait.for.connection.parameters.timeout=600
flow.deployment.timeout=600
There are connection issues and Network slow between Talend Cloud and Talend Remote Engine.
If you access the Internet via a proxy, you need to add the following URLs to your allowlist.
Adding URLs to your proxy and firewall allowlist
There are JVM hanging errors in wrapper.log during job running for Talend Remote Engine Server
JVM appears hung: Timed out waiting for signal from JVM.
JVM did not exit on request, terminated
JVM exited in response to signal SIGKILL (9).
Unable to start a JVM
<-- Wrapper Stopped
When the CPU is high (time interval) the jvm exited and also you see JVM hanging errors in wrapper log.
This is because when the jvm is not getting response, the wrapper tries to restart the container and try to recover from the hung behavior.
This article outlines how Qlik NPrinting and Qlik Sense Enterprise on Windows consume resources.
Qlik NPrinting interacts with Qlik Sense when a metadata reload or a task execution is started (a report preview or an On-Demand request is essentially the same as a task execution).
For metadata reloads, Qlik NPrinting directly opens a connection with the Qlik Sense Server, and the following actions are performed on the Qlik Sense side:
The resource consumption is mainly on the Qlik Sense side. In particular, opening the app requires RAM, and removing selections/bookmarks/Session Access requires calculations that consume CPU.
When a task is run, Qlik NPrinting connects to the Qlik Sense Server, which performs the following:
This is quite expensive in terms of resources, especially if many filters are present (or Cycles/Levels/Pages) because a filter is essentially a selection on the app and each selection requires calculations and, therefore, CPU usage.
Moreover, Qlik NPrinting is multi-treading. This means that multiple instances of the same app can be opened in Qlik Sense at the same time. This enables Qlik NPrinting to execute the requests of filter applications and table exports in parallel. On the other side, having many applications opened at the same time represents a resource cost for Qlik Sense.
The maximum number of apps that can be opened at the same time equals the number of logical cores on the Qlik NPrinting Engine machine. You have to sum them up if more engines are installed.
The situation is more complex if Session Access is used. In this case, Qlik NPrinting cannot apply all the requests on the apps in the same session. The app must be closed and re-opened for each Qlik NPrinting user, with a high consumption of RAM and CPU on the Sense side. This also loses the possibility to apply many of the Qlik NPrinting optimizations for the report generation.
On the Qlik NPrinting side, some resources are used by the Engine service to keep in memory images, tables, and other values sent by Sense. NPrinting then needs to place these objects correctly on the template. Also, this action is performed by the Qlik NPrinting Engine service and it is more resource-consuming on the Qlik NPrinting side. Generally, we do not expect a problematic consumption in a supported NPrinting environment, unless very heavy and complex reports are generated or many tasks are run at the same time. The main resource request is on the Qlik Sense side.
Does Qlik NPrinting respect the Qlik Sense load balancing rules?
Qlik NPrinting uses the same proxy to connect as an end user. Load balancing rules will be respected.
Out of memory error is found in the Talend Management Center or Remote Engine Logs when executing a job on Remote Engine.
The job is consuming a lot of memory or the JVM Memory allocated to the job or remote engine is not enough to execute.
If you are looking for allocating more memory and OutOfMemory exception from Talend Studio side, please refer to these articles
Question
Why are there multiple IP addresses showing up when using the nslookup command for Talend Cloud URLs like "api.ap.cloud.talend.com"?
nslookup api.ap.cloud.talend.com
Multiple IP addresses show up because Round-Robin DNS is being used. It ensures high availability and distributes traffic among multiple servers.
What is Round-Robin DNS? Optimize Server Load
There are multiple ways to go about finding out the exact process of locking a file and preventing QlikView or Qlik Sense from carrying out a specific operation. This article covers one possible option on a Windows Server Operating Systems, Process Monitor.
For other options and third-party implementations, please contact your Windows administrator.
Common causes for locks are:
The following error is showing for tasks that were hanging in queue:
No engines were available to process this task. You can try to run the task manually now. Run this task during a time when your processors are available.
If you are running too many tasks in parallel, experiencing time out and tasks failed, please consider the following.
Too many tasks are running at the same time, and since the tasks that were in queue timed out, it failed to execute.
On a different note, please also review the steps to clean up the task logs on the Remote Engine
automatic-task-log-cleanup
QlikView and Qlik Sense files are like ZIP file, as in they are highly compressed. So obtaining an estimate of how much RAM is needed for loading Apps into memory (footprint) is difficult to provide across the board. The expected memory usage associated with the app can also depend on how many users access the app and how much they are used.
An estimate of the RAM needed per app can be built on the below, but for accuracy always test by loading the app into memory and using the Qlik Scalability Tools to obtain a baseline of memory usage for each app as it is accessed by the foreseeable number of users.
Telemetry logging which allows for using the Telemetry Dashboard, is also an available suitable tool.
Since the release of the February 2019 version, Sense System Performance Analyzer monitoring App can be used to determine app footprint as well. Since the release of the June 2018 version, App Metadata Analyzer monitoring App can also be used. However, these last three may not provide the same data as the Scalability Tools.
An alternative is to use a test environment and simply observe RAM usage increases as apps are first opened (footprint), and as number of users accessing the app increase, then as number of operations are performed within the app. The test environment results for observed memory and CPU usage can be recorded as a baseline for the particular app in production, which assists in determining future sizing/scaling needs.
Need direct assistance in evaluating your Qlik Sense and QlikView apps? Qlik's Professional Services are available to assist you.
RAMInitial = SizeOnDisk × FileSizeMultiplier ; this is the initial RAM footprint for any application
FileSizeMultiplier: range between 2-10 (this is a compression* ratio depending on the data contained in the app)
*Compression is based upon the data, and how much we can compress depends upon the homogeneity of the data. The more homogeneous, the more compression Qlik can achieve.
More information on one way of optimizing a document can be found on the Qlik Design Blog: Symbol Tables and Bit-Stuffed Pointers
RAMperUser = RAMinitial × userRAMratio ; this is the RAM per each incremental user
userRAMratio: range between 1% -10%
Total RAM used per app :
TotalRAM = (RAMperUser × Number of users) + RAMinitial
Example:
SizeOnDisk = 1 GB
File Size Multiplier 6 (range is from 2 to 10) This is an example value. A value can be obtained by reviewing telemetry (how far does the app expand?) or opening the app in a QlikView or Qlik Sense desktop and measuring the expansion based on how large it grows in memory.
RAMinitial = 1 * 6 = 6 GB
If we take a RAM Ratio per User of 6% then it is 0.06 (range is from 1 to 10)
RAMperUser = 6 x 0.06 = 0.36GB
Then RAM Required for 30 Users
TotalRAM = (RAMperUser × No. users) + RAMinitial
TotalRAM = (0.36 * 30) + 6
TotalRAM = 16.8 GB
It is finally here: The first public iteration of the Log Analysis app. Built with love by Customer First and Support.
"With great power comes great responsibility."
Before you get started, a few notes from the author(s):
Chapters:
01:23 - Log Collector
02:28 - Qlik Sense Services
04:17 - How to load data into the app
05:42 - Troubleshooting poor response times
08:03 - Repository Service Log Level
08:35 - Transactions sheet
12:44 - Troubleshooting Engine crashes
14:00 - Engine Log Level
14:47 - QIX Performance sheets
17:50 - General Log Investigation
20:28 - Where to download the app
20:58 - Q&A: Can you see a log message timeline?
21:38 - Q&A: Is this app supported?
21:51 - Q&A: What apps are there for Cloud?
22:25 - Q&A: Are logs collected from all nodes?
22:45 - Q&A: Where is the latest version?
23:12 - Q&A: Are there NPrinting templates?
23:40 - Q&A: Where to download Qlik Sense Desktop?
24:20 - Q&A: Are log from Archived folder collected?
25:53 - Q&A: User app activity logging?
26:07 - Q&A: How to lower log file size?
26:42 - Q&A: How does the QRS communicate?
28:14 - Q&A: Can this identify a problem chart?
28:52 - Q&A: Will this app be in-product?
29:28 - Q&A: Do you have to use Desktop?
Qlik Sense Enterprise on Windows (all modern versions post-Nov 2019)
*It is best used in an isolated environment or via Qlik Sense Desktop. It can be very RAM and CPU intensive.
The information in this article is provided as-is and to be used at own discretion. Depending on tool(s) used, customization(s), and/or other factors ongoing support on the solution below may not be provided by Qlik Support.
Optimizing Performance for Qlik Sense Enterprise - Qlik Community - 1858594
This article provides a list of the best practices for Qlik Sense configuration. It is worth implementing each item, especially for a large environment so that your database can handle the volume of requests coming from all its connected nodes.
For basic information, see Max Connections.
Specifies the maximum number of concurrent connections (max_connections) to the database. The default value for a single server is 100.
In a multi-node environment, this should be adjusted to the sum of all repository connection pools + 20. By default, this value is 110 per node.
Assuming two nodes and assuming the default value of 110 per node, the value would be 240.
The value of 110 above is a default example. You can further refine the value.
The connection pool for the Qlik Sense Repository is always based on core count on the machine. To date, our advise is to take the core count of your machine and multiply it by five. This will be your max connection pool for the Repository Service for that node.
This should be a factor of CPU cores multiplied by five.
If 90 is higher than that result, leave 90 in place. Never decrease it.
For more information about Database Max Pool Size Connection, see https://wiki.postgresql.org/wiki/Number_Of_Database_Connections
Optimizing Performance for Qlik Sense Enterprise
PostgreSQL: postgresql.conf and pg_hba.conf explained
Database connection max pool reached in Qlik Sense Enterprise on Windows