-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Open
Labels
Description
Is this a new bug in dbt-core?
- I believe this is a new bug in dbt-core
- I have searched the existing issues, and I could not find an existing issue for this bug
Current Behavior
When running dbt test, the command fails with the following error when models are configured to use a custom catalog integration defined in catalogs.yml:
Runtime Error
Catalog not found.Received: GLUE_CATALOG_INTEGRATIONExpected one of: INFO_SCHEMA, SNOWFLAKE?
However, other dbt commands like dbt parse, dbt run, and dbt build work correctly with the same catalog configuration.
Expected Behavior
The dbt test command should:
- Load custom catalog integrations from
catalogs.ymlbefore parsing the manifest - Successfully parse and execute tests for models using custom catalog integrations
- Behave consistently with other dbt commands (
run,build,parse)
Steps To Reproduce
- Create a dbt project connected to Snowflake
- Create a
catalogs.ymlfile in the project root:catalogs: - name: GLUE_CATALOG_INTEGRATION active_write_integration: glue_rest write_integrations: - name: glue_rest catalog_type: iceberg_rest table_format: iceberg adapter_properties: catalog_linked_database: %YOUR_LINKED_DATABASE% catalog_linked_database_type: glue
- Configure models to use the catalog in
dbt_project.yml:models: snowflake_data_warehouse: marts: seekwell: +catalog_name: "{{ 'GLUE_CATALOG_INTEGRATION' if not var('sqlfluff_run', false) else none }}" +schema: "%YOUR_SCHEMA_NAME%"
- Run
dbt parse→ ✅ Works - Run
dbt run --select some_model→ ✅ Works - Run
dbt build --select some_model→ ✅ Works - Run
dbt test→ ❌ Fails with "Catalog not found"
Relevant log output
> dbt test
07:00:45 Running with dbt=1.11.7
07:00:46 Registered adapter: snowflake=1.11.3
07:00:46 Unable to do partial parsing because saved manifest not found. Starting full parse.
07:00:47 Encountered an error:
Runtime Error
Catalog not found.Received: GLUE_CATALOG_INTEGRATIONExpected one of: INFO_SCHEMA, SNOWFLAKE?Environment
- OS: macOS 26.3.1 (arm64)
- Python: 3.13.11
- dbt-core: 1.11.7
- dbt-adapters: 1.11.7
- dbt-snowflake: 1.11.3Which database adapter are you using with dbt?
snowflake
Additional Context
The @requires.catalogs decorator: Located in dbt/cli/requires.py, this decorator:
- Loads catalogs from
catalogs.ymlviaload_catalogs() - Extracts active write integrations via
get_active_write_integration() - Passes them to
parse_manifest()which registers them with the adapter
@requires.postflight
@requires.preflight
@requires.profile
@requires.project
@requires.catalogs # ← ADD THIS LINE
@requires.runtime_config
@requires.manifest
def test(ctx, **kwargs):
"""Runs tests on data in deployed models"""Reactions are currently unavailable