SYMPTOMS
Changing existing data sources within existing Tableau Server reports to point to published cubes from AtScale can cause the reports to run slowly.
- Reduced performance between the Tableau Server report running with the new AtScale data source connection and the previous report using the original data source.
- Inbound queries within the Query Viewer ending with or containing the LIMIT_ZERO keyword.
- Errors in the engine and/or debug logs similar to the following:
Error during query planning: The physical type of a ReferenceValue should not be used anywhere
ROOT CAUSE
A Tableau Server report submitted queries containing the LIMIT_ZERO keyword, causing the queries to fail in the AtScale Engine while planning outbound queries.
RESOLUTION
The following two options are helpful if you have a small number of existing Tableau Server reports that need to be converted for AtScale. One option is to recreate the report using the .tds file provided after the cube is published within AtScale. This ensures that connections to AtScale are working with no manual editing required. This is the supported way of transitioning an existing report.
Another option is to manually update the Tableau Server file to add a custom ODBC string preventing the LIMIT_ZERO keyword from being issued by Tableau. You have to obtain the .twbx or .twb file from Tableau Server. If you have a .twbx file, you can change the file extension to a .zip extension. You can then use unzip or a similar tool to extract the .twb file. Now with the .twb file, you must open the file in a text editor to manually add the bolded text portion to the report:
<connection ... odbc-connect-string-extras='DisableLimitZero=1' ... /> <customizations> <customization name='odbc-connect-string-extras' value='DisableLimitZero=1'/> <customization name='CAP_AUTH_DB_IMPERSONATE' value='yes' /> ... </customizations>
Finally, save the file and publish it to Tableau Server with a different file name from the original. You can then test the new report with the AtScale cube as a data source connection and review the inbound queries submitted by Tableau to AtScale in the Query Viewer.