liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist

JIRA | Gabriel Potkány | 2 years ago
  1. 0

    Output of update operation (-changeLogFile=liq.xml): {code:java} liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist at liquibase.changelog.ChangeSet.handleRollbackNode(ChangeSet.java:373) at liquibase.changelog.ChangeSet.handleChildNode(ChangeSet.java:298) at liquibase.changelog.ChangeSet.load(ChangeSet.java:292) at liquibase.changelog.DatabaseChangeLog.createChangeSet(DatabaseChangeLog.java:379) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:240) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:356) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:248) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:215) at liquibase.Liquibase.update(Liquibase.java:192) at liquibase.integration.commandline.Main.doMigration(Main.java:1044) at liquibase.integration.commandline.Main.run(Main.java:175) at liquibase.integration.commandline.Main.main(Main.java:94) Liquibase Update Successful {code} Output of rollbackCountSQL 1 (-changeLogFile=liq.xml): {code:java} liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist at liquibase.changelog.ChangeSet.handleRollbackNode(ChangeSet.java:373) at liquibase.changelog.ChangeSet.handleChildNode(ChangeSet.java:298) at liquibase.changelog.ChangeSet.load(ChangeSet.java:292) at liquibase.changelog.DatabaseChangeLog.createChangeSet(DatabaseChangeLog.java:379) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:240) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:356) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:248) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:215) at liquibase.Liquibase.rollback(Liquibase.java:385) at liquibase.Liquibase.rollback(Liquibase.java:362) at liquibase.integration.commandline.Main.doMigration(Main.java:1087) at liquibase.integration.commandline.Main.run(Main.java:175) at liquibase.integration.commandline.Main.main(Main.java:94) -- ********************************************************************* -- Rollback 1 Change(s) Script -- ********************************************************************* -- Change Log: liq.xml -- Ran at: 23.2.2015 10:09 -- Against: test@10.0.2.2@jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8 -- Liquibase version: 3.3.2 -- ********************************************************************* -- Lock Database UPDATE test.DATABASECHANGELOGLOCK SET LOCKED = 1, LOCKEDBY = 'okis01-NTB (192.168.56.1)', LOCKGRANTED = '2015-02-23 10:09:46.214' WHERE ID = 1 AND LOCKED = 0; -- Rolling Back ChangeSet: test2.xml::test2::xpotkany DROP VIEW test.admins; DELETE FROM test.DATABASECHANGELOG WHERE ID='test2' AND AUTHOR='xpotkany' AND FILENAME='test2.xml'; -- Release Database Lock UPDATE test.DATABASECHANGELOGLOCK SET LOCKED = 0, LOCKEDBY = NULL, LOCKGRANTED = NULL WHERE ID = 1; {code} Now, issues with this: # It doesn't detect referenced changelog # It continues even though exception happened. This point seems to be windows specific, as I tried it in debian and even though first point applies it does not continue operation and output is different (SAXException). This bug is very dangerous as liquibase does default rollback action even though different rollback action is specified. As you can see in SQL log, it's dropping stuff even though rollback should result in updated view.

    JIRA | 2 years ago | Gabriel Potkány
    liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist
  2. 0

    Output of update operation (-changeLogFile=liq.xml): {code:java} liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist at liquibase.changelog.ChangeSet.handleRollbackNode(ChangeSet.java:373) at liquibase.changelog.ChangeSet.handleChildNode(ChangeSet.java:298) at liquibase.changelog.ChangeSet.load(ChangeSet.java:292) at liquibase.changelog.DatabaseChangeLog.createChangeSet(DatabaseChangeLog.java:379) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:240) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:356) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:248) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:215) at liquibase.Liquibase.update(Liquibase.java:192) at liquibase.integration.commandline.Main.doMigration(Main.java:1044) at liquibase.integration.commandline.Main.run(Main.java:175) at liquibase.integration.commandline.Main.main(Main.java:94) Liquibase Update Successful {code} Output of rollbackCountSQL 1 (-changeLogFile=liq.xml): {code:java} liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist at liquibase.changelog.ChangeSet.handleRollbackNode(ChangeSet.java:373) at liquibase.changelog.ChangeSet.handleChildNode(ChangeSet.java:298) at liquibase.changelog.ChangeSet.load(ChangeSet.java:292) at liquibase.changelog.DatabaseChangeLog.createChangeSet(DatabaseChangeLog.java:379) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:240) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:356) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:248) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:215) at liquibase.Liquibase.rollback(Liquibase.java:385) at liquibase.Liquibase.rollback(Liquibase.java:362) at liquibase.integration.commandline.Main.doMigration(Main.java:1087) at liquibase.integration.commandline.Main.run(Main.java:175) at liquibase.integration.commandline.Main.main(Main.java:94) -- ********************************************************************* -- Rollback 1 Change(s) Script -- ********************************************************************* -- Change Log: liq.xml -- Ran at: 23.2.2015 10:09 -- Against: test@10.0.2.2@jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8 -- Liquibase version: 3.3.2 -- ********************************************************************* -- Lock Database UPDATE test.DATABASECHANGELOGLOCK SET LOCKED = 1, LOCKEDBY = 'okis01-NTB (192.168.56.1)', LOCKGRANTED = '2015-02-23 10:09:46.214' WHERE ID = 1 AND LOCKED = 0; -- Rolling Back ChangeSet: test2.xml::test2::xpotkany DROP VIEW test.admins; DELETE FROM test.DATABASECHANGELOG WHERE ID='test2' AND AUTHOR='xpotkany' AND FILENAME='test2.xml'; -- Release Database Lock UPDATE test.DATABASECHANGELOGLOCK SET LOCKED = 0, LOCKEDBY = NULL, LOCKGRANTED = NULL WHERE ID = 1; {code} Now, issues with this: # It doesn't detect referenced changelog # It continues even though exception happened. This point seems to be windows specific, as I tried it in debian and even though first point applies it does not continue operation and output is different (SAXException). This bug is very dangerous as liquibase does default rollback action even though different rollback action is specified. As you can see in SQL log, it's dropping stuff even though rollback should result in updated view.

    JIRA | 2 years ago | Gabriel Potkány
    liquibase.parser.core.ParsedNodeException: Change set test2.xml::test::xpotkany does not exist
  3. Speed up your debug routine!

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. liquibase.parser.core.ParsedNodeException

      Change set test2.xml::test::xpotkany does not exist

      at liquibase.changelog.ChangeSet.handleRollbackNode()
    2. Liquibase Core
      Main.main
      1. liquibase.changelog.ChangeSet.handleRollbackNode(ChangeSet.java:373)
      2. liquibase.changelog.ChangeSet.handleChildNode(ChangeSet.java:298)
      3. liquibase.changelog.ChangeSet.load(ChangeSet.java:292)
      4. liquibase.changelog.DatabaseChangeLog.createChangeSet(DatabaseChangeLog.java:379)
      5. liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:240)
      6. liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211)
      7. liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25)
      8. liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:356)
      9. liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:248)
      10. liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211)
      11. liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25)
      12. liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:215)
      13. liquibase.Liquibase.rollback(Liquibase.java:385)
      14. liquibase.Liquibase.rollback(Liquibase.java:362)
      15. liquibase.integration.commandline.Main.doMigration(Main.java:1087)
      16. liquibase.integration.commandline.Main.run(Main.java:175)
      17. liquibase.integration.commandline.Main.main(Main.java:94)
      17 frames