ClickHouseProperties или ClickHouseDataSource чтобы можно было делать из джава кода INSERT в 50000 - 200000 строк через jdbsTemplate?
У меня приложение берет данных из одного хранилища, обрабатывает их и статистику планируется складывать в КХ. Для этого используется jdbsTemplate спринговый, в который в качества парамерта конструктора передается clickHouseDataSource, то есть jdbcTemplate = new JdbcTemplate(clickHouseDataSource)
Но когда я делаю INSERT в котором достаточно много VALUES, а именно больше 4000, то у меня вываливается ошибка
; nested exception is ru.yandex.clickhouse.except.ClickHouseUnknownException: ClickHouse exception, code: 1002, host: localhost, port: 8123; Code: 36, e.displayText() = DB::Exception: Element of set in IN or VALUES is not a constant expression: toDateTime: (at row 54715), e.what() = DB::Exception
Caused by: ru.yandex.clickhouse.except.ClickHouseUnknownException: ClickHouse exception, code: 1002, host: localhost, port: 8123; Code: 36, e.displayText() = DB::Exception: Element of set in IN or VALUES is not a constant expression: toDateTime: (at row 54715), e.what() = DB::Exception
Caused by: java.lang.Throwable: Code: 36, e.displayText() = DB::Exception: Element of set in IN or VALUES is not a constant expression: toDateTime: (at row 54715), e.what() = DB::Exception
Вас не смущает текст ошибки? Там не в размере батча дело.
Обсуждают сегодня