Open abrown-calix opened 4 weeks ago
Thanks for reaching out @abrown-calix !
Could you double-check that the DBT_DEFER
and DBT_STATE
environment variables are available in their Windows terminal?
The precise instructions to check those environment variables will vary depending on the Windows terminal they are using. But I'll try to include a few of the most common ones.
echo %DBT_DEFER%
echo %DBT_STATE%
$env:DBT_DEFER
$env:DBT_STATE
echo $DBT_DEFER
echo $DBT_STATE
in each they are reflecting accurately.
Could you try a few other things and see if any of them work for the Windows users?
DBT_DEFER=1
instead of DBT_DEFER=true
We have already tried to upgrade to dbt 1.8 and it always is running all the models unfortunately.
We have tried with quotes . One of our windows users has python 3.11.8 and it is behaving the same.
Is this a new bug in dbt-core?
Current Behavior
We have set environment variables DBT_DEFER=true and DBT_STATE= path to prod manifest file. When we run dbt run -m and look at the manifest.json the deferred is true (deferred: true). However when we run command: dbt run -m state:modified or dbt run --select state:modified the deferred is false (deferred: false). This causes dbt to run ALL models as the database listed in the manifest.json file is not correct.
This seems to only happen for those with windows machines. We have a few folks on our team that have macs and everything works fine.
Expected Behavior
When we run: dbt run -m state:modified, it should ONLY run the modified model not all models. The deferred flag in the manifest.json should be deferred: true.
Steps To Reproduce
Relevant log output
Incorrect manifest:
Correct manifest:
Environment
Which database adapter are you using with dbt?
snowflake
Additional Context