I noticed that when I add a column to a table now, when i apply the new changelog the column does not get added
DB Version: 19.28
SQLcl Version: 25.3.1.311.1257
Client Version: MS Windows 11
I created a test schema and simply
create table test_schema.test_table
(
id number generated always as identity,
name varchar2(100)
);
Then I created my changelog with the following command
lb generate-db-object -object-type table -object-name test_table -ovf
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:n0="http://www.oracle.com/xml/ns/dbchangelog-ext"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-latest.xsd">
<changeSet id="b7414746b5b1c5ed648be501717df1ed85c23366" author="(TEST_SCHEMA)-Generated" failOnError="true" runOnChange="true" runAlways="false" runInTransaction="false" >
<n0:createSxmlObject objectName="TEST_TABLE" objectType="TABLE" ownerName="TEST_SCHEMA" replaceIfExists="false" >
<n0:source><![CDATA[
<TABLE xmlns="http://xmlns.oracle.com/ku" version="1.0">
<SCHEMA>TEST_SCHEMA</SCHEMA>
<NAME>TEST_TABLE</NAME>
<RELATIONAL_TABLE>
<COL_LIST>
<COL_LIST_ITEM>
<NAME>ID</NAME>
<DATATYPE>NUMBER</DATATYPE>
<IDENTITY_COLUMN>
<SCHEMA>TEST_SCHEMA</SCHEMA>
<GENERATION>ALWAYS</GENERATION>
<START_WITH>1</START_WITH>
<INCREMENT>1</INCREMENT>
<MINVALUE>1</MINVALUE>
<MAXVALUE>9999999999999999999999999999</MAXVALUE>
<CACHE>20</CACHE>
</IDENTITY_COLUMN>
<NOT_NULL></NOT_NULL>
</COL_LIST_ITEM>
<COL_LIST_ITEM>
<NAME>NAME</NAME>
<DATATYPE>VARCHAR2</DATATYPE>
<LENGTH>100</LENGTH>
<COLLATE_NAME>USING_NLS_COMP</COLLATE_NAME>
</COL_LIST_ITEM>
</COL_LIST>
<DEFAULT_COLLATION>USING_NLS_COMP</DEFAULT_COLLATION>
<PHYSICAL_PROPERTIES>
<HEAP_TABLE>
<SEGMENT_ATTRIBUTES>
<SEGMENT_CREATION_IMMEDIATE></SEGMENT_CREATION_IMMEDIATE>
<PCTFREE>10</PCTFREE>
<PCTUSED>40</PCTUSED>
<INITRANS>1</INITRANS>
<MAXTRANS>255</MAXTRANS>
<STORAGE>
<INITIAL>65536</INITIAL>
<NEXT>1048576</NEXT>
<MINEXTENTS>1</MINEXTENTS>
<MAXEXTENTS>2147483645</MAXEXTENTS>
<PCTINCREASE>0</PCTINCREASE>
<FREELISTS>1</FREELISTS>
<FREELIST_GROUPS>1</FREELIST_GROUPS>
<BUFFER_POOL>DEFAULT</BUFFER_POOL>
<FLASH_CACHE>DEFAULT</FLASH_CACHE>
<CELL_FLASH_CACHE>DEFAULT</CELL_FLASH_CACHE>
</STORAGE>
<TABLESPACE>USERS</TABLESPACE>
<LOGGING>Y</LOGGING>
</SEGMENT_ATTRIBUTES>
<COMPRESS>N</COMPRESS>
</HEAP_TABLE>
</PHYSICAL_PROPERTIES>
</RELATIONAL_TABLE>
</TABLE>]]></n0:source>
</n0:createSxmlObject>
</changeSet>
</databaseChangeLog>
And applied to a test db, and it created the table
SQL> lb update -chf controller.xml
--Starting Liquibase at 2025-11-13T10:41:24.113415600 using Java 21.0.2 (version 4.30.0 #0 built at 2025-04-01 10:24+0000)
Running Changeset: test_table_table.xml::b7414746b5b1c5ed648be501717df1ed85c23366::(TEST_SCHEMA)-Generated
Table "TEST_SCHEMA"."TEST_TABLE" created.
UPDATE SUMMARY
Run: 1
Previously run: 0
Filtered out: 0
-------------------------------
Total change sets: 1
Liquibase: Update has been successful. Rows affected: 1
Operation completed successfully.
SQL> describe test_table
Name Null? Type
_______ ___________ ________________
ID NOT NULL NUMBER
NAME VARCHAR2(100)
SQL>
Then I added a column to the table and regenerated the changelog
alter table test_schema.test_table
add (name2 varchar2(100))
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:n0="http://www.oracle.com/xml/ns/dbchangelog-ext"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-latest.xsd">
<changeSet id="eba4edcc742babba8e0bc8e3381ab62a2f2f08be" author="(TEST_SCHEMA)-Generated" failOnError="true" runOnChange="true" runAlways="false" runInTransaction="false" >
<n0:createSxmlObject objectName="TEST_TABLE" objectType="TABLE" ownerName="TEST_SCHEMA" replaceIfExists="false" >
<n0:source><![CDATA[
<TABLE xmlns="http://xmlns.oracle.com/ku" version="1.0">
<SCHEMA>TEST_SCHEMA</SCHEMA>
<NAME>TEST_TABLE</NAME>
<RELATIONAL_TABLE>
<COL_LIST>
<COL_LIST_ITEM>
<NAME>ID</NAME>
<DATATYPE>NUMBER</DATATYPE>
<IDENTITY_COLUMN>
<SCHEMA>TEST_SCHEMA</SCHEMA>
<GENERATION>ALWAYS</GENERATION>
<START_WITH>1</START_WITH>
<INCREMENT>1</INCREMENT>
<MINVALUE>1</MINVALUE>
<MAXVALUE>9999999999999999999999999999</MAXVALUE>
<CACHE>20</CACHE>
</IDENTITY_COLUMN>
<NOT_NULL></NOT_NULL>
</COL_LIST_ITEM>
<COL_LIST_ITEM>
<NAME>NAME</NAME>
<DATATYPE>VARCHAR2</DATATYPE>
<LENGTH>100</LENGTH>
<COLLATE_NAME>USING_NLS_COMP</COLLATE_NAME>
</COL_LIST_ITEM>
<COL_LIST_ITEM>
<NAME>NAME2</NAME>
<DATATYPE>VARCHAR2</DATATYPE>
<LENGTH>100</LENGTH>
<COLLATE_NAME>USING_NLS_COMP</COLLATE_NAME>
</COL_LIST_ITEM>
</COL_LIST>
<DEFAULT_COLLATION>USING_NLS_COMP</DEFAULT_COLLATION>
<PHYSICAL_PROPERTIES>
<HEAP_TABLE>
<SEGMENT_ATTRIBUTES>
<SEGMENT_CREATION_IMMEDIATE></SEGMENT_CREATION_IMMEDIATE>
<PCTFREE>10</PCTFREE>
<PCTUSED>40</PCTUSED>
<INITRANS>1</INITRANS>
<MAXTRANS>255</MAXTRANS>
<STORAGE>
<INITIAL>65536</INITIAL>
<NEXT>1048576</NEXT>
<MINEXTENTS>1</MINEXTENTS>
<MAXEXTENTS>2147483645</MAXEXTENTS>
<PCTINCREASE>0</PCTINCREASE>
<FREELISTS>1</FREELISTS>
<FREELIST_GROUPS>1</FREELIST_GROUPS>
<BUFFER_POOL>DEFAULT</BUFFER_POOL>
<FLASH_CACHE>DEFAULT</FLASH_CACHE>
<CELL_FLASH_CACHE>DEFAULT</CELL_FLASH_CACHE>
</STORAGE>
<TABLESPACE>USERS</TABLESPACE>
<LOGGING>Y</LOGGING>
</SEGMENT_ATTRIBUTES>
<COMPRESS>N</COMPRESS>
</HEAP_TABLE>
</PHYSICAL_PROPERTIES>
</RELATIONAL_TABLE>
</TABLE>]]></n0:source>
</n0:createSxmlObject>
</changeSet>
</databaseChangeLog>
Applied using the same method
SQL> lb update -chf controller.xml
--Starting Liquibase at 2025-11-13T10:43:21.280581300 using Java 21.0.2 (version 4.30.0 #0 built at 2025-04-01 10:24+0000)
Running Changeset: test_table_table.xml::eba4edcc742babba8e0bc8e3381ab62a2f2f08be::(TEST_SCHEMA)-Generated
UPDATE SUMMARY
Run: 1
Previously run: 0
Filtered out: 0
-------------------------------
Total change sets: 1
Liquibase: Update has been successful. Rows affected: 1
Operation completed successfully.
SQL> describe test_table
Name Null? Type
_______ ___________ ________________
ID NOT NULL NUMBER
NAME VARCHAR2(100)
SQL>
I know this used to work, any suggestions? @thatjeffsmith-oracle ? Is there a new method to deploy table column changes? We haven't switched to projects yet