Evgenii
Всем привет Уже недели две туплю и не понимаю в чем дело На сервере VPS крутится mongo и jar файл с spring boot Каждые 10 секунд соединение теряется и потом снова подключается Так не только через jar файл, а через другие способы подключения тоже Спустя где-то часов 6 БД вообще перестает работать и в jar-файл постоянно вылетают ошибки MongoSocketReadException: Prematurely reached end of stream (after a period of inactivity)
Evgenii
По терминалу mongo не падал По логам хз нормальные ли логи или что-то не так {"t":{"$date":"2021-04-28T05:27:34.249-04:00"},"s":"I", "c":"NETWORK", "id":22944, "ctx":"conn73858","msg":"Connection ended","attr":{"remote":"127.0.0.1:56636","connectionId":73858,"connectionCount":1}} {"t":{"$date":"2021-04-28T05:27:41.251-04:00"},"s":"I", "c":"NETWORK", "id":22943, "ctx":"listener","msg":"Connection accepted","attr":{"remote":"127.0.0.1:57124","connectionId":73859,"connectionCount":2}} {"t":{"$date":"2021-04-28T05:27:41.252-04:00"},"s":"I", "c":"NETWORK", "id":51800, "ctx":"conn73859","msg":"client metadata","attr":{"remote":"127.0.0.1:57124","client":"conn73859","doc":{"driver":{"name":"mongo-ja${"t":{"$date":"2021-04-28T05:27:44.253-04:00"},"s":"I", "c":"NETWORK", "id":22944, "ctx":"conn73859","msg":"Connection ended","attr":{"remote":"127.0.0.1:57124","connectionId":73859,"connectionCount":1}} {"t":{"$date":"2021-04-28T05:27:51.255-04:00"},"s":"I", "c":"NETWORK", "id":22943, "ctx":"listener","msg":"Connection accepted","attr":{"remote":"127.0.0.1:57532","connectionId":73860,"connectionCount":2}} {"t":{"$date":"2021-04-28T05:27:51.255-04:00"},"s":"I", "c":"NETWORK", "id":51800, "ctx":"conn73860","msg":"client metadata","attr":{"remote":"127.0.0.1:57532","client":"conn73860","doc":{"driver":{"name":"mongo-ja${"t":{"$date":"2021-04-28T05:27:52.182-04:00"},"s":"I", "c":"NETWORK", "id":22943, "ctx":"listener","msg":"Connection accepted","attr":{"remote":"127.0.0.1:57564","connectionId":73861,"connectionCount":3}} {"t":{"$date":"2021-04-28T05:27:52.183-04:00"},"s":"I", "c":"NETWORK", "id":51800, "ctx":"conn73861","msg":"client metadata","attr":{"remote":"127.0.0.1:57564","client":"conn73861","doc":{"driver":{"name":"mongo-ja${"t":{"$date":"2021-04-28T05:27:52.187-04:00"},"s":"I", "c":"ACCESS", "id":20250, "ctx":"conn73861","msg":"Successful authentication","attr":{"mechanism":"SCRAM-SHA-256","principalName":"serverClient","authenticat${"t":{"$date":"2021-04-28T05:27:54.258-04:00"},"s":"I", "c":"NETWORK", "id":22944, "ctx":"conn73860","msg":"Connection ended","attr":{"remote":"127.0.0.1:57532","connectionId":73860,"connectionCount":2}} {"t":{"$date":"2021-04-28T05:27:55.182-04:00"},"s":"I", "c":"NETWORK", "id":22944, "ctx":"conn73861","msg":"Connection ended","attr":{"remote":"127.0.0.1:57564","connectionId":73861,"connectionCount":1}} {"t":{"$date":"2021-04-28T05:27:56.076-04:00"},"s":"I", "c":"STORAGE", "id":22430, "ctx":"WTCheckpointThread","msg":"WiredTiger message","attr":{"message":"[1619602076:76968][7325:0x7f3bf4c1e700], WT_SESSION.checkp${"t":{"$date":"2021-04-28T05:28:01.259-04:00"},"s":"I", "c":"NETWORK", "id":22943, "ctx":"listener","msg":"Connection accepted","attr":{"remote":"127.0.0.1:57886","connectionId":73862,"connectionCount":2}} {"t":{"$date":"2021-04-28T05:28:01.259-04:00"},"s":"I", "c":"NETWORK", "id":51800, "ctx":"conn73862","msg":"client metadata","attr":{"remote":"127.0.0.1:57886","client":"conn73862","doc":{"driver":{"name":"mongo-ja${"t":{"$date":"2021-04-28T05:28:04.262-04:00"},"s":"I", "c":"NETWORK", "id":22944, "ctx":"conn73862","msg":"Connection ended","attr":{"remote":"127.0.0.1:57886","connectionId":73862,"connectionCount":1}} {"t":{"$date":"2021-04-28T05:28:11.264-04:00"},"s":"I", "c":"NETWORK", "id":22943, "ctx":"listener","msg":"Connection accepted","attr":{"remote":"127.0.0.1:58714","connectionId":73863,"connectionCount":2}} {"t":{"$date":"2021-04-28T05:28:11.264-04:00"},"s":"I", "c":"NETWORK", "id":51800, "ctx":"conn73863","msg":"client metadata","attr":{"remote":"127.0.0.1:58714","client":"conn73863","doc":{"driver":{"name":"mongo-ja${"t":{"$date":"2021-04-28T05:28:14.266-04:00"},"s":"I", "c":"NETWORK", "id":22944, "ctx":"conn73863","msg":"Connection ended","attr":{"remote":"127.0.0.1:58714","connectionId":73863,"connectionCount":1}}
karrtopelka
Привет, подскажите пожалуйста, в агрегации, я хочу чтобы вывелись все документы, а также к ним добавилась инфа по пользователю, без группировки сделал $match, lookup, unwind и project в доках надо группировать, можно ли как то обойтись без группировки?
karrtopelka
если группировать по айди пользователя, то оно выведет только один раз, а мне надо все
Vladislav
Вроде такой синтаксис
karrtopelka
group _id: $user users: { $push: "$$ROOT" }
A pipeline stage specification object must contain exactly one field.
karrtopelka
{ $match: { eventType, 'properties.bId': boothId, 'properties.targetText': 'VIEW', 'properties.bTab': /documents/i, _updatedAt: { $gte: new Date(`${ from }T00:00:00`), $lte: new Date(`${ to }T23:59:59`), }, }, }, { $group: { _id: '$userId', users: { $push: '$$ROOT' }, }, }, { $lookup: { from: 'users', localField: '_id', foreignField: '_id', as: 'userInfo', }, }, { $unwind: { path: '$userInfo', includeArrayIndex: 'string', preserveNullAndEmptyArrays: false, }, }, { $project: { eventType: 1, document: '$properties.targetLink', time: '$_updatedAt', userId: '$_id', name: '$userInfo.name', email: { $arrayElemAt: ['$userInfo.emails.address', 0] }, }, },
karrtopelka
я груп забыл
karrtopelka
а users, в групе, что с этим потом делать?
karrtopelka
а в бд по мэтчу 5 результатов
Vladislav
сейчас оно тоже только один раз выводит
А сколько у тебя вариантов userId?
karrtopelka
А сколько у тебя вариантов userId?
ну пока только один ибо только я зарегистрированый
Vladislav
karrtopelka
Ну вот поэтому и только 1 группа
я хочу чтобы было типо таргетЛинк - пользователь таргетЛинк - пользователь таргетЛинк - пользователь таргетЛинк - пользователь
karrtopelka
и без разницы одинаковый он или нет
karrtopelka
Ставь group._id на таргетЛинк
а users: { $push: '$$ROOT' } убрать?
Vladislav
а users: { $push: '$$ROOT' } убрать?
Тебе быстрее самому попробовать, я хз что у тебя за структура
karrtopelka
Тебе быстрее самому попробовать, я хз что у тебя за структура
оно ничего теперь не выводит 😅 у меня таргетЛинк находится в properties, я написал _id: '$properties.targetLink'
D
Приветсвую, может кто сталкивался с DynamoDB и может подробно объяснить что есть Read and Write Capacity Units (RCU / WCU)
D
интересует, как это работает делаю запрос и получаю список из 100 элементов в ответ
D
RCU они завязаны на item(строку) или на размер ?
Anonymous
Pipy
Dmitry
Привет! А кто какой экспортер использует для прометеуса?
Igor
Привет. Подскажите, есть документ, у документа есть поле с массивом других документов (есть _id). Можно ли одним запросом: 1. обновить все, у кого совпадет айдишник с теми данными, которые я отправляю в апдейт 2. создать новые документы для тех, у кого айдишника нет
Igor
или два надо? одним пихать новые, другим апдейтить старые
Igor
или вообще нельзя обновить пачкой?
yopp
Несколько документов обновить можно, при условии что у вас на все документы одно обновление
yopp
Сейчас может быть можно как-то через aggregation pipeline в апдейте сколхозить что-то чтоб разные данные на разные документы
Igor
не, колхозить не хочу, спасибо, я понял
yopp
Про создать если документы не существуют это upsert: https://docs.mongodb.com/manual/reference/method/db.collection.updateMany/#upsert
Vladimir
Всем доброго! Подскажите пжлст, при дампе можно указать ключ -q и запрос, но дело в том что имеем большой дамп и нужно ресторить только одну запись. filter я так понял убрали с 3 версии, ключ -q в ресторе в документации не указан
Vladimir
делать полный рестор куда нибудь и оттуда уже mongodump -q с нужным ключем?
Дмитрий
Доброго времени суток, уже спрашивал, но так и не получил ответа. Пишу тесты на jest и supertest для своего nodejs приложения (сервер на express), подключена БД mongoDB через mongoose. Мокаю каждый вызов к бд, но почему то когда мокаю вызов find и делаю запрос к express, этот find вызывается два раза, а не один (как и есть в обработчике). С остальными вызовами (findOne и т д) все в порядке. В чем может быть проблема? Тесты пишу первый раз и только учусь, если что то не так тыкните носом. https://gist.github.com/zl0i/3940f4566c70ab3f77c2e2f17a9b2812
Talgat
Здравствуйте, подскажите пожалуйста, как проверить какой пароль человек вводил для создания базы облачного mongo?
I
Почему в mongo shell агрегированная операция выполняется менее чем за секунду, а если делать через spring MongoOperations она занимет 30 секунд?
Talgat
где именно
в общем тут две ошибки указаны, одна после команды npm start, другая после npm run server Я возможно, пароль устанавливал когда https://cloud.mongodb.com/v2/608ad24041b6044b7459a4f7#clusters что то неправильно ввел
Evgenii
Как можно создать пользователя с ограничением на редактирование определенных коллекций в db ?
Evgenii
Например есть dbА в которой коллекции 1, 2, 3 И хочу чтобы пользователь мог читать все, но редактировать только 1 и 2
Talgat
а мне как сбросить пароль? некий atlasAdmin
Максим
а мне как сбросить пароль? некий atlasAdmin
Зайди в атлас, может там можно сбросить.
Максим
есть такая команда
Мне кажется это не то.
Talgat
Мне кажется это не то.
Запустилось, поменял пароль, или добавил, в общем он еще днем когда делал, не добавился.. там где actions - edit
Talgat
Да, это оно. Сейчас сам смотрел как это сделать.
ну и здорово, заодно и знания обновили
Ardak Rakhmetov
подскажите как исправить подключение
Ardak Rakhmetov
user и pass верные, даже удалял кластер и создавал новый, а ошибка все та же
Ardak Rakhmetov
вот url по которому идет подлючение
MDWIT
подскажите как исправить подключение
попробуй добавить в конце &ssl=true
MDWIT
?authSource=admin&ssl=true или даже так Да, к урлу
Максим
Подскажите пожалуйста такое — есть у документов поле с инкементальным счётчиком, например от 456 до 984. Как проверить есть ли дырки и как их найти? Сходу придумал только пройтись в приложении по порядку и зафиксировать. Может есть какой-то запрос?
Ardak Rakhmetov
в общем я сижу в монго через гугл аккаунт, и может в нем дело?
Ardak Rakhmetov
почему то в упор не хочет авторизовываться
Igor
Подскажите пожалуйста такое — есть у документов поле с инкементальным счётчиком, например от 456 до 984. Как проверить есть ли дырки и как их найти? Сходу придумал только пройтись в приложении по порядку и зафиксировать. Может есть какой-то запрос?
distinct(‘incrementField’, {incrementField: {$gte: 456, $lte: 984}}) вернет уникальные значения, их количество должно быть равно разнице 984-456, но эт ток даст тебе понимание, есть ли дырка, потому что если есть, то их будет меньше чем ожидаешь
MDWIT
почему то в упор не хочет авторизовываться
keys.mongoURI правильно отдает строку?
MDWIT
подскажите как исправить подключение
то что тут то понятно, а тут что в итоге?))
Ardak Rakhmetov
то что тут то понятно, а тут что в итоге?))
не совсем понял) в итоге ошибка как скидывал тут
MDWIT
не совсем понял) в итоге ошибка как скидывал тут
ну проверь вдруг у тебя в место строки undefined) яж не могу твой код продебажить)
MDWIT
еще проверь верный ли пароль, и добавил ли ты свой ip в Network Access
Евгений
Ребята, приветствую! делаю todo list использую MERN. Раньше никак с MongoDB не сталикивался, может есть у кого дельная инфа в этом направлении чтобы быстрее вкатиться
Максим
и устаревший
Есть новее?
Ilya
можно ли versionKey по дефолту сделать false у всех схем глобально в mongoose?
Ardak Rakhmetov
Есть новее?
вот сам ищу