Ok... replying to my own post above... After a bit more digging I see
that the AbstractJdbcDatabase.executeRollbackStatements contains the
changes submitted as part of CORE-457. However, that code path is
only hit when custom rollback steps are not provided (only the Liquibase
generated rollback steps will be executed). When custom rollback
steps are provided, the ExecutorService.execute method is called
instead, which skips the code where the superfluous visitors are culled.
Unless there is a good reason why this should be the case, I will
file a bug and submit a pull request to ensure that the
applyToRollback attribute is respected in either execution path.
Regards,
Daniel Morton