tableExists precondition and schemaName


I would assume that if I don’t specify schemaName in tableExists precondition, it would use defaultSchemaName parameter as usually (changeSets do).

However this is not the case because when I traced this call JdbcDatabaseSnapshotGenerator.hasTable -> AbstractDatabase.convertRequestedSchemaToSchema -> AbstractDatabase.getDefaultDatabaseSchemaName) it uses username who is currently connected. This is really confusing since user expects this schemaName attribute to be unambiguous throughout liquibase. At least there is no documentation about this different preconditions behavior.