Гена
Есть какие-то идеи?
yopp
yopp
и я ещё раз порекомендую обновить монгосы до 4.0.12
Евгений
Евгений
а
yopp
потом это потребует апгрейда кластера
yopp
а внутри релиза можно свободно любые версии использовать
yopp
yopp
ещё вариант хранить количество детей в каждой ноде
Aleksandr
Так ведь просто общее кол-во посчиталось, а я хочу кол-во потомков для каждой записи
Aleksandr
при схеме `{ _id, path }` получить запросом что-то вроде [ { _id, path, childs }]
yopp
ну тут два варианта: covred query на каждого ребёнка или aggregation framework и $group
yopp
либо кешировать число коментариев
yopp
если вы хотите именно всех потомков
yopp
прямых потомков можно за один раз
Aleksandr
вообще кол-во потомков хочу, самих их не надо.
yopp
в смысле детей
Aleksandr
да, нужно только прямых. Предусматривается только 1 уровень ответов
yopp
тогда просто eq path
yopp
задача сводится к тому, чтоб посчитать количество документов с одним path
yopp
у всех детей будет одинаковый path
yopp
если у вас один уровень вложенности, то и parent_id прокатит. у всех детей одной ноды будет один и тот-же parent_id
Red
Дайте совет. Мне нужен поиск текста по нескольким полям (около 10), попробовал оператор $text, все отлично, но мне нужен так-же поиск по части слова, а значит такой вариант не подходит. Кто может подсказать как лучше поступить в данном случаи?
yopp
что значит по части слова?
Red
что значит по части слова?
ну что-бы если в одном из полей есть "слово", то поиск по "сло" тоже бы вернул эту запись
Aleksandr
db.find({ path: X }).limit(5). Как дальше для каждого запросить кол-во тут же, а не делая .forEach или map
Aleksandr
и в случае с вложенностью только в 1 уровень есть ли разница между parent patter и иmaatherialized pattern?
yopp
yopp
Гена
@dd_bb подскажи пожалуйста, а можно ли приложения зафорсить юзать только определенные монгосы и только на случай падения ДЦ с ними обращаться в резервный ЦОД с другими монгосами?
yopp
yopp
вы можете это на уровне приложения разрулить
yopp
сделайте несколько connection strings и ручной фейловер между ними
Гена
у нас приложение в докерах бегут и деплоятся через компоуз
yopp
а не важно
yopp
вы же как-то передаёте в приложение адреса монгосов?
yopp
на всякий случай я уточню: вы же не используете никакой балансировки поверх?
yopp
у вас приложение напрямую ходит в монгос?
Гена
- MONGODB_HOSTPORT
Гена
Гена
yopp
в этом случае просто сделайте несколько переменных окружений, например пока две
yopp
но я бы сфокусировался на поиске причины, а не на попытке сделать фэйловер поверх фэйловера
Гена
это в идеале)))
yopp
так если у вас сетевые ошибки, то толку от фейловера нет
yopp
т.е. у вас есть какой-то нестабильный линк, которы даже без отказа не обслуживает клиентов :)
Гена
ну это чистой воды нетворк, так ведь?
yopp
это наиболее вероятное объяснение. дальше идёт не соотвествующий набор протоколов, какие-то проблемы с конфигурацией
Гена
конфигурацией монги?
yopp
да, в части TLS
yopp
но я не помню чтоб там много ручек было
Гена
ну там конфигурация индентична рабочей
yopp
в ситуация когда есть идентичиные конфигурации, и внутри одного дц всё работает, а между дц не работает, сетевой стек наиболее вероятный кандидат на причину
yopp
можно попробовать проверить работет ли приложение если его задеплоить во втором дц
yopp
кстати, через шелл что?
yopp
эта ошибка валится на всех соединениях, или случайным образом?
Гена
Гена
yopp
из обоих дц?
Гена
да
Гена
а вот если приложение пустить только на резерв то ошибки только в приложении
Гена
до этого Монга работала 2дц, на первом было 3 монгоса
Сейчас конфигурация 3 ДЦ
Гена
на 3ем ДЦ 3 арбитра и конфиг секондари
Гена
сейчас тестируем монгосы 1ый + 3ий ДЦ
Гена
до этого было 1+ 2
Гена
Gor
Gor
что касается поиска по ччасти слова, то даже "слово" в индексе будет вроде как "слов" и соответсвенно в результат будет "слов(а|о|ом|etc)"
Gor
детальнее смотреть по ключчевому слову - stemm
yopp
а что с твоими патчами?
yopp
ты как на mworld съездил то?
Gor
неа, оказалось реально не было времени с текущими дедланами по некоторым заказам
Gor
а с момими патчами - там только на скорость поиска
Gor
если кому интересно - детали https://mongodb.codes ну что б не повторятся.
yopp
а ты так и не собрался это в апстрим влить?
Gor
для ограниченных во вемени и с мобил, картика. fts - это результаты патчча