URGENT: failOnError="false" and runAlways="false" don't seem to have the desired intent.

With failOnError=“false” and runAlways=“false” I’d expect to have an entry in the databasechangelog regardless if there was an error or not.  This is not the case.  Therefore, I assume that the changeSet will keep being executed even with runAlways=“false”.  That seems contradictory.  Thoughts?

FYI, I can confirm that with failOnError=“false” and runAlways=“false”, no record of the changeset is made in the databasechangelog and the changeset continues to be attempted over and over again.