PMXBOT Log file Viewer

Help | Karma | Search:

#mongodb logs for Monday the 8th of June, 2015

(Back to #mongodb overview) (Back to channel listing) (Animate logs)
[00:34:59] <maumercado> Hello
[00:35:09] <Zelest> hi
[00:35:12] <maumercado> anyway that I can make a bulk operation but heres the trick
[00:35:17] <maumercado> I want to be able to insert docs
[00:35:19] <maumercado> via bulk
[00:35:25] <maumercado> that have not being inserted yet
[00:35:46] <maumercado> kind of like a findModify but if it finds and object, then it should not modify nor insert
[01:39:59] <luminux> Hi, I’m new to version 3. Is it still necessary to shard a database to allow better write performance on multicore systems?
[06:35:42] <roelof> If I have this code (http://lpaste.net/134076 ) why do the last 6 entries not get sorted ?
[10:14:11] <donguston> I have thousands of JSON files that I have exported from a websites API and I want to turn them into a database that I can query to output stuff in the format that I require. Some of them have syntax errors. Is there a way for MongoDB to read them all? Is there anyhthing I can use to attempt to automate the syntax fixes
[10:16:44] <pluffsy> Hi!
[10:25:59] <Naeblis> Should I use 2d indices or 2dsphere for storing geospatial data?
[10:27:40] <donguston> yeah Naeblis
[10:28:06] <Naeblis> donguston ?
[12:31:39] <DennisGer1> hello is it possible to perform a query projection on a specific Json array index ? I tried this without any success
[12:35:28] <StephenLynx> 'arrayName.5':1 perhaps.
[13:06:13] <deathanchor> yeah I believe StephenLynx is correct
[13:08:22] <StephenLynx> but DennisGer1 if you are hard hard coding indexes of arrays, probably something is wrong.
[13:08:36] <StephenLynx> if you are storing it like that.
[13:09:10] <deathanchor> StephenLynx: but I want the 5th member of all the boy bands in my DB.
[13:10:02] <StephenLynx> I can understand when its something like I had to face recently, with generated HTML pages and forms, where your options are limited. but as soon as that 'something-id' hit the application, you should store each part in their proper fields.
[13:12:37] <cheeser> deathanchor: Zayn Malik is gone, man. he quit. let him go.
[13:14:15] <DennisGer1> thanks, let me try StephenLynx.
[13:18:30] <DennisGer1> not working as expected, Not possible to query projection like this : arrayname.subarrayname[index]
[13:18:31] <DennisGer1> ?
[13:18:49] <StephenLynx> arrayName.index.subArray.index
[13:18:58] <StephenLynx> and your schema looks like a mess.
[13:26:30] <DennisGer1> mongodb is not suitable for deeply structured json array ? component has a component which has another component and so on
[13:26:31] <DennisGer1> ?
[13:26:59] <deathanchor> DennisGer1: that's a poor structure design if it is always growing
[13:27:13] <deathanchor> mongo is good for storing lots of similar documents
[13:28:01] <DennisGer1> the depth of the components is max. 10
[13:28:04] <DennisGer1> not any deeper
[13:29:22] <deathanchor> but will it grow in size? (even if depth doesn't)
[13:29:53] <StephenLynx> the problem is the information is not on proper fields.
[13:30:10] <StephenLynx> instead of {field:value} you have [value]
[13:30:44] <StephenLynx> if you are using hard coded indexes of arrays, you could use objects with keys.
[13:31:24] <DennisGer1> it will grow in size to a certain number and then not anymore.
[13:31:36] <StephenLynx> ...
[13:31:41] <StephenLynx> why do you need hard coded indexes?
[13:31:49] <StephenLynx> why you need the 6th element?
[13:32:45] <StephenLynx> what does the 6th element represents?
[13:35:28] <DennisGer1> for example : server_monitoring [server 1 [mainboard [ graphicard, cpu, harddisk] , server 2 [mainboard [...] , server 3
[13:36:00] <DennisGer1> 6th element is the 6th server
[13:36:02] <StephenLynx> so why not {graphiccard: value, cpu: value, harddisk: value} ?
[13:36:46] <StephenLynx> and why are you accessing the 6th server?
[13:36:49] <DennisGer1> then how can I releate this graphiccard to the specific mainboard which belongs to the specific server
[13:37:01] <DennisGer1> I want all infos from the 6 th server for example
[13:37:12] <StephenLynx> you can do that either way because mongo doesn't enforce relational integrity.
[13:37:15] <StephenLynx> cant*
[13:37:31] <StephenLynx> but WHY the 6th server? where does this magical index come from?
[13:38:08] <StephenLynx> [{key:value},{key:value is what you need.}]
[13:38:15] <StephenLynx> [{key:value},{key:value}]
[13:38:23] <DennisGer1> this is hardcoded.. I know how the serverfarm structure will look like and it will not be changed anymore afterwards
[13:38:25] <StephenLynx> and not [ [value],[value]]
[13:38:43] <StephenLynx> ok, so the server array has a purpose.
[13:38:51] <StephenLynx> but the inner information of each server doesn't.
[13:38:59] <DennisGer1> yes...that's true
[13:39:13] <StephenLynx> so what you need is 'servers.5' :1
[13:39:24] <StephenLynx> an it will give the object with that server's information.
[13:39:32] <DennisGer1> yes correct ;-)
[13:39:51] <DennisGer1> but this is not a good design in mongodb ?
[13:40:24] <StephenLynx> arrays of arrays where an index represents a specific value is not a good design anywhere.
[13:40:48] <DennisGer1> hmm ok
[13:40:53] <StephenLynx> the issue was just that inner array.
[13:41:07] <StephenLynx> where you had the gpu on the 0, cpu on 1 and hd on 3
[13:41:09] <StephenLynx> 2*
[13:44:01] <DennisGer1> db.getCollection('serverfarm1').find( {}, {"servers.server.1":1}) is not returning all the sub arrays ...only till mainboard level
[13:45:26] <StephenLynx> servers.1
[13:56:50] <DennisGer1> still not getting all levels....but thanks so far Stephen. I think I really need to redesign the JSON structure
[14:48:36] <gabrielsch> is there any way to query and retrieve nested collections? here's my "schema": https://gist.github.com/gabrielsch/170736a9682915e63fed
[14:48:44] <gabrielsch> I want to find supplies by productId
[14:50:16] <GothAlice> gabrielsch: Not the way you've structured your data, no.
[14:50:43] <saml> db.Supplier.find({'supplies.18.productId': '18'})
[14:51:09] <GothAlice> And no ability to index that means a world of pain.
[14:51:12] <saml> in your program, query = {}; query['supplies.'+id+'.productId'] = id
[14:51:33] <saml> your data is weird. rethink. and think out side of the box
[14:51:39] <GothAlice> Instead of {supplies: {some_id: {productId: some_id, …}, …}} if you pivot your data like this, it becomes actually usable: {supplies: [{productId: some_id, …}, …]}
[14:52:05] <GothAlice> db.Supplier.find({"supplies.productId": some_id}) < and you can index on supplies.productId to make this efficient.
[14:52:07] <saml> exactly. and use $setadd or something
[14:52:24] <saml> $addToSet
[14:52:39] <gabrielsch> hmm, then supplies should be a collection?
[14:52:45] <saml> how many supplies would each document have?
[14:52:50] <gabrielsch> so Supplier -> reference many supplies
[14:53:01] <gabrielsch> saml: foo
[14:53:08] <gabrielsch> saml: 0 or N
[14:53:09] <saml> then i recommend bar
[14:53:14] <GothAlice> http://www.javaworld.com/article/2088406/enterprise-java/how-to-screw-up-your-mongodb-schema-design.html < give this a read
[14:53:19] <saml> is N > 10000 ?
[14:53:38] <gabrielsch> saml: unlikely, but yes
[14:53:50] <saml> then you have to rethink
[14:54:13] <saml> are there more reads than writes? what kind of queries are you running often?
[14:54:31] <saml> db.supplies.find({_id: supply_id})
[14:54:41] <saml> and each supply document will have an id of supplier
[14:55:04] <GothAlice> It more comes down to data growth (growing records up can be expensive) and patterns of use. Will you always want the parent record's data when getting a single child? If you delete the parent, will you want all children cleaned up automatically? Etc. The article I linked explores a few of the criteria for embedding.
[14:55:06] <saml> db.supplies and db.suppliers but then if you need suppliers data... you might want to denormalize
[14:56:08] <saml> gabrielsch, number of suppliers would be much less than supplies?
[14:56:24] <gabrielsch> saml: yes
[14:56:34] <gabrielsch> saml: for example. 1 supplier supplies N products, you know?
[14:56:37] <saml> how big is each supplier's data?
[14:56:54] <saml> what kind of supplier's data do you want to be joined/coupled with each supply?
[14:56:58] <gabrielsch> saml: it's small, only supplies collection can be big
[14:57:34] <gabrielsch> saml: I think nothing, only reference which are my supplies
[14:57:52] <gabrielsch> saml: when I designed this, I thought that supply is an internal detail of supplier
[14:57:59] <saml> so, I think this makes sense for you: db.supplies {_id: productId, supplier: {name: 'webscale', address: '1st west nyc'}, some other product info}
[14:58:01] <gabrielsch> but then I needed to query supplies from productId :(
[14:58:32] <saml> in that case, {_id:productId, supplier:supplierId, some other product info}
[14:58:42] <saml> maybe not productId..
[14:58:50] <GothAlice> Or you can have _id be the values combined.
[14:59:02] <GothAlice> {_id: {sid: supplierId, pid: productId}, …}
[14:59:04] <saml> can a product be supplied multiple times?
[14:59:20] <saml> oh you can use object as _id?
[14:59:29] <saml> is that compound index?
[14:59:32] <GothAlice> You sure can. Lists not so much, but documents, yes.
[14:59:46] <GothAlice> The order of the keys becomes important when using it that way, though.
[14:59:53] <saml> yah that was my next question
[15:00:00] <GothAlice> (I.e. {sid: 1, pid: 1} !== {pid: 1, sid: 1})
[15:00:10] <saml> it's gonna be a problem.. if you use json serialization
[15:00:33] <GothAlice> Uhm, like any database I hope you aren't trusting user-supplied data for your query source.
[15:00:33] <saml> in some of your micro web scale services that might generate queries
[15:00:49] <nawadanp> There is two commands to manage the balancing of a collection : sh.disableBalancing(namespace) and sh.enableBalancing(namespace). But how can I see if the balancing is enable or not on this collections ?
[15:00:57] <GothAlice> I.e. your application code should be constructing the query, and not through JSON serialization. ;P
[15:01:16] <GothAlice> nawadanp: sh.status()?
[15:01:41] <GothAlice> nawadanp: Ref: the Databases and Sharded Collection sections of http://docs.mongodb.org/manual/reference/method/sh.status/
[15:02:57] <gabrielsch> saml: a product is unique for each supplier
[15:03:33] <nawadanp> Also, when I disable the balancing on a collection, how can I be sure that there isn't any balancer process on it ? Currently, I just check that this return nothing : config.locks.find({ '_id': namespace, "state": 2}).count()
[15:04:27] <nawadanp> GothAlice, Thanks ! I will check that
[15:05:15] <saml> gabrielsch, so.. maybe db.products and each product is tagged with one or more supplierIds
[15:05:39] <saml> im' just guessing around. don't listen to me. but think out side the box
[15:11:17] <GothAlice> gabrielsch: It's also very important to remember that having truly dynamic field names (i.e. {foo: {"27": {some_id: "27", …}}} — "27" is being used as a field name here) is in general a very bad way to store data, as you can't index it, you can't search across several nested values at once, only one at a time, etc., etc.
[15:12:14] <nawadanp> About the s.status(), I expected a command more specific, like for example getBalancingStatus(namespace)
[15:12:36] <nawadanp> Because sh.status() take few minutes to execute...
[15:23:05] <lllama> hello all. I'm upserting a bunch of docs from node but I'm closing my connection before they've all been written.
[15:23:36] <lllama> Is there a 'drain' event I can listen for, or similar? (using something like that with postgres).
[15:26:30] <GothAlice> lllama: http://docs.mongodb.org/manual/core/bulk-write-operations/
[15:27:12] <GothAlice> And at a minimum use a write concern of {w: 1}, or "acknowledged".
[15:29:10] <lllama> GothAlice: thanks. Using bulks might need a rework, as I won't know the number of docs until runtime.
[15:29:35] <lllama> I did set the writeConcern but it didn't seem to make a difference.
[15:29:36] <GothAlice> lllama: The bulk operations manager will do the chopping up into discrete units of work for you, or should.
[15:30:16] <GothAlice> I.e. if you add 1001 operations to a bulk set, it'll do two units of work. (The first 1000, then the next 1.)
[15:30:44] <GothAlice> lllama: Also ref: http://docs.mongodb.org/manual/core/write-concern/
[15:43:30] <lllama> GothAlice: cheers. I shall experiment further. ATM {w:1, j:1} doesn't seem to help
[15:43:38] <einyx> hello
[15:43:43] <saml> hi einyx
[15:43:51] <einyx> I've installed v3.0.3 on ubuntu 14.04
[15:43:54] <saml> how can i help you today
[15:44:01] <saml> what an accomplishment
[15:44:05] <GothAlice> lllama: If your JS code is async, you'll need to be careful of callback hell, and make sure you only let your app actually quit when all operations are complte.
[15:44:10] <GothAlice> Complete, even.
[15:44:11] <lllama> I can bodge it by delaying the db.close call until all my update callbacks have fired.
[15:44:11] <einyx> but the init upstart script doesn't actually kill the pid
[15:44:20] <einyx> anyone with the same issue?
[15:44:21] <saml> how did you install?
[15:44:25] <lllama> GothAlice: yeah - that's my issue really.
[15:44:25] <GothAlice> lllama: You certainly need to do that.
[15:44:30] <einyx> from the official repo
[15:44:38] <saml> i don't use apt-get version.. i just use binary distribution from mongodb.com
[15:44:40] <einyx> deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse
[15:44:53] <einyx> yup, is the mongodb package, not the native
[15:45:17] <lllama> GothAlice: Had the same issue inserting into postgres but its driver has a "drain" event that I can listen for.
[15:45:38] <saml> einyx, how do you start/stop mognod?
[15:45:47] <einyx> service mongod start
[15:45:52] <lllama> GothAlice: using my semaphore-ish approach seems to be working.
[15:45:59] <lllama> GothAlice: thanks for the help though!
[15:46:10] <saml> is that upstart einyx ?
[15:46:34] <GothAlice> lllama: As a note, I've never once in my life explicitly closed a MongoDB connection.
[15:46:49] <einyx> yeah
[15:47:02] <GothAlice> lllama: Given the client drivers do connection pooling, closing connections seems excessive. ;)
[15:47:47] <lllama> GothAlice: my inserts are being done from a script, so I want the program to exit once I'm done.
[15:48:10] <lllama> GothAlice: i.e. it's not a server process or similar that will hang around.
[15:48:44] <GothAlice> In those scenarios I still don't explicitly close. The connection will be cleaned up when the script exits, regardless. (Not sure if Node has an "atexit" callback registry, though.)
[15:59:38] <deathanchor> you only need to exhaust cursor that you explicitly say never to timeout, other than that you don't need to close anything
[17:22:15] <deathanchor> anyone else here use tokumx?
[17:24:19] <StephenLynx> never heard about that.
[17:24:28] <deathanchor> poop.
[17:24:52] <deathanchor> tokumx doesn't seem to obey the secondaryPreferred like mongodb does.
[17:25:14] <deathanchor> wondered if anyone else has that issue
[17:25:40] <deathanchor> tokumx version I am using most closely resembles mongo 2.6
[17:25:50] <StephenLynx> funny thing, "but it replaces 1970s B-tree indexing with modern Fractal Tree® indexing technology." why doesn't mongo implement this on their engine?
[17:26:05] <StephenLynx> or their stats are bullshit.
[17:26:19] <StephenLynx> "50x performance improvements 90% reduction in database size"
[17:26:32] <deathanchor> so tokumx is great for compression, yeah about 90%
[17:26:46] <deathanchor> it's super fast for some things.. not all things
[17:27:34] <StephenLynx> does it does something worse than vanilla mongo?
[17:27:52] <deathanchor> what's vanilla mongo?
[17:27:58] <StephenLynx> mongo.
[17:28:07] <StephenLynx> vanilla = without anything added.
[17:28:17] <deathanchor> oh that's the only way I use mongo
[17:28:29] <StephenLynx> you just said "it's super fast for some things.. not all things"
[17:28:36] <StephenLynx> what are these other things.
[17:28:46] <deathanchor> tokumx sucks at doing counts for some reason
[17:28:58] <StephenLynx> hm
[17:29:16] <deathanchor> also if the doc is big, it takes slightly longer to do updates because it has to recompress
[17:29:25] <StephenLynx> I see.
[17:29:31] <StephenLynx> so it loses some flexibility?
[17:29:45] <deathanchor> also no unique constraits allowed on indexes
[17:29:54] <StephenLynx> oh lawdy
[17:29:56] <StephenLynx> :^)
[17:30:11] <StephenLynx> yeah, that REALLY narrows use cases.
[17:30:22] <deathanchor> nice thing it does to document level locks, so there is much less write blocking
[17:30:56] <deathanchor> read blocking is also non-existent basically for the same reason
[17:31:54] <deathanchor> there is no "repairDB" if you corrupt your files somehow (less reselient than mongo).
[17:33:00] <StephenLynx> yeah, they well all out on compromises to achieve those numbers.
[17:33:04] <StephenLynx> went*
[17:41:30] <deathanchor> yeah, I deal with db locks over and over on mongo, but no to tokumx.
[17:42:58] <saml> do you use docker?
[17:43:22] <deathanchor> nope.
[17:45:25] <deathanchor> I use ansible for now, we may be forced to use some other paid software in the future, but for now everything is too complex for our needs where ansible fils that role easily.
[17:46:17] <deathanchor> I'm interested in UrbanCode
[17:53:31] <bjorn`> Say I wanted to store sensor data (or any data for that matter) dumped once a minute, but I have no use of down-to-the-minute data weeks back, say I need minute data for the last day, per-hour for the last month and bi-daily for everything before that; What would be the best way to design this? I've though of separate collections for each time series, but that seems a bit unflexible. Better suggestions? A
[17:53:37] <bjorn`> worker that cleans the unnecessary records once a day?
[17:54:37] <Spec> statsd/collectd sounds like the right tool for that job :p
[17:54:55] <StephenLynx> " cleans the unnecessary " you could just use expiration.
[17:55:08] <deathanchor> bjorn`: GothAlice has a good article on that
[17:55:26] <GothAlice> http://www.devsmash.com/blog/mongodb-ad-hoc-analytics-aggregation-framework
[17:55:34] <StephenLynx> and about the different means of accessing the data, I would pre-aggregate these.
[17:56:14] <StephenLynx> if you expect to perform these queries constantly.
[17:56:50] <deathanchor> StephenLynx: that's exactly what the above article is about
[17:57:02] <StephenLynx> indeed.
[17:57:14] <StephenLynx> I adopted these habits since I read that.
[17:57:58] <bjorn`> Spec: will check out those, sounds like what I need
[17:58:04] <StephenLynx> the least data I have to pre-aggregate and the more often I have to access it, the more I am willing to pre-aggregate it.
[17:58:07] <bjorn`> deathanchor / GothAlice; will read that aswell, thanks.
[18:27:05] <deathanchor> anyone have experience with com.google.code.morphia.AdvancedDatastore ?
[18:28:09] <shlant> hi all! is it recommended you use WiredTiger in most cases? I have a read heavy app on EC2
[18:31:01] <GothAlice> shlant: No, WiredTiger is not yet ready for general production use.
[18:31:18] <shlant> good to know, thanks
[18:31:20] <GothAlice> When it is, it'll be set as the default engine for MongoDB. Before that, stick to MMAP.
[18:31:47] <shlant> will do. And how would I go about determining whether or not I should go with PIOPS?
[18:32:04] <shlant> what would be some metrics/indicators
[18:32:21] <shlant> I have a very small dataset (less than 1GB)
[18:32:54] <jr3> what would be the best way to save 12 documents in one go?
[18:33:43] <jr3> also, is there any way to just save specific fields back? I'm trying to reduce data going over the wire from mongo to my server
[18:36:20] <deathanchor> jr3: look up $set
[18:37:08] <jr3> deathanchor: I basically need to find and then += some fields
[18:37:22] <jr3> will $set still apply?
[18:37:54] <deathanchor> jr3: $set basically says "leave doc as is, but $set : this"
[18:38:30] <deathanchor> you can use it for update() or findandmodify() if you need the doc before change.
[18:39:10] <deathanchor> seriously the docs for mongo are very thorough.
[18:39:18] <jr3> right now I'm basically retrieving all properties on the models, then save() back the entire thing
[18:39:32] <deathanchor> jr3: yes look at how $set works
[18:39:34] <jr3> which I think is slowing it down, because we have some really large lists on the model
[18:39:43] <jr3> that I don't even need for this operation
[18:40:07] <jr3> deathanchor: thanks will do
[18:40:17] <deathanchor> most of my ops are ( { query this }, {$set : { newOrExistingField : toValue } })
[18:41:01] <deathanchor> for arrays use $addToSet
[18:41:29] <deathanchor> this blows, can't figure out why this driver won't send the query to secondary.
[18:45:49] <StephenLynx> anyone know how I contact the guy behind the node.js driver? I wrote a fix.
[18:46:39] <jr3> deathanchor: one last question, should I consider some kind of bulk save right now I have loops doing individual saves
[18:47:17] <jr3> it's about 9 saves for 1 function call that gets called 100times
[19:15:55] <StephenLynx> ok, submitted fixed to 3 repositories.
[19:16:02] <StephenLynx> fixes*
[19:26:39] <crised_> in java, connecting to mongoclient with an URI that already have the database name in it
[19:27:04] <crised_> To get the database, does this line makes any sense? MongoDatabase database = mongoClient.getDatabase("mydb");
[19:28:16] <cheeser> sure
[19:28:24] <crised_> cheeser: thanks
[19:28:43] <crised_> cheeser: you're the best support ever :)
[19:30:22] <cheeser> danke :)
[19:32:02] <cheeser> afaict, that DB reference in the URL is largely for certain systems to be able to configure which database to deal with by inspecting the URL which can come from, say, stage specific config files (dev vs. staging vs. prod_
[19:32:11] <cheeser> MongoClient itself just connects to a host.
[19:33:09] <crised_> cheeser: oh ok, I don't have to worry about reconnects or anything, that should be done under the hood, right?
[19:34:21] <GothAlice> Additionally, the db provided in the URL is used as the authenticationDatabase for URI-based configs.
[19:34:33] <GothAlice> Thus you can include credentials in the URL, then switch to another database later.
[19:38:53] <cheeser> crised_: right. you might see some churn during a reelection but once the dust settles the driver will pick up the new master for you
[19:38:59] <cheeser> er, primary. not master.
[20:02:33] <deathanchor> weird... profiler writes to magic collections on secondaries, they vanish once you switch dbs.
[20:04:03] <deathanchor> so I'm having a strange time trying to get a distinct query to run on secondaries, but it seems to keep running on the primaries no matter what.
[20:06:22] <deathanchor> well this sucks: https://jira.mongodb.org/browse/JAVA-570
[20:08:16] <StephenLynx> "Resolution: Fixed"
[20:08:17] <StephenLynx> so
[20:08:24] <StephenLynx> isn't it actually fixed?
[20:08:41] <deathanchor> only in 3.0 it seems
[20:08:45] <deathanchor> 2.9
[20:08:59] <StephenLynx> any particular reason you are using an outdated driver?
[20:09:33] <StephenLynx> aren't you the one with the issue?
[20:09:40] <StephenLynx> "<deathanchor> so I'm having a strange time trying to get a distinct query to run on secondaries, but it seems to keep running on the primaries no matter what."
[20:11:18] <deathanchor> so yes, working with a dev who is doing the code changes. I requested the change because a user clicks something which triggers this distinct query, which locks up the DB, which backlogs a bunch of stuff which is my job :)
[20:11:52] <deathanchor> basically I wanted the distinct moved to secondary so it doesn't stop write ops
[20:12:15] <StephenLynx> well, so just tell him to stop using old dependencies.
[20:12:18] <deathanchor> in qa we couldn't get it to run the secondary via the code.
[20:12:25] <deathanchor> yeah, well
[20:12:33] <deathanchor> "legacy" system
[20:12:38] <StephenLynx> welp
[20:26:25] <deathanchor> hmm.. anyway to tell mongo "run this query, but stop if it takes more than 30 seconds?"
[20:32:10] <cheeser> deathanchor: look up maxTimeMs
[20:37:38] <deathanchor> oo
[20:37:59] <deathanchor> crap
[20:38:08] <deathanchor> in mongo 2.6+
[20:38:19] <deathanchor> god I need to upgrade, love these features
[21:10:05] <Owner_> hello
[21:10:36] <Owner_> how bad will performance be impacted during a mongodump ?
[21:13:18] <cheeser> depends on the version and storage engine
[21:13:41] <cheeser> there's a lock taken out but it yields from time to time. you won't want to do it during peak times if you have a lot of data.
[21:14:08] <Owner_> ok cool
[21:14:25] <Owner_> the systems cpu load is pretty low and mongo us using 60pct of memory
[21:14:31] <Owner_> so...seems safe...
[21:22:46] <Owner_> cheeser, thank you
[21:23:34] <shlant1> is memory usage for a mongo server determined by size of DB? or by reads? or something else
[21:26:53] <Owner_> cheeser, dump completed :D
[21:30:31] <Owner_> cheeser, i have one more question
[21:52:19] <Owner_> well i assume that --out will supress the stuff it spammed earlier when i let it dump to a directory
[21:54:35] <Owner_> ohhhh
[21:54:43] <Owner_> must specificy database and collection to print to stdout
[21:54:58] <Owner_> derp, so i guess i wont use that
[22:09:17] <Doyle> Hey. Is there an upper limit to the size of the DB where performance becomes unmaintanable?
[22:10:05] <Doyle> I'm looking at the MongoDB at Scale page and I have to assume that some of these companies have hundreds of TB in their sets.
[22:17:44] <crised_> I'd like to have 2 rows as primary key, one is an number id, and the other is a date timestamp, the number id gets repeated through time many times. Can I do complex queries on attributes only on the last occurence of each id?
[22:52:15] <rkgarcia> crised_, aggregation
[22:58:59] <pqatsi> hello
[22:59:09] <pqatsi> Im trying to build r3.1.4 in gentoo changing the ebuild
[22:59:29] <pqatsi> the build.log is https://bpaste.net/show/20b0d487e1a2 and the patch applied is https://bpaste.net/show/e3bc19c3c6be
[22:59:32] <pqatsi> What is wrong here?
[23:45:33] <pqatsi> iam gay