1

I am trying to execute a change in colum length for a table usuing liquibase with the below code:

<changeSet author="kerberos" id="test">
<modifyDataType
    columnName="nae"
    newDataType="varchar(25)"
    schemaName="testschema"
    tableName="employee"/>
</changeSet>

however, i get the error: IllegelArgumentException: No enum constant liquibase.changelog.ChangeSet.ExecType.EXECUTED

Does anyone have any idea about what this means?

Thanks!

user1318369
  • 715
  • 5
  • 15
  • 34
  • How do you execute your changesets? – htshame Aug 01 '19 at 07:17
  • 1
    at @htshame said, need more information. It sounds like an installation/configuration issue. Would need to know what version of liquibase, how is it installed/used? - command line, via maven, etc. – SteveDonie Aug 01 '19 at 17:20
  • Hi @user1318369 , was your problem as described above eventually solved? If yes, how? I ran into a similar issue and am looking for inspirations. Thanks. – infiniteshi Jun 27 '22 at 18:56

1 Answers1

0

I recently came across with the same issue. The EXECTYPE is a field of Liquibase's table DATABASECHANGELOG, see the doc here https://docs.liquibase.com/concepts/tracking-tables/databasechangelog-table.html EXECTYPE VARCHAR(10) Description of how the changeset was executed. Possible values include EXECUTED, FAILED, SKIPPED, RERAN, and MARK_RAN.

In my case, the error stated "No enum constant liquibase.changelog.ChangeSet.ExecType.3.5.3", wherein the numeric isn't among the accepted values for this field. I peeked in the database and did find that numeric in the table. Removing that row eliminated the error immediately but broke other stuff (due to almost like a chain-reaction with other changesets) - that's another story and issue that needs to be addressed, of course. Update the culprit row and replace the bad data with "null" was probably a better workaround. Not entirely solving your problem, just providing some reference for consideration.

infiniteshi
  • 131
  • 1
  • 5