diff --git a/ebean-api/src/main/java/io/ebean/config/dbplatform/clickhouse/ClickHousePlatform.java b/ebean-api/src/main/java/io/ebean/config/dbplatform/clickhouse/ClickHousePlatform.java index f1e8eca21..bb1b141e6 100644 --- a/ebean-api/src/main/java/io/ebean/config/dbplatform/clickhouse/ClickHousePlatform.java +++ b/ebean-api/src/main/java/io/ebean/config/dbplatform/clickhouse/ClickHousePlatform.java @@ -18,6 +18,8 @@ public class ClickHousePlatform extends DatabasePlatform { //this.exceptionTranslator = this.nativeUuidType = true; this.dbDefaultValue.setNow("now()"); + this.dbDefaultValue.setFalse("0"); + this.dbDefaultValue.setTrue("1"); this.dbIdentity.setIdType(IdType.IDENTITY); this.dbIdentity.setSupportsGetGeneratedKeys(false); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/DScriptRunner.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/DScriptRunner.java index fdb24bd0d..725b1a66d 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/DScriptRunner.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/DScriptRunner.java @@ -106,7 +106,10 @@ final class DScriptRunner implements ScriptRunner { try (Connection connection = obtainConnection()) { DdlRunner runner = new DdlRunner(useAutoCommit, scriptName, platformName); runner.runAll(content, connection); - connection.commit(); + if (!connection.getAutoCommit()) { + // Clickhouse fails: Cannot commit when auto-commit is enabled + connection.commit(); + } runner.runNonTransactional(connection); } diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql index 1d41eabbe..b4b1ecfff 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql @@ -53,7 +53,7 @@ create table migtest_e_basic ( description String, description_file blob, some_date DateTime, - old_boolean UInt8 default false, + old_boolean UInt8 default 0, old_boolean2 UInt8, eref_id UInt32, indextest1 String, diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.3.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.3.sql index 155817baa..523858c49 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.3.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.3.sql @@ -30,7 +30,7 @@ alter table migtest_e_basic alter column status2 set not null; alter table migtest_e_basic alter column user_id set default 23; alter table migtest_e_basic alter column user_id set not null; alter table migtest_e_basic add column description_file blob; -alter table migtest_e_basic add column old_boolean UInt8 default false; +alter table migtest_e_basic add column old_boolean UInt8 default 0; alter table migtest_e_basic add column old_boolean2 UInt8; alter table migtest_e_basic add column eref_id UInt32; alter table migtest_e_history2 alter column test_string drop default;