diff --git a/liquibase-dialect/pom.xml b/liquibase-dialect/pom.xml
index 2823182..78c4e13 100644
--- a/liquibase-dialect/pom.xml
+++ b/liquibase-dialect/pom.xml
@@ -12,7 +12,7 @@
tech.ydb.dialects
liquibase-ydb-dialect
- 0.9.1
+ 0.9.2
Liquibase YDB Dialect
Support Liquibase YDB Dialect
diff --git a/liquibase-dialect/src/main/java/tech/ydb/liquibase/sqlgenerator/CreateIndexGeneratorYdb.java b/liquibase-dialect/src/main/java/tech/ydb/liquibase/sqlgenerator/CreateIndexGeneratorYdb.java
index f8f2258..53de3bb 100644
--- a/liquibase-dialect/src/main/java/tech/ydb/liquibase/sqlgenerator/CreateIndexGeneratorYdb.java
+++ b/liquibase-dialect/src/main/java/tech/ydb/liquibase/sqlgenerator/CreateIndexGeneratorYdb.java
@@ -104,7 +104,7 @@ public ValidationErrors validate(
ValidationErrors errors = super.validate(createIndexStatement, database, sqlGeneratorChain);
errors.checkRequiredField("name", createIndexStatement.getIndexName());
- if (createIndexStatement.isUnique()) {
+ if (createIndexStatement.isUnique() != null && createIndexStatement.isUnique()) {
errors.addError(DOES_NOT_SUPPORT_UNIQUE_CONSTRAINT +
"[table name = " + createIndexStatement.getTableName() + ", " +
"index name = " + createIndexStatement.getIndexName() + "]");
@@ -116,10 +116,10 @@ public ValidationErrors validate(
badColumnStrPointer(createIndexStatement, column));
}
- if (column.getComputed() != null && column.getComputed()) {
- errors.addError("YDB doesn't support computed column in index! " +
- badColumnStrPointer(createIndexStatement, column));
- }
+ if (column.getComputed() != null && column.getComputed()) {
+ errors.addError("YDB doesn't support computed column in index! " +
+ badColumnStrPointer(createIndexStatement, column));
+ }
}
return errors;
diff --git a/liquibase-dialect/src/main/java/tech/ydb/liquibase/type/DateTypeYdb.java b/liquibase-dialect/src/main/java/tech/ydb/liquibase/type/DateTypeYdb.java
new file mode 100644
index 0000000..b97823c
--- /dev/null
+++ b/liquibase-dialect/src/main/java/tech/ydb/liquibase/type/DateTypeYdb.java
@@ -0,0 +1,23 @@
+package tech.ydb.liquibase.type;
+
+import liquibase.change.core.LoadDataChange;
+import liquibase.datatype.DataTypeInfo;
+import liquibase.datatype.LiquibaseDataType;
+
+/**
+ * @author Kirill Kurdyukov
+ */
+@DataTypeInfo(
+ name = "Date",
+ minParameters = 0,
+ maxParameters = 0,
+ aliases = {"java.sql.Types.DATE", "smalldatetime"},
+ priority = LiquibaseDataType.PRIORITY_DATABASE
+)
+public class DateTypeYdb extends BaseTypeYdb {
+
+ @Override
+ public LoadDataChange.LOAD_DATA_TYPE getLoadTypeName() {
+ return LoadDataChange.LOAD_DATA_TYPE.DATE;
+ }
+}
\ No newline at end of file
diff --git a/liquibase-dialect/src/main/resources/META-INF/services/liquibase.datatype.LiquibaseDataType b/liquibase-dialect/src/main/resources/META-INF/services/liquibase.datatype.LiquibaseDataType
index 07bd515..71dd6dd 100644
--- a/liquibase-dialect/src/main/resources/META-INF/services/liquibase.datatype.LiquibaseDataType
+++ b/liquibase-dialect/src/main/resources/META-INF/services/liquibase.datatype.LiquibaseDataType
@@ -1,5 +1,6 @@
tech.ydb.liquibase.type.BoolTypeYdb
tech.ydb.liquibase.type.BytesTypeYdb
+tech.ydb.liquibase.type.DateTypeYdb
tech.ydb.liquibase.type.DecimalTypeYdb
tech.ydb.liquibase.type.DoubleTypeYdb
tech.ydb.liquibase.type.FloatTypeYdb
diff --git a/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseAllTypesTableTest.java b/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseAllTypesTableTest.java
index 3ee965d..b23ab64 100644
--- a/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseAllTypesTableTest.java
+++ b/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseAllTypesTableTest.java
@@ -23,7 +23,7 @@ void changelogXmlMigrationAllTypesTableTest() throws SQLException, LiquibaseExce
"float_column FLOAT, double_column DOUBLE, " +
"decimal_column DECIMAL(22,9), text_column TEXT, " +
"binary_column BYTES, json_column JSON, " +
- "jsondocument_column JSONDOCUMENT, date_column date, " +
+ "jsondocument_column JSONDOCUMENT, date_column DATE, " +
"datetime_column DATETIME, timestamp_column TIMESTAMP, " +
"interval_column INTERVAL, PRIMARY KEY (id) );"
)
diff --git a/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseChangeLogStateTest.java b/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseChangeLogStateTest.java
index f4df388..e92491b 100644
--- a/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseChangeLogStateTest.java
+++ b/liquibase-dialect/src/test/java/tech/ydb/liquibase/YdbDatabaseLiquibaseChangeLogStateTest.java
@@ -57,7 +57,7 @@ private static void changeLogStep1() throws SQLException, LiquibaseException {
outputMigration.contains(
"-- Changeset changelogs/migration/series.xml::series::kurdyukov-kir\n" +
"-- Table series.\n" +
- "CREATE TABLE series (series_id INT64, title TEXT, series_info TEXT, release_date date, PRIMARY KEY (series_id) );\n" +
+ "CREATE TABLE series (series_id INT64, title TEXT, series_info TEXT, release_date DATE, PRIMARY KEY (series_id) );\n" +
"\n" +
"ALTER TABLE series ADD INDEX series_index GLOBAL ON (title);\n" +
"\n" +