Alexey
не важно
Гена
Мне кажется нашли ошибку)
Гена
mongos --keyFile /opt/keyfile.txt --configdb config-replica/[conf1],[conf2],[conf3] --bind_ip localhost,[ip] --port 27017 --fork --logpath /val/log/mongo-router.log
Alexey
Alexey
Ну я дебил)
Alexey
Беды с башкой
Alexey
Все. Forked
Alexey
Ура
Гена
Но опять же
1. Создать конфиг файл
2. Создать systemd запуск сервисов
3. не запускать из-под root
Alexey
Спасибо большое, дружище))
Гена
Alexey
Гена
угу)
Anonymous
ребят подскажите, как мне сделать категории на монго?
yopp
Sergey
Igor
всем привет, помогити удалить элемент из массива. Что делаю не так
db.collection('q').findOneAndUpdate(
{
"uid": "2"
},
{
$pull: {
"follower": {
$elemMatch: {
"name":"test1"
}
}
}
})
yopp
Igor
yopp
yopp
$elemMatch нужен если у вас вложенный в массив документ с массивом
Muhammad
результат через раз возвращает, почему может быть так? Типа делаю запрос а там пусто и код ответа 200
Muhammad
мне нужно рандом объект брать у которого поле posted = true, но почему-то переодически aggregate возвращает пустой массив
Muhammad
хотя на самом деле объектов с posted = true полно
Muhammad
как это можно поправить?
Muhammad
Kostiantyn
Ребят доброго времени суток, помогите только осваиваю Mongo
есть объект а в нем массив:
{
stars: [ "Mel Brooks", "Clevon Little", "Harvey Korman", "Gene Wilder" ]
}
как в таком массиве делать поиск по Brooks например? чтобы не писать Mel Brooks?
db.Films.find(stars: "Brooks") не находит
благодарю за любую помощь
Aleksandr
stars:{ $regex: /brooks/i }
Kostiantyn
пробую, спасибо
Kostiantyn
Alexander, а если без регулярки? Я пробовал через оператор $text но я так понял он только для объектов? массивы не ищет?
Aleksandr
text работает только если есть Text Index
Aleksandr
без этого поиск подстроки только регексом
Kostiantyn
все настроил, работает БОЛЬШОЕ спасибо)
Anonymous
мужики
вечер добрый
подскажите
$ db.test.find().limit(10).sort({ _id: -1 })
и
$ db.test.aggregate([{ $match: {} }, { $limit: 10 }, { $sort: { _id: -1 } }])
Почему разные результаты выдает?
Anonymous
$ db.test.find().limit(10).sort({ _id: -1 }) - тут он мне выдал как будто я сделал первоначально sort и потом limit
т.е. я получил 10 последних записей добавленных юзером
Anonymous
$ db.test.aggregate([{ $match: {} }, { $limit: 10 }, { $sort: { _id: -1 } }])
а вот здесь я получил уже первые результаты добавленные в базу, а не последние как в другом запросе
Anonymous
по логике они ведь одинаковые совершенно запросы
в чем байда то? почему так происходит?
я понимаю что пайплайн sort -> limit вернее чем limit -> sort, но в find работает limit -> sort и работает хорошо
Nick
Nick
Не одинаковая
Nick
Разные запросы, файнд и агрегация
Anonymous
Nick
Плюс не определен порядок до лимита
Nick
Зачем?
Nick
Вы должны сначала вставить сортировку а потом лимит в агрегации, а не наоборот
Anonymous
Зачем?
скажем мне хочется в выводе переименовать параметры
переименовать не кодом
как мне быть?
Nick
Да
Anonymous
Да
а здесь в другом трабл
у двух запросов разное время выполнения
$ db.test.find().limit(10).sort({ _id: -1 } - здесь 2 секунды
$ db.test.aggregate([{ $match: {} }, { $sort: { _id: -1 } }, { $limit: 10 }]) - здесь 30 секунд
Nick
Anonymous
В первом тоже сделайте сначала сорт
в моем мире пайплайн выборки последних записей - это сначало sort и потом limit
увидел я в коде что есть такое $ db.test.find().limit(10).sort({ _id: -1 })
думаю такой, ну баг наверное у юзеров есть
переписал на:
$ db.test.aggregate([{ $match: {} }, { $sort: { _id: -1 } }, { $limit: 10 }])
полетели жалобы что все очень медленно
я такой думаю раз у "find" было limit -> sort, сделаю так в агрегации
$ db.test.aggregate([{ $match: {} }, { $limit: 10 }, { $sort: { _id: -1 } }])
и пошли жалобы что результаты не те совсем
Anonymous
вопрос на засыпку
$ db.test.find().limit(10).sort({ _id: -1 })
и
$ db.test.find().sort({ _id: -1 }).limit(10)
выдача одинаковая, скорость разная
почему я должен юзать пайплайн sort -> limit, если в "find" магия и все работает через limit -> sort нормально
Nick
Подозреваю, что у.вас есть индекс под файнд с сортировкой. Но в пайплайне индексы работают только на первый матч, который пустой и в результате идет проход по всем данным. Отсюда и разница времени.
Anonymous
Так в первом случае отсекается сразу 10 для поиска разве нет?
Anonymous
я сам офигеваю если честно что происходит сейчас
Anonymous
И он работает быстрее?
Nick
Nick
По работе сорт и лимит вместе в шеле
Nick
Там сделана оптимизация, которая не делает полную сортировку всех доков. На агрегации видимо такого не прикрутили
Brunello
добрый день,
как излечить ошибку
shutting down with code:49
ось винда
Brunello
Denis
Brunello
Denis
да
Проверь достаточно ли места на диске, работоспособность файловой системы локальной при помощи чекдиска
Denis
Там явно в логах на эту проблему отсылки
Denis
Ради теста я бы указал дата-директорию монги на каком-то 100% работающем диске
Denis
Возможно просто локальные данные монги повреждены
Brunello
в логах еще я вижу что было аварийное перегрузка виртуалки после чего он ссылается на лок файл
Brunello
и по логам vmware виртуалка перегружалась
Denis
Denis
Brunello
Denis
Ну вот там у этой FS есть свои приколы. Но с вендой уже сто лет не работал, поэтому сложно что-то подсказать.
Brunello