
yopp
11.04.2017
19:00:52
вот последнее — очень опасная логическая ошибка

Sergey
11.04.2017
19:01:16
я не говорил про отсуттсвие авторизации
она есть, естественно

yopp
11.04.2017
19:01:31
если ssl нет, то от неё толку мало :)

Google

Sergey
11.04.2017
19:01:46
ну вообще монговцы заявляют, что она секурна

yopp
11.04.2017
19:03:57
SCRAM-SHA-1 да, а вот CR нет

Sergey
11.04.2017
19:05:46
Ну про CR речи не идёт

Alex
12.04.2017
12:01:20
Подскажите, как правильно фильтровать данные. Есть вот такая коллекция:
{a: 1, b: 'x'}
{a: 1, b: 'y'}
{a: 3, b: 'z'}
Хочу фильтровать ее, используя такой массив:
[{a: 1, b:'y'}, {a: 3, b:'z'}]
Т.е. в результате должно остаться только:
{a: 1, b: 'x'}
никак не пойму, как мне это правильно сделать

yopp
12.04.2017
12:04:02
Если я тебя правильно понял, ты хочешь исключить из результатов несколько документов по совпадению двух ключей a и b?

Alex
12.04.2017
12:06:16
совпадение двух ключей из объекта, который в массиве, т.е. таких пар ключей может быть больше 1
я пробовал строить массивы из фильтра, массив значений a и b, а потом использовать $nin, но получилось как-то не так

yopp
12.04.2017
12:16:31
Иди перечитывай про запросы
$nin тебе не нужен
Тебе нужно внимательно читать
Из твоей не очень внятной постановки задачи можно сделать только один вывод — ты решаешь свою задачу совершенно неправильно
Начать нужно с простого: логических операций $or и $and

Google

yopp
12.04.2017
12:18:07
И разобраться наконец с тем, как вообще работает язык запросов в монге.
Потому что $nin не для этого совершенно, у него семантика иная

Alex
12.04.2017
12:18:25
понятно

yopp
12.04.2017
12:19:48
Попробуй пробежать глазами по query lang и переосмыслить свою задачу
начинать рекомендую вот от сюда: https://docs.mongodb.com/manual/tutorial/query-documents/
и вот отсюда: https://docs.mongodb.com/manual/reference/operator/query/
ну и за одно убедится что концепция документов до конца понятна. это тут https://docs.mongodb.com/manual/core/document/
Спойлер: тебе надо (a == a1 && b == b1) || (a == a2 && b == b2). массивы не покатят

Sergey
12.04.2017
12:39:35
Люди, нужен спец по монге на проект по апгрейду с версии 2.2.7 на 3.х, на хаускипинг и на разовые мелкие задачи. Система в Питере. Два шарда. Всего данных условно два раза по 100гб.
Кто готов поговорить? Или может быть посоветует кого?

yopp
12.04.2017
12:48:59
Я готов поговорить

Алексей
17.04.2017
09:12:57

yopp
17.04.2017
09:28:03
чот нету ;)
неделька выдалась сильно сложнее чем бы я хотел. на этой должен добраться

Eugeniy
17.04.2017
21:37:05
Привет, подскажите по монге, допустим есть простая схема:
{
property: {
type: [String]
}
}
Есть поле - массив, дак вот, можно ли как-то при валидации этого поля кинуть ошибку для какого-то конкретно значения?
Просто если делать к примеру так:
Schema.path('property').validate(function () { ... }, 'Property error');
То в ошибке у нас будет весь массив

Sergey
18.04.2017
06:47:07
{
"58f5b2530a975a13fb0c21ff" : {
"persName" : "Огонек"
},
"58f5b2530a975a13fb0c2200" : {
"persName" : "Дриада"
},
.....
}
как мне перебрать эти поля (58f5b2530a975a13fb0c21ff ..) в forEach ?

yopp
18.04.2017
08:14:48
3.4.4 на подходе: https://docs.mongodb.com/manual/release-notes/3.4-changelog/#id1
чот нету ;)
сегодня будет докеровский контейнер, 1 экспортер на одну ноду и замена конфига на параметры и envvar


Алексей
18.04.2017
08:19:13
йуху!

yopp
18.04.2017
08:19:25
если мне опенстек ещё рогов не накрутит

