I'm reaching out for assistance with running DBT tests using AWS Glue Iceberg tables. It appears that the test module does not support the glue_catalog prefix required for Iceberg Tables. I have attempted several workarounds without success.
Versions:
Running with dbt=1.8.4
Registered adapter: glue=1.8.1
Command executed:
dbt test --select tag:my_tag_name --target=silver_light
Expected behavior
Error obtained because it tried to find the table without the prefix glue_catalog
AnalysisException: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to fetch table my_tag_name. StorageDescriptor#InputFormat cannot be null for table: my_tag_name (Service: null; Status Code: 0; Error Code: null; Request ID: null; Proxy: null)
18:43:01 2 of 2 ERROR unique_my_tag_name_identifier_column ............ [ERROR in 624.84s]
Screenshots and log output
System information
The output of dbt --version:
Core:
- installed: 1.8.4
- latest: 1.8.4 - Up to date!
Plugins:
- glue: 1.8.1 - Up to date!
- spark: 1.8.0 - Up to date!
The operating system you're using:
macOS Sonoma Version 14.3.1
The output of python --version:
Python 3.9.6
Additional context
The Amazon Documentation says that to access Iceberg Tables in glue with spark, it's needed to use the prefix glue_catalog. before the database/table name.
https://docs.aws.amazon.com/prescriptive-guidance/latest/apache-iceberg-on-aws/iceberg-spark.html
When trying to use the query in dbt-logs, there is the error where it cannot find the Table, but if we use the glue_catalog prefix required for Iceberg Tables, we can access the data.
Describe the bug
I'm reaching out for assistance with running DBT tests using AWS Glue Iceberg tables. It appears that the test module does not support the glue_catalog prefix required for Iceberg Tables. I have attempted several workarounds without success.
Versions: Running with dbt=1.8.4 Registered adapter: glue=1.8.1
Steps To Reproduce
Create a dbt profile for Iceberg tables
Sample config for Iceberg table:
Sample of the Glue Profile
The model schema sample:
Command executed: dbt test --select tag:my_tag_name --target=silver_light
Expected behavior
Error obtained because it tried to find the table without the prefix glue_catalog
Screenshots and log output
System information
The output of
dbt --version
:The operating system you're using: macOS Sonoma Version 14.3.1
The output of
python --version
: Python 3.9.6Additional context
The Amazon Documentation says that to access Iceberg Tables in glue with spark, it's needed to use the prefix
glue_catalog.
before the database/table name. https://docs.aws.amazon.com/prescriptive-guidance/latest/apache-iceberg-on-aws/iceberg-spark.html When trying to use the query in dbt-logs, there is the error where it cannot find the Table, but if we use the glue_catalog prefix required for Iceberg Tables, we can access the data.