Troubleshooting Tableau Services Manager (TSM) Backup

Backup fails to start because services do not start

When you back up Tableau Server, one of the first steps taken is to confirm that key services are running, and, if they are not, to start them. If these services cannot be started:

  • Active Repository
  • File Store
  • Cluster Controller

any attempt to back up Tableau Server will fail with one of the following errors:

An error occurred starting one or more of the following services: Active Repository, File Store, Cluster Controller.
One or more of the following services did not start in a timely fashion: Active Repository, File Store, Cluster Controller.

To successfully back Tableau Server up, make sure these processes can start.

Backup fails with a sharing violation error.

TSM backup can fail with a misleading error when there is a lack of disk space.

If your backup fails with a "sharing violation" check these logs for errors similar to these:

tabadmincontroller*.log

2019-02-27 13:42:16.011 -0600  pool-37-thread-2 : INFO  
com.tableausoftware.tabadmin.webapp.backup.AbstractBackupSingleInstanceAction - Starting 'backup' call on node1:8315 for service pgsql_0.20183.18.1214.0808 with params 
{"node":"node1","skipVerification":false,"singleNode":true,"origin":"COMMAND_LINE","writePath":"testbackup.tsbak","postgresOnly":false,"overrideDiskSpaceCheck":false,"skipCompression":false}

tabadminagent*.log

2019-02-27 13:44:01.796 -0600  pool-14-thread-5 : ERROR org.apache.thrift.server.TThreadPoolServer - Error occurred during processing of message.
				java.lang.RuntimeException: org.apache.thrift.TException: java.nio.file.FileSystemException: C:\ProgramData\Tableau\Tableau Server\data\tabsvc\tabadminagent\0\filetransfer\df699acb-731a-41dd-af6b-baa39e2d6cc3: The process cannot access the file because it is being used by another process.

				at com.google.common.base.Throwables.propagate(Throwables.java:241)
				at com.tableausoftware.tabadmin.agent.services.TRestoreFileTransferHandler.processFile(TRestoreFileTransferHandler.java:110)
				at com.tableausoftware.file.transfer.endpoint.FileTransferHandler$Processor$processFile.getResult(FileTransferHandler.java:262)
				at com.tableausoftware.file.transfer.endpoint.FileTransferHandler$Processor$processFile.getResult(FileTransferHandler.java:246)
				at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
				at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
				at org.apache.thrift.TMultiplexedProcessor.process(TMultiplexedProcessor.java:123)
				at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
				at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
				at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
				at java.lang.Thread.run(Thread.java:748)
				Caused by: org.apache.thrift.TException: java.nio.file.FileSystemException: C:\ProgramData\Tableau\Tableau Server\data\tabsvc\tabadminagent\0\filetransfer\df699acb-731a-41dd-af6b-baa39e2d6cc3: The process cannot access the file because it is being used by another process.

				at com.tableausoftware.file.transfer.filetransferservice.server.FileTransferServiceHandler.deleteTransfer(FileTransferServiceHandler.java:217)
				at com.tableausoftware.tabadmin.agent.services.TRestoreFileTransferHandler.processFile(TRestoreFileTransferHandler.java:106)
				... 9 more
				Caused by: java.nio.file.FileSystemException: C:\ProgramData\Tableau\Tableau Server\data\tabsvc\tabadminagent\0\filetransfer\df699acb-731a-41dd-af6b-baa39e2d6cc3: The process cannot access the file because it is being used by another process.

				at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86)
				at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
				at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
				at sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:269)
				at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
				at java.nio.file.Files.deleteIfExists(Files.java:1165)
				at com.tableausoftware.file.transfer.filetransferservice.server.FileTransferServiceHandler.deleteTransfer(FileTransferServiceHandler.java:215)
			... 10 more

This can be an indication that the backup failed because there was not enough disk space.