Google

yopp
18.04.2017
08:21:10
не могу нормально собрать тестовый стол, блин :(

Serge
18.04.2017
10:34:01
@dd_bb дать админа @freeseacher ?

yopp
18.04.2017
10:40:48
¯\_(ツ)_/¯
как хочешь!

Serge
18.04.2017
10:41:23
ну ты тут один последнее время. дам тогда. раз существующий порядок непротив, а человек просит:)
@freeseacher done

Алексей
18.04.2017
10:42:13
tnx

yopp
18.04.2017
10:43:39

Алексей
18.04.2017
10:44:09
http://lesswrong.ru/w/%D0%9F%D0%B0%D1%86%D0%B8%D1%84%D0%B8%D0%B7%D0%BC_%D0%B3%D1%83%D0%B1%D0%B8%D1%82_%D1%83%D1%85%D0%BE%D0%B6%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%81%D0%B0%D0%B4%D1%8B
так что что бы не понижать уровень дискуссии

yopp
18.04.2017
10:46:31
так у нас тут нормальные дискуссии

Eugeniy
18.04.2017
13:25:33
Просто не совсем понимаю пока щас, как обрабатывать такие ошибки, т.е. на клиент в итоге приходит ошибка а в нем все значения и в форме соот-но тоже подсвечиваются все поля как не валидные

yopp
18.04.2017
13:27:46
Если по чесноку, я считаю что нельзя эти валидаторы использовать вообще.
Потому что у тебя бизнес-логика в субд утекает

Eugeniy
18.04.2017
13:45:45
Возможно) я только постигаю бэкэнд, в будущем постараюсь такого не делать

Denis
19.04.2017
02:33:26

Sergey
19.04.2017
04:06:50
А для каких таких кейсов вы используете монго?
Я использую для игрового сервера, пошаговой сессионной мобильной игры.
В целом удобно что json.

Denis
19.04.2017
05:25:17
MEAN стек

yopp
19.04.2017
08:57:53

Google

Alexey
19.04.2017
10:54:01
всем привет
Подскажите, если я при баллансировке получаю вот такое:
Migration Results for the last 24 hours:
394 : Success
838 : Failed with error 'aborted'
что бы это могло значить? Почему failed? Куда покопать?

Denis
19.04.2017
18:24:31

yopp
19.04.2017
18:26:04
вместо того чтоб за аббревиатурами прятаться, ты мне расскажи когда хранение логики в СУБД оправдано.
и почему в этом случае положительные эффекты перевесят все минусы такого подхода

Denis
19.04.2017
18:37:25
>раньше было нормальной практикой
>когда плюсы перевесят минусы
Я изначально не говорил что это лучше чем то что сейчас, а плюсы перевесят минусы возможно когда нужно будет мигрировать с технологии на технологию, а дб везти за собой. Только это приходит в голову
И то ¯\_(ツ)_/¯
Смотря какой проект

yopp
21.04.2017
15:47:44
официальный докерфайл для монги это феерия сладострастия просто

GNU/Docker
21.04.2017
15:51:40
Почему?

yopp
21.04.2017
15:55:48
https://github.com/docker-library/mongo/blob/master/3.4/docker-entrypoint.sh

Алексей
21.04.2017
15:56:31
врятли в 200 строчек можно сделать что то хорошее

yopp
21.04.2017
15:58:26
я пропустил момент когда они туда бустрапинг юзеров добвали
потому что это подстава прямо пиздец. в месте с keyFile включается аутентификация. а я не мог понять почему у меня кластер никак между собой авторизироваться начать не может
плюс подстава: rs.initialize почему-то без аутентификации работает
убил бы

Denis
22.04.2017
05:04:04
а как я понимаю defaults в схеме можно только синхронно выставить? Просто мне нужно выставлять дефолтное значение полю при создании субдокумента и я вот думаю, сделать ли defaults синхронной функцией, перед ней вызывать асинхронную, кешировать значение, и следующим действием создавать документ(выглядит как немного хуевый дизайн потому что код расбросан будет) или делать это всё в 2 квери не юзая defaults вообще, будет читабельнее, но это 2 запроса к бд, а не 1
что на самом деле в моём случае в принципе приемлемо, нет нагрузки и не предвидится