[05:22:37] <ronak> I am facing issue in maintaing mongodb . I have a collection with 6 million records and two indexes. "count" : 6506235, avgObjSize" : 6848, "storageSize" : 11,
[05:23:01] <ronak> The above info is in GB. Can some one help me on this
[05:27:59] <Boomtime> @ronak: what's the issue precisely? as in, what do you perceive the issue to be?
[05:28:53] <Boomtime> @ronak: also, please provide the full stats() in a gist or something as there are other important fields, notably dataSize but also the storage-engine details may be important
[07:27:42] <KekSi> good morning -- does anyone have an idea for how long i can disconnect a replica-set slave?
[07:28:39] <KekSi> i'm trying to do something like this: restart a production mongo with --replSet, add a priority 0 secondary, disconnect it when it's up2date
[07:29:04] <joannac> you can disconnect it for as long as you want
[07:29:27] <joannac> or are you asking, "how long can I disconnect it and have it catch up when I connect again"
[07:29:49] <joannac> in which case the answer depends on the size of your oplog and the bandwidth b/t the primary and secondary
[07:29:56] <KekSi> disconnect as in remove, then shut the secondary down, take a filesystem snapshot, back that up, run tests with it, a few weeks later play back the snapshot and re-connect it to the old primary (with a higher-than 0 priority)
[07:30:33] <KekSi> i'd like to save myself a bit of time with this and not have to completely sync it up from scratch
[07:31:14] <KekSi> since the production mongo (standalone as of right now) is about 500-800GB
[07:32:32] <KekSi> i'm not entirely sure about the bandwidth (its a on-premise setup at a customer - could be 1gbit, could be in the low mbits.. you never really know)
[07:32:46] <joannac> what does "play back the snapshot" mean? restore from the snapshot you took?
[07:34:55] <joannac> so, if it's being written to a lot, it's probably not practical
[07:36:10] <KekSi> so to be save nothing goes wrong with the production db it's probably better to start from scratch after the testing period
[07:36:44] <KekSi> take the hit for a couple of hours of sync time (depending on bw)
[07:38:53] <KekSi> its potentially going to be about 3 weeks (if more things fail while we're moving from a standalone install to a distributed system it could potentially be longer)
[07:40:21] <KekSi> only other question i have is: does the production db still serve requests while the secondary is catching up? i have tested it some time ago but can't remember off the top of my head
[07:41:36] <joannac> yes, 1 primary + 1 node in recovering (catching up) -> primary can still take writes and reads
[07:41:43] <KekSi> or does it block until the secondar is actually SECONDARY (as opposed to STARTUP/STARTUP2)
[07:42:02] <KekSi> alright, thank you very much for your time
[08:27:49] <brunoaiss> Derick, did you read the example already?
[11:02:14] <DKFermi> Hi folks -- can one of you please explain to me what bind_ip actually means for the mongodb-configuration? I'm using a flask-mongoengine app to communicate with the mongodb instance (which runs on a different server)
[11:02:32] <DKFermi> do i have to bind the ip of the mongodb to my flask server, or just to the loop-back interface of the host running mongodb?
[13:11:28] <RoyK> hi all. any idea there's some easy way to setup a mongodb cluster? Mostly for HA
[13:13:29] <phutchins> If I run an aggregation without a limit or match, ( something like db.frames.aggregate([ { $group: { _id: null, total: { $sum: "$size" } } } ]) ), will it run against all documents?
[14:51:55] <docmur> I'm trying to store some AES Encrypted data into my MongoDB, but I'm getting: A document was corrupt or contained invalid characters . or $
[14:52:17] <docmur> Is there a way to get over this? Maybe force the data into a binary format
[14:52:20] <Derick> you're using them as a key then
[15:50:27] <phutchins> If I run an aggregation without a limit or match, ( something like db.frames.aggregate([ { $group: { _id: null, total:{ $sum: "$size" } } } ]) ), will it run against all documents?
[15:51:05] <Derick> it has to go through all - you don't tell it not to
[15:51:20] <despai> hello guys. Anyone knows how can I group an aggregate by a specific number of results? Basic I have an aggregate Mongo.aggregate([ { $match: { "items": { $exists: true, $eq: { $size: 0 } } }, $group: .... <-- what should I type there? I need to get them grouped by a specific number of results, I have the number in a variable
[15:51:36] <Derick> despai: you can't group in your match
[16:02:10] <despai> so basically I need to get groups of records that match with a specific query BUT only retrieve groups of minimum N records
[16:02:28] <despai> if the query finds only 1 record and I want to group by 2 it shouldn't return anything
[16:02:38] <despai> only groups of at least n number of records matching the query
[16:02:49] <tinco> hey guys, I was doing a resync of a corrupted replica, and after 4 hours it only had synched 30gb, and the cluster was so slow our message queue started backing up
[16:04:26] <tinco> is resynching supposed to be so slow? it's about a TB of data, so it's not going to finish anytime soon this way, we can do stop the db and do it manually using rsync, but the cluster would go down for a few hours
[16:05:08] <Derick> despai: I don't see what the group result is based on there
[16:05:27] <Derick> I got to go now though. Home time!
[16:11:35] <despai> anyone else? How can I group an aggregate by specific number of results ? Mongo.aggregate([ { $match: { "items": { $exists: true, $eq: { $size: 0 } } }, $group: .... <-- what should I type there?
[16:12:00] <despai> I mean. Users.aggregate([ { $match: { "items": { $exists: true, $eq: { $size: 0 } } }, $group: .... <-- what should I type there?
[16:12:14] <despai> give users with empty items array but only grouped by 2 results
[16:12:23] <despai> I'm turning crazy with this...
[18:30:54] <StephenLynx> just use their RHEL repository.
[18:33:39] <Derick> ExoUNX: MongoDB Uni is pretty good I've heard. And we're quite a few people now!
[19:17:23] <docmur> I have the following encrypted database information: http://pastie.org/10927371 I have the following C code, trying to read that information: http://pastie.org/10927373, The problem is I'm getting (null) from the printf of str. Does the mongo C driver have a function to get the information from the database?
[19:58:24] <ralfbergs2> I know nothing about MongoDB, but I need to design a highly-available environment in Amazon Web Services (AWS) for MongoDB to run... My plan is to have 3 nodes, master, slave, arbiter. My problem is: My region in AWS only has two so called "availability zones." Theoretically one availability zone can fail, and then (in the worst case) all instances hosted in that zone are defunct.
[19:58:40] <ralfbergs2> So my plan is to host "master" in one availability zone, "slave" and "arbiter" in the other. Does that sound correct?
[19:59:16] <ralfbergs2> Should the zone with the master go down, slave and arbiter would make "slave" the new "master".
[19:59:50] <ralfbergs2> Should the zone with slave and arbiter go down, then what? Would Master become slave as it can't confirm it should remain master?
[20:00:12] <ralfbergs2> If that is true, how can I solve this dilemma in this scenario?
[20:18:02] <ralfbergs2> Is there anyone who can help me? HA installation of MongoDB in AWS with only two availability zones, master, slave, arbiter...
[21:06:57] <ralfbergs2> Is there anyone who can help me? HA installation of MongoDB in AWS with only two availability zones, master, slave, arbiter...