# Liquibase: runOnChange + rollback

**URL:** <https://forum.liquibase.org/t/liquibase-runonchange-rollback/3287>\
**Category:** General Discussion\
**Created:** [October 2, 2015, 4:29am UTC](https://forum.liquibase.org/t/liquibase-runonchange-rollback/3287 "2015-10-02T04:29:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![dbf256](https://avatars.discourse-cdn.com/v4/letter/d/7c8e57/32.png) [@dbf256](https://forum.liquibase.org/u/dbf256)\
**Post date:** [October 2, 2015, 4:29am UTC](https://forum.liquibase.org/t/liquibase-runonchange-rollback/3287/1 "2015-10-02T04:29:00Z")

</div>

According to Liquibase docs stored procs/triggers etc should be stored separately in a single copy and added to changeset with runOnChange to update them for each change. But what is a recommended way to rollback to the previous change? The only idea that I have is to copy them to a separate folder for each release and add apply operation of this version as a rollback (for example, have sql\procs\current for last version all added to changelog as apply and sql\procs\1.0.0 is a copy of sql\procs\current when we started new 1.0.0 release). Are there any best practices for it? Thanks!
