Иван
согласен, спс
Nick
согласен, спс
и еще ест ьтакая штука https://www.mongodb.com/docs/manual/tutorial/update-documents-with-aggregation-pipeline/
Ильдар
Кто нибудь использует percona-operator и бэкапит в s3?
не получается сделать restore в новом кластере kubernetes, ловлю ошибку
Error: PerconaServerMongoDBBackup.psmdb.percona.com "backup1-logical" not found
Как понимаю ему нужен ресурс бэкапа в новом кластере, но откуда он там может быть, если он новый))
An
Когда я запускаю скрипт в компасе он тянет данные мне и выполняется? Как-то можно на сервере?
Ivan
An
Скопировать скрипт на сервер и там запустить через cli?
Ivan
Yura
Сергей
Добрый день! Подскажите, пожалуйста, могут ли быть какие-то проблемы, если установить 7 версию монги на Ubuntu 24.04 (noble). Поставилось без ошибок, но я подключал репизиторий для Ubuntu 22 (jammy), так как 7-ки в репозитории 24 версии нет, а есть только 8 версия, но нужна именно 7
Vladimir
CyberOps
Товарищи, доброго времени, подскажите, может кто сталкивался с такой проблемой lastHeartbeatMessage: 'Our replica set configuration is invalid or does not include us', при попытке добавить в rs по доменному имени , может кто знает как решить проблему , буду благодарен
Hunter
Кто-то юзал typegoose, хочу узнать стоит ли переходить с Магнуса?
🅰️nimeCoder
Сергей
Добрый день! Подскажите, пожалуйста, по такой ситуации. Установил кластер mongodb версии 7.0 на 3 сервера. Захожу в mongosh, далее rs.status() показывает, что все хорошо. Далее набираю команду show dbs, и ничего не выводит. При этом приглашение в mongosh выглядит странно rs0 [direct : primary] test>. Смущает слово test. И в ответ на многие команды пишет mongodb not authorized on test to execute command
Нуриддин
Нуриддин
Ошибка говорит о том что вы зашли под пользователем которого нет в бд или нет приведений на какую-либо бд
Сергей
Вы знали просто в mongosh?
Да, зашёл просто. Вообщем вроде с этим разобрался, создал пользователя с ролью root, но все равно смущает, что если не указывать базу, то он подключается и в приглашении опять этот test, при этом show dbs это базу не показывает. Пробую зайти на другом кластере версии 4.4 там ни теста нет, и захожу без указания логина и пароля и все позволяет делать. Как так?
Dmitry
Yura
Yura
By default, just running mongo will enter the shell and connect to the “test” database.
The default database is "test" when it is not specify it. You must specify the default database after the port number and before the options which start after the question mark.
example: mongodb://user:pass@www.server.com:27017/mydb?authMechanism=SCRAM-SHA-1&authSource=mydb
Сергей
Нуриддин
Tim🌵
Привет, есть ли какая-нибудь книга по монге, где подробно описываются timeseries коллекции? Или это только в документации читать?
Kirilll
Ratatata
Книги по Монге? 0_0_0_0_0_0
Vened
🅰️nimeCoder
Andrey
Всем привет, Вопрос. Есть кластер MongoDB 8 (в K8s), шардированный. В качестве точки входа используем mongos.
Периодически ловим ошибки вида cursor not found. Ошибок немного, но они стабильные.
Сталкивался ли кто-то с подобной проблемой и как решали?
Ильдар
Andrey
percona?
https://artifacthub.io/packages/helm/bitnami/mongodb-sharded
Асель
Всем привет!
Периодически ловим ошибки типа:
The full response is {"ok": 0.0, "errmsg": "Encountered non-retryable error during query :: caused by :: Unable to acquire IX lock on '{5950093347111209510: Database, 1338407328683821606, imp}' within 5ms.
По логам в этот момент долгих операций не нахожу, повышенной нагрузки тоже нет, т.е. ни одна идея из нагугленного, что может быть причиной, в ходе исследования не подтверждается. Если кто сталкивался, подскажите пожалуйста, как решали эту проблему?
Николай
yopp
Всем привет!
Периодически ловим ошибки типа:
The full response is {"ok": 0.0, "errmsg": "Encountered non-retryable error during query :: caused by :: Unable to acquire IX lock on '{5950093347111209510: Database, 1338407328683821606, imp}' within 5ms.
По логам в этот момент долгих операций не нахожу, повышенной нагрузки тоже нет, т.е. ни одна идея из нагугленного, что может быть причиной, в ходе исследования не подтверждается. Если кто сталкивался, подскажите пожалуйста, как решали эту проблему?
Подскажите, а на каких операциях это проявляется и есть ли параллельно в это время создание/удаление коллекций/индексов?
yopp
Косвенно создавать-удалять коллекции может $out, так как сначала создается временная коллекция
Yura
Yura
Чисто как workaround на период поиска настоящей причины
Асель
Асель
Асель
yopp
Да, у $out там целый ворох сайд-эффектов связанный с обновлением каталога. Как выше порекомендовали увеличение таймаута должно помочь
Асель
🅰️nimeCoder
Есть две бд, одна ~7 версии, вторая ~8
Сделал mongodump на одной (7) и mongorestore этого дампа на второй (8). Вес на примере одной из коллекций стал из 9-10 ГБ около 20-25 ГБ
Что-то кардинально изменилось в мете / формате хранения ?
🅰️nimeCoder
🅰️nimeCoder
🅰️nimeCoder
Причём что интересно размер индексов упал 🧐
of Astora 𒉭
63 ляма, что там такое есть?
🅰️nimeCoder
Так не много же
🅰️nimeCoder
Сообщения где то за пару суток
Yura
А mongod.conf у них идентичные? Мб методы сжатия разные прописаны?
Нуриддин
Нуриддин
Причём возможно индексы и прочие внутренние настройки будут меняться в процессе залива
Нуриддин
Есть вариант организовать репликацию, предварительно изменив copability в mongod 8
Нуриддин
Просто обновление версий mongodb писали в документации именно таким образом
Hunter
Начал использовать атлас серч, но там очень мало дают индексов, возможно есть какие-то обходные пути или решения?
🅰️nimeCoder
Ну я не обновлял в целом, а переносил. Прост на другом сервере более новая чем на источнике
Nick
🅰️nimeCoder
Гляну, спасибо
Vladimir
Artem
Ребят, всем привет!
Если дамп БД сделан на 6 версии, а потом рестор на 8 версии Монги.
Все коллекции на месте.
Что ещё можно проверить?
🅰️nimeCoder
Hunter
Vladimir
А как он поможет?🤔
В нем можно прописывать различные индексы и я пока не сталкивался с ограничением по количеству
Hunter
Нуриддин
Добрый день коллеги!!
У меня такой кейс, можете помочь с ним пожалуйста.
Есть коллекция на 100лямов доков, задача удалить дубликаты по 3м ключам, но пришёл к такому методу
Нуриддин
let creditDeleted = 0;
const creditCursor = db.transaction.aggregate([
{
$match: {
type: "CREDIT",
creditRrn: { $ne: null }
}
},
{
$group: {
_id: {
userGuid: "$userGuid",
creditGuid: "$creditGuid",
creditRrn: "$creditRrn"
},
ids: { $push: "$_id" },
count: { $sum: 1 }
}
},
{
$match: { count: { $gt: 1 } }
}
]);
creditCursor.forEach(group => {
const idsToDelete = group.ids.slice(1);
if (idsToDelete.length > 0) {
db.transaction.deleteMany({ _id: { $in: idsToDelete } });
creditDeleted += idsToDelete.length;
}
});
print(`Deleted ${creditDeleted} CREDIT duplicates`);
Нуриддин
Он отрабатывает до жути долго, как его можно ускорить?