Skip to content

Forcing Connection's server_address to lowercase breaks OData connectivity #1392

@TimothyVermeirenBiztory

Description

@TimothyVermeirenBiztory

Describe the bug
In request_factory.py, a Connection's server_address is actively converted to lowercase on this line in v0.31. From what I can tell, this has been the case in more or less all versions of TSC.

While this is something I think I would do myself as well, as it feels "safer" to consistently provide a URL in lowercase to avoid mix-ups, it turns out that this breaks functionality for OData connections. Specifically, a project I am working on that deals with OData connections revealed that OData connection URLs are effectively case sensitive. I am not very familiar with OData myself, but some blog posts and references in the official convention documentation do seem to indicate that that is the case (haha).

I presume that simply removing the conversion to lowercase of server_address for all connection classes is not a great idea, and I am not sure whether building in an exception for a single connection class is that much better... but I thought it was worth noting and considering taking action.

Versions
Details of your environment, including:

  • Version: Tableau Cloud as well as Tableau Server version 2021.3
  • Python version: 3.9
  • TSC library version: noticed in 0.30 and 0.31, but seems present in all versions.

To Reproduce
Attempt to update an OData connection's server_url on Tableau Server in a workbook or data source. Persisting the change might render the connection unusable in case the change in capitalization affects the fields and query parameters.

Results
The OData connection returns no results or an error message.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions