title: Unexpected error running Liquibase: Unknown reason Throwing NPE
body: <p>Been using Liquibase a long time, and love it. However, on the project I'm currently working on,  I'm encountering an issue I don't seem to be able to find the cause.</p>
  <p>I can run <strong>every</strong> changelog/feature/*.xml file from the command line (using update) and everything succeeds.</p>
  <p>I can run <strong>every</strong> db.changelog-*.xml file (except master) from the command line (using update) and everything succeeds.</p>
  <p>But when I try and run the db.changelog-master file, I get:</p>
  <pre><code>Starting Liquibase at Tue, 14 Apr 2020 11:49:47 CDT (version 3.8.0 built at 2019-08-15T20:38:06Z)
  Liquibase Community 3.8.0 by Datical
  Unexpected error running Liquibase: Unknown reason
  liquibase.exception.ChangeLogParseException: liquibase.exception.SetupException
      at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) ~[liquibase.jar:na]
      at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:217) ~[liquibase.jar:na]
      at liquibase.Liquibase.update(Liquibase.java:190) ~[liquibase.jar:na]
      at liquibase.Liquibase.update(Liquibase.java:179) ~[liquibase.jar:na]
      at liquibase.integration.commandline.Main.doMigration(Main.java:1223) [liquibase.jar:na]
      at liquibase.integration.commandline.Main.run(Main.java:209) [liquibase.jar:na]
      at liquibase.integration.commandline.Main.main(Main.java:132) [liquibase.jar:na]
  Caused by: liquibase.exception.SetupException: null
      at liquibase.changelog.DatabaseChangeLog.includeAll(DatabaseChangeLog.java:531) ~[liquibase.jar:na]
      at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:398) ~[liquibase.jar:na]
      at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:308) ~[liquibase.jar:na]
      at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:23) ~[liquibase.jar:na]
      ... 6 common frames omitted
  Caused by: java.lang.NullPointerException: null
      at java.util.AbstractCollection.addAll(AbstractCollection.java:343) ~[na:1.8.0_242]
      at liquibase.integration.commandline.CommandLineResourceAccessor.list(CommandLineResourceAccessor.java:44) ~[liquibase.jar:na]
      at liquibase.resource.CompositeResourceAccessor.list(CompositeResourceAccessor.java:40) ~[liquibase.jar:na]
      at liquibase.changelog.DatabaseChangeLog.includeAll(DatabaseChangeLog.java:506) ~[liquibase.jar:na]
      ... 9 common frames omitted
  
  
  For more information, please use the --logLevel flag
  </code></pre>
  <p>I did find an old view and trigger that were created during research for the project for a different schema, which were never run in this one (neither was in this DATABASECHANGELOG). They've been deleted, but the problem still exists.</p>
  <p>Running:</p>
  <ul>
  <li>macOS Catalina 10.15.3</li>
  <li>openjdk version &quot;1.8.0_242&quot;</li>
  <li>OpenJDK Runtime Environment (Zulu 8.44.0.11-CA-macosx) (build
  1.8.0_242-b20)</li>
  <li>OpenJDK 64-Bit Server VM (Zulu 8.44.0.11-CA-macosx) (build
  25.242-b20, mixed mode)</li>
  <li>Oracle Database 11g Enterprise Edition Release 11.2.0.2.0</li>
  <li>64bit Production PL/SQL Release 11.2.0.2.0 Production</li>
  <li>CORE 11.2.0.2.0  Production</li>
  <li>TNS for Linux: Version 11.2.0.2.0 Production</li>
  <li>NLSRTL Version 11.2.0.2.0 Production</li>
  <li>Liquibase 3.8.0</li>
  </ul>
  <p>Tried everything I can think of. Anyone have any thoughts?</p>
  <br>
  **UPDATE APR-29-2020**
  <hr/>
  I have a little more information - I've discovered WHAT is happening, and the plan to fix this isn't working. 
  <p>The what:
  Apparently Liqiubase changed the includeAll path somewhere between version 3.4.2 and 3.5.5:
  See '<a href="https://forum.liquibase.org/t/upgrade-from-3-4-2-to-3-5-5-includeall-issues/3632" rel="nofollow noreferrer">Upgrade from 3.4.2 to 3.5.5 or higher</a>'</p>
  <p>I'd copied our liquibase setup from a legacy system running 3.4.2. In the db.changelog-master.xml file, it has <code>&lt;includeAll path=&quot;/features&quot;/&gt;</code> (leading slash). However, on the new project, I upgraded to 3.8.0. And the includeAll is what's throwing the exception.</p>
  <p>The new value is <code>&lt;includeAll path=&quot;features/&quot;/&gt;</code> (trailing slash). The format for the FILENAME column in DATABASECHANGELOG is the same, i.e. features/20191024-LD-1.xml</p>
  <p>In the documentation, there's a command line maintenance command that looks perfectly designed for this fix: cleanCheckSums. Per the website:</p>
  <blockquote>
  <p>Removes current checksums from database. On next update changesets
  that have already been deployed will have their checksums recomputed,
  and changesets that have not been deployed will be deployed.</p>
  </blockquote>
  <p>Challenge is that yes, cleanCheckSums nulls the MD5SUM column, the EXECTYPE column is EXECUTED, and each row has a populated DEPLOYMENT_ID, but the next update command tries to re-run all of the changesets.</p>
  <p>Here's the plan we created for the fix:</p>
  <p>Steps</p>
  <ol>
  <li><p>Change the includeAll parameter path in <code>db.changelog-master.xml</code>:<br> <code>&lt;includeAll path=&quot;features/&quot;/&gt;</code></p>
  </li>
  <li><p>Run liquidate clearCheckSums:<br>
  <code>$LIQUIBASE_HOME/liquibase \ --driver=oracle.jdbc.OracleDriver \ --classpath=/data/apps/liquibase-3.8.0/ojdbc7.jar \ --url={pathToDatabase} \ --username={dbUserName} \ --password={dbUserPass} \ clearCheckSums</code></p>
  </li>
  <li><p>SQL to fix the database column filename to the expected format<br>
  Appears to be exactly the same format:<br>
  old:      <code>features/20191024-LD-1.xml</code><br>
  new test: <code>features/20200429-deleteme.xml</code></p>
  </li>
  <li><p>Run master update:<br>
  <code>$LIQUIBASE_HOME/liquibase \ --driver=oracle.jdbc.OracleDriver \ --classpath=/data/apps/liquibase-3.8.0/ojdbc7.jar \ --url={pathToDatabase} \ --changeLogFile=db.changelog-master.xml \ --username={dbUserName} \ --password={dbUserPass} \ update</code></p>
  </li>
  </ol>
  <p>Anyone know what I'm missing?</p>