
nexxtmedia
16.10.2018
15:46:33
парни, можно про МОнгуз вопрос?

Bo0m4ik
16.10.2018
16:10:55

Oleg
16.10.2018
16:40:01

nexxtmedia
16.10.2018
17:16:05

Google

Zaur
16.10.2018
17:57:32
А как одним запросом обновить несколько документов и вернуть эти обновленные документы?

KhuzhA.GQ
16.10.2018
18:19:34

Aga
16.10.2018
18:20:13
Ребята, какого хрена find depreciated?
Как можно find depriciate сделать

Oleg
16.10.2018
18:21:45

Aga
16.10.2018
18:21:54

Zaur
16.10.2018
18:23:55
Обновленных

Vova
16.10.2018
18:28:32

Aga
16.10.2018
18:28:53
Странно, оч

KhuzhA.GQ
16.10.2018
18:30:27

Oleg
16.10.2018
18:33:21

Andrey
16.10.2018
18:37:18
Есть тут кто tokumx юзает в репликах?

Google

Zaur
16.10.2018
18:49:10

Semen
16.10.2018
19:05:59
Как найти объект по дате в бд, если дата хранится в ISODate("")?
Если в консоли сделать такой запрос:
db.flights.find({departure: {$gte: ISODate('2018-10-19T00:00:00.000Z')}})
то всё ок.
Если же из ноды:
flight.find(
{
departure:
{
'$gte': new Date('2018-10-19T00:00:00.000Z')
}
}
то ничего не возращается.

Alex
16.10.2018
19:37:26

Vova
16.10.2018
19:41:30

Semen
16.10.2018
19:47:25
new Date().toISOString() тоже не работает
А я просто не к той дб коннектился
facepalm

Alexey
16.10.2018
19:52:52
Господа, а есть какой-то удобный способ загружать на старте какие-то данные (словари), нужные для работы приложения, да еще и с возможностью обновлять их?


m
17.10.2018
00:05:39
Подскажите пожалуйста, использую монгус, и, кажется, что-то не так делаю
ItemSchema.pre('save', function (next){
this.slug = slugify(this.name);
next()
})
Мне казалось это так работает, но не работает, поле не добавляется. Посоветуйте пожалуйста, как это правильно сделать?
slugify - это вот этот модуль. Может быть он отрабатывает асинхронно и это нужно учесть?
вот потестировал, и оказалось, что слаг всё-таки создается, но только раз, в момент создания. потом не получается его поменять. может, нужна подписка на событие update отдельно?
Обновление происходит по методу .findByIdAndUpdate(req.params.id, {$set:req.body}). Обнолвние приходит без поля slug.
UPD: что-то судя по консоль логам, эти мидлвари вообще не вызываются
UPD2: и вот почему : https://mongoosejs.com/docs/middleware.html#notes
UPD3: однако использование
ItemSchema.pre('update', function() {
console.log("Item PRE UPDATE");
this.update({},{ $set: { slug: (slugify(this.name)).toLowerCase() } });
});
никак не решило проблему, оно тоже не вызывавется.
пока решил эту проблему кодом в роуте, но хотелось бы нормально это оформить. на всякий случай - версия монгус 5,2,9


Dmitry
17.10.2018
05:50:12
https://www.opennet.ru/opennews/art.shtml?num=49449

Maxim
17.10.2018
07:29:46
Привет! обьясните пожалуйста кто-то разницу - вот у нас есть реплика сет в клауде (да не важно где). в чём отличие если я конекчусь только к праймари ноде и если я конекчусь к реплика-сету?

Yaroslav
17.10.2018
07:38:26

Maxim
17.10.2018
07:39:20

Yaroslav
17.10.2018
07:40:32
а когда такой кейс реальный?
ну ты в качестве host указал адрес только primary ноды , тогда такое будет происходить , у тебя драйвер не будет знать про реплика сет
Поэтому надо указывать все адреса нод кластера в host: mongo-1:27017,mongo-n:27017 и тд

Maxim
17.10.2018
07:46:55
реплика-ноды участвуют как-то в обработке запросов?

Google

Maxim
17.10.2018
07:47:52
сорри за нубский вопрос

Yaroslav
17.10.2018
07:52:41
а при штатной работе есть профит?
по умолчанию нет , но могут только в этом случае есть шанс что к тебе прилетят "не свежие" данные .
лучше почитай офф доки там все довольно подробно расписано в том числе риски и подходы как избежать их
https://docs.mongodb.com/manual/replication/

Maxim
17.10.2018
07:53:31

Yaroslav
17.10.2018
07:53:48

Maxim
17.10.2018
07:57:11

Serge
17.10.2018
12:03:59
А вот и наша очередная встреча уже через неделю. И, традиционно, каждый из вас может предложить свою тему для обсуждения.
Если у вас есть желание поделиться чем-то интересным, даже на 10 минут, не стесняйтесь!
https://spbpython.guru/news/2018/10/17/meetup-20181024-epam
#spbpython #meetup

Little
17.10.2018
16:02:56
Ребят, подскажите пожалуйста, есть такая вот модель:
http://dpaste.com/2ADM5QR
Когда я пишу в базу, то всё окей, создается вот такой объект:
http://dpaste.com/2AR5J4D
Но когда я делаю populate это блока вот таким вот запросом:
let query = await Blocks.find().populate('operations.link').populate('transactions').limit(1).lean();
транзакции вытаскивает правильно, а операции почмеу-то нет. Выводит вот такое:
"operations": [
{
"_id": "5bc73887719d692203ee6bcc",
"link": "5bc73886719d692203ee6bc9",
"onModel": "votes"
}
]
Хотя ожидается, что выведет операцию из коллекции votes. Подскажите, в чем косяк запроса


m
18.10.2018
01:29:16
привет. Подскажите, у меня в большой модели вот такое поле получилось, по смыслу верное, но с точки зрения организации данных, правильно ли:
people: [{name: String, socialNetworks: [String], previousCompanies: [String]}]
и имеет ли смысл если поле предполагается быть массивом обьектов с двумя полями, использовать вместо этого массив массивов? [{1: String,2:String}] => [[String]]

M
18.10.2018
07:38:02
Ребят а в mongo 4+ версии если шардинг транзакции разрешены ?

Oleg
18.10.2018
07:55:58
db.getCollection('payments').aggregate([
{
"$match": {status: 'paid'}
},
{
"$group": {
"_id": null,
"total": {"$sum": ["$amount", "$credentials.WMI_COMMISSION_AMOUNT"]}
}
}
])
Как вывести общую сумму оплат с вычетом комиссии, которая находится в credentials.WMI_COMMISSION_AMOUNT?
При таком запросе ошибка:
Error:
Assert: command failed: {
"ok" : 0,
"errmsg" : "aggregating group operators are unary ($sum)",
"code" : 15953
} : aggregate failed

Zaur
18.10.2018
07:57:49

Constantin
18.10.2018
08:26:28
Привет! А что за фигня с изменением лицензии у комьюнити монги?

Sergey
18.10.2018
08:35:54
Всем привет, ребят подскажите пожалуйста, допустим у меня есть коллекция snapshot, я хочу сделать subcollection - rate, exchange и т.д, чтоб они были доступны мне как snapshot.exchange, snapshot.rate и соответственно я мог обновлять и записывать что то новое
чтоб в snapshot не создавался _id а были доступны только эти параметры
можно как то сделать, чтоб subcollection была у самой parent коллекции а не у вновь созданного документа?

M
18.10.2018
08:50:21
ребят а ктото знает в MongoDB Compass вожно базу востановить через backup локальный

Alexander
18.10.2018
08:50:46

Nick
18.10.2018
08:51:04

Vadym
18.10.2018
10:15:16
Всем доброго времени суток, коллеги можете подсказать как глянуть размер всех баз монго?

Google

Max
18.10.2018
10:15:39
show dbs

Vadym
18.10.2018
10:16:32
суммарно)

