Tableau Server VizQL Server
The VizQL Server loads and renders views, and computes and executes queries. To achieve high availability for the VizQL Server process, configure one or more instances to run on multiple nodes.
| Process |
|
| Status | Status of theVizQL Server process is visible on the Status Page. For more information, see View Server Process Status |
| Logging | Logs generated by theVizQL Server process are located in . For more information, see Tableau Server Logs and Log File Locations |
What happens if a VizQL Server process fails? If there is only one VizQL Server process and it fails, then Tableau Server will no longer be able to render any views. High availability requires configuring redundant VizQL processes. A fairly typical configuration consists of two to four VizQL Server processes on each node.
This simultaneously serves the need for high availability and scalability. If multiple VizQL Server processes are running, then the failure of a single process will result in the failure of any requests and the loss of session data at the time of its failure. Any future requests will be routed to the other working VizQL Server processes on the Tableau Server cluster.
VizQL Server memory monitoring
Important: As a best practice we recommend you leave settings at their default values unless instructed by Tableau Technical Support.
Beginning in version 2026.2.0, VizQL Server monitors its memory usage and will shut down idle sessions if necessary.
How VizQL Server monitors memory usage
In Tableau Server version 2026.2.0 and later, the native_api.close_old_sessions_if_memory_pressure_high key is set to true. With this setting enabled, VizQL Server monitors its memory usage each time a new session is created, and if memory usage exceeds the threshold defined by native_api.max_memory_pressure_percentage, the oldest idle sessions are closed to reduce memory usage. The higher the memory usage the more agressively old idle sessions are closed. Sessions that are actively in use with the user interacting with a view are never closed. Memory reclamation is done in the background and does not slow or block new session creation.
VizQL memory usage monitoring depends on several interacting configuration keys:
| Configuration key | Type | Default | Description |
|---|---|---|---|
native_api.memory_limit_enabled
|
String | true
|
Controls whether memory monitoring takes place. If this is set to false, no memory monitoring occurs. |
native_api.close_old_sessions_if_memory_pressure_high
|
String | true
|
Determines if old, idle sessions will be closed when memory runs short. |
native_api.max_memory_pressure_percentage
|
Integer | 90
|
The memory usage percentage at which proactive session reclamation begins. (The comparison base is the process memory limit, which is controlled by native_api.memory_limit_per_process_gb or native_api.memory_limit_per_process_percentage). |
native_api.goal_memory_pressure_percentage
|
Integer | 80
|
The target memory usage percentage that reclamation attempts to reach. Must be less than max_memory_pressure_percentage. |
native_api.memory_limit_per_process_gb
|
Integer | 0
|
An absolute per-process memory limit in gigabytes. |
native_api.memory_limit_per_process_percentage
|
Integer | 70
|
A percentage of total physical memory to calculate the process memory limit. Used only when native_api.memory_limit_per_process_gb == 0. |
