fix(dremio): add +root_path to e2e project to fix CI with dbt-dremio 1.10.1 - #2275
Conversation
…1.10.1 dbt-dremio 1.10.1 changed TABLE schema resolution to use +root_path instead of +schema. Without +root_path set, tables fall back to target.root_path directly, landing at 'elementary_tests' instead of 'elementary_tests.elementary'. The CLI profile hardcodes 'elementary_tests.elementary', causing 'object not found' errors. Adding +root_path: elementary makes tables land at the same path in both 1.10.0 and 1.10.1. Co-authored-by: Cursor <cursoragent@cursor.com>
|
👋 @elazarlachkar |
📝 WalkthroughWalkthroughA single line is added to Changeselementary model root_path config
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Problem
`dbt-dremio` 1.10.1 introduced a breaking change in TABLE schema resolution: it now uses `+root_path` instead of `+schema` for table materializations. Without `+root_path` set, tables fall back to `target.root_path` directly — ignoring `+schema` entirely.
In the e2e test project, `elementary` models had `+schema: elementary` but no `+root_path`. After the implicit upgrade to 1.10.1 in CI, tables started landing at `elementary_tests` instead of `elementary_tests.elementary`. The CLI's `elementary` profile hardcodes `enterprise_catalog_folder: elementary_tests.elementary`, so `alerts_v2` couldn't find `test_result_rows` → "Object not found" error.
This only affects CI. Real users are unaffected because `edr generate-profile-yml` reads the actual compiled graph and writes the correct path into the `elementary` profile automatically.
Fix
Add `+root_path: elementary` to the e2e project's `dbt_project.yml`.
Both versions now agree with the CLI profile's hardcoded `elementary_tests.elementary`.