Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Conversation

@mark-major
Copy link
Contributor

@mark-major mark-major commented Sep 7, 2024

Closes #314

Glue and Hive catalogs list_tables() method filters for Iceberg tables.

@mark-major mark-major marked this pull request as draft September 7, 2024 15:45
@mark-major mark-major force-pushed the filter-out-non-iceberg-tables branch from cbe2ff6 to cfb1d45 Compare September 10, 2024 19:19
@mark-major mark-major marked this pull request as ready for review September 10, 2024 19:22
@mark-major mark-major changed the title WIP: Catalog return only Iceberg tables Glue and Hive catalog return only Iceberg tables Sep 10, 2024
Copy link
Collaborator

@sungwy sungwy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @mark-major thank you for putting together this PR. The tests for the hive and glue catalogs seem to prove that your implementation is working 💯

I've left a question about the dynamodb implementation, and a nit suggestion, please let me know your thoughts!

pyiceberg/catalog/glue.py Outdated Show resolved Hide resolved

def list_tables(self, namespace: Union[str, Identifier]) -> List[Identifier]:
"""List tables under the given namespace in the catalog (including non-Iceberg tables).
"""List Iceberg tables under the given namespace in the catalog.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I noticed that we only updated the docstring here, without a change in the code.
Does Dynamodb already only return Iceberg tables?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was quite a long time since I have worked on this, but if I recall correctly then yes, DynamoDB returned only Iceberg tables.

Co-authored-by: Sung Yun <107272191+sungwy@users.noreply.github.com>
Copy link
Collaborator

@sungwy sungwy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you again for working on this @mark-major ! I've confirmed that this behavior is consistent with Java

@sungwy sungwy merged commit a272bf7 into apache:main Oct 19, 2024
@sungwy sungwy changed the title Glue and Hive catalog return only Iceberg tables Bug Fix: Glue and Hive catalog return only Iceberg tables Oct 19, 2024
@mark-major mark-major deleted the filter-out-non-iceberg-tables branch November 8, 2024 17:29
sungwy added a commit to sungwy/iceberg-python that referenced this pull request Dec 7, 2024
* glue and hive returns iceberg tables

* fix formatting

* Update pyiceberg/catalog/glue.py

Co-authored-by: Sung Yun <107272191+sungwy@users.noreply.github.com>

---------

Co-authored-by: Sung Yun <107272191+sungwy@users.noreply.github.com>
sungwy added a commit to sungwy/iceberg-python that referenced this pull request Dec 7, 2024
* glue and hive returns iceberg tables

* fix formatting

* Update pyiceberg/catalog/glue.py

Co-authored-by: Sung Yun <107272191+sungwy@users.noreply.github.com>

---------

Co-authored-by: Sung Yun <107272191+sungwy@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Inconsistency in catalog.list_tables Behavior Across Python and Java: Returns Non-Iceberg Tables in Python Only

2 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.