Skip to content

What is Table Identifier?  #341

Closed
Closed
@kevinjqliu

Description

@kevinjqliu

Question

In test_base.py the Table Identifier, TEST_TABLE_IDENTIFIER, is a tuple of 4 elements

TEST_TABLE_IDENTIFIER = ("com", "organization", "department", "my_table")

In most other places, the Table identifier is either a tuple of 2 elements (database_name, table_name) or a string with 2 parts, database_name.table_name.
See more examples

In #289, I wanted to implement the location for in-memory catalog the same way as other catalog implementations, by using the _resolve_table_location function.

location = self._resolve_table_location(location, database_name, table_name)

However, due to the Table Identifier being a 4-element tuple, I cannot parse the database name using identifier_to_database_and_table

database_name, table_name = self.identifier_to_database_and_table(identifier)

What is the proper spec of Table Identifier? And what part of it represents the database_name?

In Java implementation, TableIdentifier is made up of two parts, the namespace and the name, where
Namespace is a list of string.

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