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.
Question
In
test_base.pythe Table Identifier,TEST_TABLE_IDENTIFIER, is a tuple of 4 elementsIn 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
locationfor in-memory catalog the same way as other catalog implementations, by using the_resolve_table_locationfunction.However, due to the Table Identifier being a 4-element tuple, I cannot parse the database name using
identifier_to_database_and_tableWhat is the proper spec of Table Identifier? And what part of it represents the
database_name?In Java implementation,
TableIdentifieris made up of two parts, thenamespaceand thename, whereNamespaceis a list of string.