Skip to content

Error when exporting "ORDER" table #211

@mijns

Description

@mijns

Export fails when table name is a reserved keyword.

Version: 0.11.1
Attempted action: titan export --resource=user,role,grant,database,table,schema --out=titan.yml
Error:

Failed to fetch resource urn:::table/AIRBYTE.SALESFORCE.ORDER: 001003: failed to execute sql, [DESC TABLE AIRBYTE.SALESFORCE.ORDER]
Traceback (most recent call last):
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/client.py", line 79, in execute
    cur.execute(sql_text)
    ~~~~~~~~~~~^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/snowflake/connector/cursor.py", line 1097, in execute
    Error.errorhandler_wrapper(self.connection, self, error_class, errvalue)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/snowflake/connector/errors.py", line 284, in errorhandler_wrapper
    handed_over = Error.hand_to_other_handler(
        connection,
    ...<2 lines>...
        error_value,
    )
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/snowflake/connector/errors.py", line 339, in hand_to_other_handler
    cursor.errorhandler(connection, cursor, error_class, error_value)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/snowflake/connector/errors.py", line 215, in default_errorhandler
    raise error_class(
    ...<10 lines>...
    )
snowflake.connector.errors.ProgrammingError: 001003 (42000): SQL compilation error:
syntax error line 1 at position 30 unexpected 'ORDER'.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/mikejones/Projects/titan/.venv/bin/titan", line 10, in <module>
    sys.exit(titan_cli())
             ~~~~~~~~~^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/cli.py", line 284, in export
    resource_config = export_resources(include=resources)
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/operations/export.py", line 29, in export_resources
    config.update(export_resource(session, resource_type))
                  ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/operations/export.py", line 57, in export_resource
    raise e
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/operations/export.py", line 53, in export_resource
    resource = fetch_resource(session, urn)
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/data_provider.py", line 610, in fetch_resource
    return getattr(__this__, f"fetch_{urn.resource_label}")(session, urn.fqn)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/data_provider.py", line 2203, in fetch_table
    columns = fetch_columns(session, "TABLE", fqn)
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/data_provider.py", line 847, in fetch_columns
    desc_result = execute(session, f"DESC {resource_type} {fqn}")
  File "/Users/mikejones/Projects/titan/.venv/lib/python3.13/site-packages/titan/client.py", line 98, in execute
    raise ProgrammingError(f"failed to execute sql, [{sql_text}]", errno=err.errno) from err
snowflake.connector.errors.ProgrammingError: 001003: failed to execute sql, [DESC TABLE AIRBYTE.SALESFORCE.ORDER]

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