0 votes
1 view
in BI by (13.4k points)

I am trying to connect to Spark SQL (Spark 2.0.0) from Tableau Desktop 10.1.1 from OS X. I have SimbaSparkODBC already installed, and Spark Thrift Server is up and running. I am able to use beeline to connect and verify the Thrift Server.

However, when I configure Tableau using Spark SQL connector, it does not connect. After some time, the query times out. When I checked the Thrift Server logs, I see the following message.

16/11/17 17:01:26 ERROR TThreadPoolServer: Error occurred during processing of message.

java.lang.RuntimeException: org.apache.thrift.transport.TTransportException: Invalid status -128

        at org.apache.thrift.transport.TSaslServerTransport$Factory.getTransport(TSaslServerTransport.java:219)

        at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:268)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

        at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.thrift.transport.TTransportException: Invalid status -128

        at org.apache.thrift.transport.TSaslTransport.sendAndThrowMessage(TSaslTransport.java:232)

        at org.apache.thrift.transport.TSaslTransport.receiveSaslMessage(TSaslTransport.java:184)

        at org.apache.thrift.transport.TSaslServerTransport.handleSaslStartMessage(TSaslServerTransport.java:125)

        at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:271)

        at org.apache.thrift.transport.TSaslServerTransport.open(TSaslServerTransport.java:41)

        at org.apache.thrift.transport.TSaslServerTransport$Factory.getTransport(TSaslServerTransport.java:216)

        ... 4 more

I tried with Spark 1.6.1 and the outcome is the same. Does anyone have Tableau working with a similar setup? If so, what am I missing here? 

1 Answer

0 votes
by (36.7k points)

While connecting to Spark SQL, choose "Username" authentication instead of "No Authentication". You can leave the username blank.