Max
18.10.2018
10:17:22
так оно и покажет
базу и размер

Vadym
18.10.2018
10:19:03
у меня много баз, есть возможность как то их суммировать и отобразить значение
Суммарное значение всех баз вместе взятых

yopp
18.10.2018
11:42:29

Ильнур
18.10.2018
11:44:56

yopp
18.10.2018
11:45:04
начальная идея монги была сделать базу как сервис, но они не нашли подходящей и запилили свою. теперь они её до конца допилили и атлас со стичем это будущее.
self hosted скорее всего никто трогать не будет, но делать хостинг монги больше не выйдет. бедный mlab им наверное руки сильно вывернули с покупкой

Constantin
18.10.2018
11:45:55

yopp
18.10.2018
11:46:15
это значит что инфраструктуру обслуживающую клиентов придётся опенсорсить
или покупать коммерческую лицензию

Constantin
18.10.2018
11:46:56


yopp
18.10.2018
11:47:33
13. Offering the Program as a Service.
If you make the functionality of the Program or a modified version available to third parties as a service, you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License. Making the functionality of the Program or modified version available to third parties as a service includes, without limitation, enabling third parties to interact with the functionality of the Program or modified version remotely through a computer network, offering a service the value of which entirely or primarily derives from the value of the Program or modified version, or offering a service that accomplishes for users the primary purpose of the Software or modified version.
“Service Source Code” means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available.
Program == MongoDB
стрёмная лицуха
потому что functionality of the Program это очень абстрактное описание
но если коротко: это касается только если вы пытаетесь монгу как сервис предоставлять


Vadym
18.10.2018
12:02:47
коллеги есть у кого нибуть скрипт для дампа и архиваци каждой бд в отделный архив?

Constantin
18.10.2018
12:07:36

darkwoolf
18.10.2018
16:13:27
Привет всем. Такой трабл не могу запустить монго на ubuntu 18

Google


darkwoolf
18.10.2018
16:13:47
woolf@woolf:~$ mongo
MongoDB shell version v4.0.3
connecting to: mongodb://127.0.0.1:27017
2018-10-18T19:13:31.691+0300 E QUERY [js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused :
connect@src/mongo/shell/mongo.js:257:13
@(connect):1:6
exception: connect failed
woolf@woolf:~$ mongod
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] MongoDB starting : pid=13439 port=27017 dbpath=/data/db 64-bit host=woolf
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] db version v3.6.3
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] git version: 9586e557d54ef70f9ca4b43c26892cd55257e1a5
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.0h 27 Mar 2018
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] allocator: tcmalloc
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] modules: none
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] build environment:
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] distarch: x86_64
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] target_arch: x86_64
2018-10-18T19:14:03.662+0300 I CONTROL [initandlisten] options: {}
2018-10-18T19:14:03.663+0300 I STORAGE [initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/db not found., terminating
2018-10-18T19:14:03.663+0300 I CONTROL [initandlisten] now exiting
2018-10-18T19:14:03.663+0300 I CONTROL [initandlisten] shutting down with code:100


yopp
18.10.2018
16:15:49

darkwoolf
18.10.2018
16:18:13
Потому что я создал и вроде как не достаточно

yopp
18.10.2018
16:18:40
права нужны, чтоб пользователь монги мог туда писать и читать

darkwoolf
18.10.2018
16:19:16
Я вписал эту команду

yopp
18.10.2018
16:20:51
chown mongodb:mongodb

darkwoolf
18.10.2018
16:21:21
В этой дериктории вписать?