[12:22:42] <chris|> it seems like we managed to produce an oplog entry that causes our secondaries to crash. is there any way to remove that oplog entry from the primary so it won't be propagated? https://0paste.com/8568
[12:24:32] <kurushiyama> This looks like you are doing strange things...
[12:27:36] <chris|> yes, it looks like we hit SERVER-19019, I still would like to recover the situation though
[12:57:31] <kurushiyama> do a dummy operation on the primary first. like db.foobarbaz.insert({value:"dummy entry for oplog"})
[12:57:43] <kurushiyama> chris|: THEN stop the primary.
[12:58:44] <kurushiyama> Now, follow the procedure for resizing the oplog. https://docs.mongodb.com/manual/tutorial/change-oplog-size/
[12:59:14] <kurushiyama> chris|: Except that you do not actually resize it, but only keep the last entry of the oplog, which should be our dummy entry.
[12:59:44] <kurushiyama> After that, resync your secondaries.
[13:00:46] <kurushiyama> Oh, and you might want to delete those temporary m/r collections before adding the dummy entry as well.
[13:00:57] <kurushiyama> chris|: That should do the trick.
[13:20:05] <dino82> Is the reason my mongo secondaries are so much larger disk space-wise due to the poweroftwosizes setting? This is for the initial sync
[13:21:10] <kurushiyama> dino82: You still use mmapV1?
[13:22:19] <kurushiyama> dino82: powerof2sizes applies to mmapv1 only, afaik. Sorry, no idea about rocksdb in general. Probably you should stay with a well known storage engine.
[13:22:54] <dino82> The primary contains ~215GB but I'm already over 260GB on the secondary. I know there is some additional padding involved for document growth
[13:26:39] <kurushiyama> dino82: Well, i would be suprised if MMAPv1 configuration settings would apply for rocksdb, but you are the one with the expertise on RocksDB, so I am probably wrong.
[13:30:16] <kurushiyama> cheeser: As far as I know. But it has to have some super cool features i missed.
[13:30:31] <dino82> There was a commit to it last night, I dunno. It's what my DBA likes to use, just for performance
[13:31:27] <kurushiyama> dino82: Uhm... Isn't your DBA supposed to care for data sizes? Just saying...
[13:32:16] <kurushiyama> dino82: And "just for performance" is not really worthwhile, imho. But that may be just me.
[13:32:33] <dino82> Yes, technically it's falling on me until we get a proper mongo DBA as it was a request from the product team
[13:34:27] <kurushiyama> o.O So you have a DBA which isn't one and suggests an unsupported third party storage engine for your _product_? Buddy, that sounds like a _bad_ idea.
[13:35:21] <dino82> It's a pre-release product, still going through the testing phase. I'd prefer using a supported engine, so I'm still trying to push that
[13:36:56] <cheeser> maybe it's the parse bits that were killed
[14:01:29] <cheeser> ah. then tokumx is truly dead.
[14:02:36] <Derick> for MongoDB, yes - not for MYSQL it seems
[14:05:25] <cheeser> there's a tokumx for mysql? what is this madness?
[14:05:48] <cheeser> did they add transactions to mysql, too? ;)
[15:37:38] <chris|> can someone outline when a secondary acknowledges a write if write concern replica acknowledge? my current understanding is: primary receives write -> writes to oplog journal -> write to oplog -> secondary readys oplog -> secondary writes olog journal -> secondary acknowledges write before (or parallel to) writing to oplog
[15:38:56] <kurushiyama> chris|: Uh, wait a sec...
[15:40:02] <kurushiyama> chris|: replica acknowledge translates to w:1, j:true, iirc?
[15:44:41] <kurushiyama> Aside from the fact that there is no "oplog journal", that seems about right.
[15:48:02] <chris|> okay, so that would mean that it would actually be : secondary reads oplog -> secondary applies oplog -> change is written to secondary journal -> secondray can acknowledge?
[16:00:46] <ikus060> Hello, I want to install mongo on Redhat. I'm looking for an rpm package, but I can't find any from official website. Are your provding RPMs ??
[16:02:26] <ikus060> cheeser: I've already came across this. It doesn't provide information about where I can get the package from
[16:03:07] <cheeser> it's right there: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/#configure-the-package-management-system-yum
[16:32:30] <jokke> is it possible to use mongodump with a db uri?
[16:32:42] <jokke> as in mongodb://localhost:27017/some_db
[18:56:20] <GothAlice> Well, that's frustrating. pymongo provides a codec option for the document_class, but doesn't provide the constructor with any information at all about the incoming document fragment being a top-level document or embedded document (and trying detection based on the presence of an _id field is too fragile).
[18:57:34] <annoymouse> There's some bug that's rather complicated to explain but basically there was a missing entry from a collection.
[18:57:53] <annoymouse> Someone on my team told me that the fix is:
[18:57:53] <annoymouse> "the collection is mongo is index -- then { "schema.titles.text": "Baba Kama" }"
[18:58:27] <annoymouse> I don't really use mongo so that means very little to me, but maybe someone here could help me decipher it
[18:59:15] <GothAlice> Unfortunately, likely due to language differences, that's not very understandable. The developer might be suggesting adding an index, but I can't parse much beyond that.
[18:59:44] <GothAlice> "a missing entry from a collection" is also likely too summarized to be clear; I don't know what you might mean by this.
[18:59:45] <annoymouse> GothAlice: There is a collection named index
[19:00:53] <annoymouse> Oh I think I understand what he means now
[19:01:04] <annoymouse> GothAlice: What's the command for updating an entry?
[19:01:40] <GothAlice> What type of entry, where? A document in a collection? db.collection.update()
[19:02:30] <GothAlice> (But also depends on your driver. db.collection.update_many / db.collection.update_one)
[19:03:14] <annoymouse> Sorry don't really know the proper terminology
[19:08:57] <GothAlice> (Adding a single new element to an array would be $push, adding more than one at the same time would be $pushAll, and if you want to ensure a duplicate item can't be added, then it's $addToSet.)
[19:17:21] <annoymouse> GothAlice: Thanks so much! I fixed it
[19:17:33] <GothAlice> It never hurts to help. :) Glad you got it working.
[20:58:14] <kurushiyama> GothAlice: "The good thing about knowledge: You can share it without loosing something." One of my favourite proverbs;)
[20:58:41] <GothAlice> Hehe, it's a good one. (Not quite correct, but a good principle. ;^)
[20:59:06] <GothAlice> Privacy and control are two things you lose once you take an idea out of your head.
[21:00:54] <kurushiyama> GothAlice: Well, ideas are different. Even experience is. But knowledge? Most of what I know was given to me for free – I only give back my share ;)
[21:02:05] <GothAlice> Secret knowledge, my friend. Ideas are just knowledge that is novel or new. ;P
[21:03:08] <GothAlice> I have a corollary to the "teach a man to fish" proverb: "Give a man a fish, feed him for a day. Take his fish away and tell him he's lucky just to be alive, and he'll figure out how to catch another one for you to take tomorrow."
[22:03:10] <GothAlice> kurushiyama: https://gist.github.com/amcgregor/9f5c0e7b30b7fc042d81 contains some serious, but many silly items.
[22:04:00] <GothAlice> Some inspiration from "Skippy's List" and "Lefler's List".
[22:32:14] <JoshK_> Hey - I've got an issue where we have several objects and we're wanting to sort them by a string which resides in each object. However, it's doing it wrongly, as you can see here: https://joshk.eu/images/2016-06-02_23-23-09_dc8dd7e3-ee22-4298-bbe8-919ecfeb3de1.png. Is there any way I can fix this, so they get sorted in the proper order (i.e. SW8 SW9 SW10 SW11 etc)? I'm using the PHP driver. Thanks.
[22:44:34] <kurushiyama> GothAlice: Pointed me to that, and even deviant, iirc.
[22:46:57] <kurushiyama> GothAlice: Love it. 52, 62, 80 and 114 <3
[23:10:59] <pyCasso> Hello, aside from using pyMongo Is there a python library or framework for running the mongo server? I want to start, stop, and restart mongo server via python script
[23:12:53] <pyCasso> the problem i'm having is when I go to the bin directory to start the mongod daemon, upon leaving the terminal session the process ends.
[23:13:14] <pyCasso> I want to keep mongo runing non stop
[23:33:45] <kireevco> pyCasso: what's the issue with using subprocess and keeping track of pid?
[23:33:57] <kireevco> pyCasso: you could use supervisord, I think it has python bindings
[23:36:39] <pyCasso> I can look into user supervisord. I was expecting mongo to run continuously without needing to install node or another framework.
[23:37:05] <pyCasso> I'm a front end developer just tinkering with MongoDB