title: How to prevent dbt from rebuilding incremental tables when source view's columns change?
body: <p>We have the following structure in dbt:</p>
  <pre><code>[events (view), with column1, column2, column3]‒‒‒&gt;[incremental1, using column1 from events]
                                               |
                                               |
                                               └‒‒‒‒&gt;[incremental2, using column2 from events]
  </code></pre>
  <p>In our continuous integration setup, we run <code>dbt run --models state:modified+</code> to avoid running models that were not changed in a PR. However, the problem is that if we change <code>column3</code> in <code>events</code> (e.g. rename it), both incremental tables, <code>incremental1</code> and <code>incremental2</code>, will be fully rebuilt which may take an excessively long time, sometimes more than a whole day. Note that neither incremental tables are actually affected by the change in their source as they do not use the changed column in any way.</p>
  <p>Is there a way to avoid rebuilding these models while also not having to run all the other models (which is what a simple <code>dbt run</code> would do)?</p>
  <p>Some additional details:</p>
  <ul>
  <li>our dbt version is 1.0</li>
  <li>our data warehouse engine is Snowflake</li>
  <li>our incremental strategy is <code>'delete+insert'</code></li>
  </ul>