так при использовании Array(UInt8) при создании дикта.
Есть вьюха постгреса, которая среди прочих колонок возвращает колонку с массивом маленьких интов.
CREATE
DICTIONARY IF NOT
EXISTS db.mvm_for_cpra_and_project (
...
clinical_relevance_classes Array(UInt8)
)
PRIMARY KEY project_id, cpra
SOURCE(POSTGRESQL(...))
LIFETIME(10)
LAYOUT(COMPLEX_KEY_HASHED());
Словарь создается без проблем, однако при попытке посмотреть его получаю:
Code: 1001, type: pqxx::conversion_error, e.what() = Could not convert string to t: '[]'., (version 21.6.3.14 (official build))
В чем может быть дело?
Ошибка будто бы указывает на то, что в качестве массива из пг приходит строка, однако это не так - я проверил, там jsonb
массивы в словарях вроде в 21.7 завезли
Как я понимаю array в кх != jsonb в ПГ Проверьте string в КХ.
обновился, с ходу не взлетело (та же ошибка), буду смотреть дальше
не совсем понял про что вы. в пг возвращать массив как строку и надеяться, что кх преобразует эту строку?
clinical_relevance_classes String
хм, работает, да, спасибо немного костылей добавит, конечно, но в целом вроде ок
Обсуждают сегодня