-
Notifications
You must be signed in to change notification settings - Fork 444
Description
A simple update workbook call fails on any Tableau Server version prior to the introduction of materialized views. This occurs in TSC version 0.8, which added support for materialized views. Downgrading to 0.7 fixes the issue.
Basically the XML for materialized views is appended to the update call and Tableau Server does not know how to handle it, resulting in failed API calls.
From the Tableau Server logs (2018.2):
org.springframework.http.converter.HttpMessageConversionException: Deserialization problem: unexpected element (uri:"", local:"materializedViewsEnablementConfig"). Expected elements are <{}owner>,<{}site>,<{}project>,<{}connections>,<{}connectionCredentials>,<{}views>,<{}tags>; nested exception is com.sun.istack.internal.SAXParseException2; lineNumber: 1; columnNumber: 274; unexpected element (uri:"", local:"materializedViewsEnablementConfig"). Expected elements are <{}owner>,<{}site>,<{}project>,<{}connections>,<{}connectionCredentials>,<{}views>,<{}tags>
Code for reproducing the problem:
published_workbook = server.workbooks.get_by_id(published_workbook_id)
published_workbook.owner_id = new_owner_id
published_workbook.show_tabs = True
# Added to try to override; didn't help
published_workbook.materialized_views_config = None
workbook = server.workbooks.update(published_workbook)
server.auth.sign_out()