не грузится? Нужные порты все открыты, ping до машинки доходит. По ходу сломалось после 23,3 версии (просто словарь используется редко)
CREATE DICTIONARY test.users
(
`userId` UInt64,
`type` UInt8,
`plan` String,
`lastLogin` DateTime,
`registered` DateTime
)
PRIMARY KEY userId
SOURCE(MONGODB(HOST 'db1.app.internal' PORT 27017 USER '' PASSWORD '' DB 'test' COLLECTION 'accounts'))
LIFETIME(MIN 10 MAX 1000)
LAYOUT(FLAT(INITIAL_ARRAY_SIZE 50000 MAX_ARRAY_SIZE 5000000))
в <remote_url_allow_hosts> есть host db1.app.internal
Ошибка по таймауту:
Poco::Exception. Code: 1000, e.code() = 0, Timeout: connect timed out: 172.16.1.84:27017 (version 23.8.2.7 (official build))
db1.app.internal - резолвится в 172.16.1.84
То что порты открыты и привязаны к клику, не всегда означает что он их слушает. Столкнулись с подобным при обновлении. Попробуйте постучаться чем то telnet, nc
telnet до mongodb c инстансы, где стоит CH проходит нормально.
Авторизация не сломалась?
нет, не сломалась. Все тоже самое на версии 22.10.1.1877 работает
Еще вариант - повысить версию. Некоторые проблемы с внешними движками были исправлены с версии 23.4 и выше
Так тут наоборот в 22,10 работает в 23,8 нет. Такое ощущение, что где-то стоит очень маленький timeout, ибо запрос select dictGet(..).. отваливается мгновенно.
Извиняюсь прочитал что целевая сейчас 23.3
Создаю таблицу CREATE TABLE mongo_table ( key UInt64, data String ) ENGINE = MongoDB('mongo2:27017', 'test', 'simple_table', 'testuser', 'clickhouse', 'connectTimeoutMS=100000'); Если передаю connectTimeoutMS, то при запросе получаю ошибку Poco::Exception. Code: 1000, e.code() = 0, Not found: maxWireVersion (version 23.8.2.7 (official build)) Версия mongodb - 4.0.12
Скорее всего бага, пишите на гитхаб
Обсуждают сегодня