KNOWLEDGE BASE

Error When changing topology of multi-node Tableau Server "Error Message: java.nio.file.AccessDeniedException"


Published: 16 Feb 2023
Last Modified Date: 17 Feb 2023

Issue

When trying to change the topology of multi-node Tableau Server to add or remove some process from nodes, the "tsm pending-changes apply" command failed with below error.

=====
node<node number>:
    <process name>_<build number>: Failed to reach requested state. Current state: DEPLOY_FAILED
        Error Message: java.nio.file.AccessDeniedException: /var/opt/tableau/tableau_server/data/tabsvc/<process name>/0

=====

Environment

  • Tableau Server on Linux

Resolution

Option 1

Completely remove Tableau Server and clean install Tableau Server again.

Option 2

Try the steps below to modify all the owner/group and permission of tableau directory back to tableau owner/group and its permission.
=====
sudo chown tableau:tableau /var/opt/tableau/tableau_server/data/tabsvc/<process name>
sudo chmod 770 /var/opt/tableau/tableau_server/data/tabsvc/<process name>
For example:
sudo chown tableau:tableau /var/opt/tableau/tableau_server/data/tabsvc/flowprocessor
sudo chmod 770 /var/opt/tableau/tableau_server/data/tabsvc/flowprocessor

Note: If there is any child directory or file under the directoy "/var/opt/tableau/tableau_server/data/tabsvc/<process name>", you also need to run the above commands to all of them to change their owner/group and permission back to tableau owner/group and its permission like below.
For example:
sudo chown tableau:tableau /var/opt/tableau/tableau_server/data/tabsvc/flowprocessor/Datasources
sudo chmod 770 /var/opt/tableau/tableau_server/data/tabsvc/flowprocessor/Datasources

sudo chown tableau:tableau /var/opt/tableau/tableau_server/data/tabsvc/flowprocessor/Datasources/athena.properties
sudo chmod 770 /var/opt/tableau/tableau_server/data/tabsvc/flowprocessor/Datasources/athena.properties

Cause

The owner/group and permission of the directory which got the permission error was changed from tableau user/group to root user/group by mistake.
 

Additional Information

Run the command below to check the user/group and permission of all process directory under "/var/opt/tableau/tableau_server/data/tabsvc/".
sudo ls -ld /var/opt/tableau/tableau_server/data/tabsvc/*
Usually they should have tableau user/group and permission like this.
drwxrwx--- 13 tableau tableau  205 Feb  6 22:39 /var/opt/tableau/tableau_server/data/tabsvc/<process name>
 
Did this article resolve the issue?