RequireChangesetIDisUUID

Last updated: January 22, 2026

Enforces that all changeset IDs use the standard UUID or GUID format with the 8-4-4-4-12 hyphenated pattern, promoting globally unique changeset identifiers that prevent collisions and improve traceability across distributed teams and multiple changelog files.

Uses

Property

Value

Liquibase version required

4.12.0+

Scope (--checks-scope)

changelog

Default status

disabled

Default severity (exit code)

0 ("INFO")

Customizable settings

No (static)

Procedure

1

Enable

This check is disabled by default. To enable it, run the checks enable command:

liquibase checks enable --check-name=<string>

2

To run the check, use the checks run command.

loading

loading

Note: For flow files you'll need to run liquibase flow to apply your changes.

Example output

Check 'RequireChangesetIDisUUID' has been enabled.

#

Check Name

Short Name

Description

Enabled

Customization

Severity

Scope

10

Warn on Detection of 'GRANT' Statements

SqlGrantWarn

This check warns a user when SQL contains 'GRANT' statements so that they can ensure that the privilege being granted won't lead to security issues.

false

None

0

changelog

20

Warn on Detection of 'REVOKE' Statements

SqlRevokeWarn

This check warns a user when SQL contains 'REVOKE' statements so that they can ensure that the privilege being revoked won't lead to data access and dependency issues.

false

None

0

changelog

30

Warn when 'DROP TABLE' detected

ChangeDropTableWarn

This check warns a user when a table is being dropped so that they can ensure that dropping the table won't lead to unintentional loss of data.

false

None

0

changelog

40

Warn when 'DROP COLUMN' detected

ChangeDropColumnWarn

This check warns a user when a column is being dropped so that they can ensure that dropping the column won't lead to unintentional loss of data.

false

None

0

changelog

50

Warn when 'MODIFY column' detected

ModifyDataTypeWarn

This check warns a user when a change will result in modification of a data type so they can ensure that modifying the data type won't lead to unintentional loss of data

false

None

0

changelog

60

Check for specific patterns in sql

SqlUserDefinedPatternCheck

This check scans raw SQL for the presence of specific patterns and warns the user when they are found.

false

SEARCH_STRING = null

MESSAGE = A match for regular expression SEARCH_STRING was detected in Changeset CHANGESET.

STRIP_COMMENTS = true

0

changelog

70

Check Table Column Count

TableColumnLimit

Ensures that no table has more than a threshold number of columns.

true

MAX_COLUMNS = 2

1

changelog, database

80

Object name pattern match

ObjectNameMustMatch

This check confirms the listed object names conform to the supplied pattern.

false

OPERATOR = STARTS_WITH

SEARCH_STRING = null

OBJECT_TYPES = null

CASE_SENSITIVE = true

0

changelog, database

85

Object name pattern not match

ObjectNameMustNotMatch

This check confirms the listed object names do not match the supplied pattern.

false

OPERATOR = STARTS_WITH

SEARCH_STRING = null

OBJECT_TYPES = null

CASE_SENSITIVE = true

0

changelog, database

90

Warn on Grant of Specific Privileges

SqlGrantSpecificPrivsWarn

This check warns a user when changeset includes or generates sql that grants specific privileges to a user or role

false

PRIVILEGE_LIST = null

0

changelog

100

Warn when 'TRUNCATE TABLE' detected

ChangeTruncateTableWarn

This check warns a user when a table is being truncated so that they can ensure that truncating the table won't lead to unintentional loss of data.

false

None

0

changelog

110

Warn on Detection of grant that contains 'WITH GRANT OPTION'

SqlGrantOptionWarn

This check warns a user when SQL contains 'GRANT' statements that include the 'WITH GRANT OPTION' clause so that they can ensure that the privilege being granted won't lead to security issues

false

None

0

changelog

130

Warn on Detection of grant that contains 'WITH ADMIN OPTION'

SqlGrantAdminWarn

This check warns a user when SQL contains 'GRANT' statements that include the 'WITH ADMIN OPTION' clause so that they can ensure that the privilege being granted won't lead to security issues

false

None

0

changelog

160

Rollback Required for Changeset

RollbackRequired

This check triggers when a changeset does not have a rollback defined.

false

None

0

changelog

170

Changesets Must Have a Label Assigned

ChangesetLabelCheck

This check enforces the Liquibase recommendation that labels be assigned to each changeset to provide better deployment control and to enhance traceability of efforts across changesets.

false

None

0

changelog

173

Changesets Must Have a Context Assigned

ChangesetContextCheck

This check enforces the Liquibase recommendation that contexts be assigned to each changeset to provide better deployment control and to enhance traceability of efforts across changesets.

false

None

0

changelog

176

Changesets Must Have a Comment Assigned

ChangesetCommentCheck

This check enforces the Liquibase recommendation that comments be added to each changeset to document the purpose of a changeset for other/future consumers of this changelog

false

None

0

changelog

500

Table must have a comment

TableCommentCheck

This check flags any Table described in a changelog or existing on a database target which does not have a Comment. (Note: This is not a check for a Liquibase changelog comment.)

true

None

0

database

510

Table Comment Pattern Check

ExamplePatternCheck

This check triggers when specific user-supplied patterns are found in Table Comments.

true

OPERATOR = CONTAINS

SEARCH_STRING = PRIMARY_TABLE

MESSAGE = MATCH

1

changelog, database

510

Table Comment Pattern Check

TableCommentPatternCheck

This check triggers when specific user-supplied patterns are found in Table Comments.

false

OPERATOR = CONTAINS

SEARCH_STRING = null

MESSAGE = A match for regular expression SEARCH_STRING was detected in IDENTIFIER.

0

changelog, database

570

Constraint must exist

ConstraintCheckShortName

Check for and alert when specified table does not contain the required constraint(s).

true

CONSTRAINT_OPERATOR = CONTAINS

TABLE_NAME = PRIMARY_TABLE

COLUMN_NAME = NULLABLECOL

CONSTRAINT = PRIMARYKEY

CASE_SENSITIVE = false

MESSAGE = Example Message

1

database

570

Constraint must exist

ConstraintMustExist

Check for and alert when specified table does not contain the required constraint(s).

false

CONSTRAINT_OPERATOR = STARTS_WITH

TABLE_NAME = null

COLUMN_NAME = null

CONSTRAINT = PRIMARYKEY

CASE_SENSITIVE = true

MESSAGE = The specified table 'TABLE_NAME' does not contain the required 'CONSTRAINT' constraint.

0

database

570

Constraint must exist

ConstraintMustExistTEST

Check for and alert when specified table does not contain the required constraint(s).

true

CONSTRAINT_OPERATOR = ALL

CONSTRAINT = Primarykey

CASE_SENSITIVE = false

MESSAGE = any

0

database

Liquibase command 'checks enable' was executed successfully.