[08:45:18] <mitereiter> I made an index and got the error: key values too large to index
[08:45:18] <mitereiter> but the Index were created on some shards, because when I want to insert on those shards I get the error value to large for index
[08:45:18] <mitereiter> I cant see the index with db.col.getIndexes()
[08:45:19] <mitereiter> is this the normal behaviour?
[08:45:19] <mitereiter> can I drop the index trough mongos?
[08:54:23] <zamnuts> mitereiter, was an index file created on the filesystem?
[09:51:36] <zamnuts> i guess i'll have to try it out, i'm interested
[09:53:51] <pamp> another question. You recomended WiredTiger for productions server for now?
[09:56:29] <lqez> hmm I'm using tokuft , not wiredTiger.
[09:56:39] <lqez> I tested tokuft with wiredTiger at 3.0RC4,
[09:56:58] <zamnuts> i haven't had any problems w/ wiredtiger, but it has only been a month or so
[09:57:31] <lqez> But WT crashes when it stores more than physical memory size. However,
[09:57:49] <zamnuts> drastic performance difference (for my dataset anyway) with WT over mmapv1, and i'm getting at least 50% compression ratio... again for my dataset
[09:57:50] <lqez> At stable release(not RC), it looks like very stable
[09:59:02] <lqez> pamp: See http://www.acmebenchmarking.com/ if you interest in another engines
[09:59:18] <lqez> zamnuts: yeap I used tokumxse - now it is 'tokuft'
[09:59:46] <zamnuts> like it? i only found out about it _after_ my WT migration :/ too late now
[10:00:06] <aps> Do the change entries stay forever in the journal?
[10:01:23] <zamnuts> aps, no, they are cycled out of the journal, but if you mean the oplog, then they stay there as long as your oplog limit hasn't been reached
[10:02:05] <pamp> once again, thnks for your inputs
[10:21:52] <joannac> it's not the same as what you get from MMS though
[10:24:34] <aps> joannac: I believe MMS uses Oplogs for backup purposes? Isn't there a way to go through that path?
[10:25:28] <joannac> not unless you want to reimplement it
[10:39:46] <mtree> i have a collection where _id keys are sometimes strings and sometimes ObjectID, how to query them properly?
[10:41:33] <phutchins> Is there a way (in 2.6) to run with --sslMode requireSSL but not provide a sslCAFile ?
[10:42:14] <joannac> mtree: that seems really suboptimal. why?
[10:44:56] <Waheedi> hello everyone. I have two different environments running mongodb on each env. I did rsync on /data/mongodb files from env1 to env2
[10:45:34] <Waheedi> after rsync is complete I did restart mongodb server but still i can't find the latest records made on env1 reflected in env2 database
[10:45:51] <Derick> you need to stop mongod on env1 before you sync
[10:46:24] <Waheedi> its already an read only (env1)
[10:46:27] <phutchins> Waheedi: you can stop a single secondary and copy from there
[10:46:41] <phutchins> Waheedi: how do you mean read only?
[10:46:46] <Derick> how did you make it read only?
[12:05:43] <Naeblis> My problem: a user can be part of multiple organizations which are stored inside user.member_of. But at any given time, I would like a user.organization that represents the currently logged in org
[12:07:01] <deathanchor> and you want an alias in the users.org value?
[12:08:31] <deathanchor> I would just store a value there. AFAIK there is no way to alias
[12:08:56] <deathanchor> you might be able to make a data model to conform to your needs
[12:09:08] <deathanchor> via mongoengine or something similar
[12:37:52] <leporello> Hi. How can i remove specified field from all documents in collections?
[12:38:43] <leporello> I'm using layouts.update( unknownArgument, { $unset: {'average': ''}}). What should I use in query to tell mongo to use all documents?
[13:02:00] <pithagora> hello all. i have a server which entered into slave mode after the second one was disabled and the application can't write into it.
[13:02:38] <pithagora> is it correct that i have to drop the local db then restart the mongodb without replset option to have the server in standalone ?
[13:03:43] <coudenysj> you can just restart it without the replset, if I remember correct
[13:03:47] <cheeser> you shouldn't have to drop anything.
[13:03:53] <cheeser> just remove the replSet option
[15:11:51] <d-snp> we get this error in our cluster: errmsg: "mongos specified a different config database string : stored : 10.35.0.2:27019,10.65.0.3:27019,10.72.0.3:27019 vs given : 10.35.0.2:27019,10.65.0.3:27..."
[15:12:23] <d-snp> we tried updating those strings, but apparently they have them stored somewhere
[15:12:35] <d-snp> is it possible to remove that store? where can we find it?
[15:12:44] <d-snp> apparently restarting the config servers was not enough
[15:14:08] <d-snp> our servers get new ips every now and then
[15:16:02] <Waheedi> joannac: sorry for the disconnection
[15:16:05] <d-snp> http://docs.mongodb.org/manual/tutorial/migrate-config-servers-with-different-hostnames/ reading this now
[15:16:38] <Waheedi> I have there is almost 150 new documents in env1 that are not showing at all in env2
[15:17:29] <einyx> d-snp: a better solution will be using hostnames i guess
[15:17:32] <Waheedi> joannac: i think a db.repairDatabase() would fix the issue, but I need to understand whats causing it and second the repair would take about 48 hours on my 400GB database
[15:17:36] <einyx> so you don't need to change them
[15:18:35] <d-snp> thanks, I don't know why we weren't doing that already
[15:48:16] <GothAlice> d-snp: Because DNS adds another point of failure to a server cluster, my servers automatically populate /etc/hosts as nodes come online and go offline.
[15:48:44] <GothAlice> (This removes external network resources as a potential issue.)
[17:19:12] <lmatteis> hi all. i tried creating an index using .createIndex()
[17:19:21] <lmatteis> how long does it take to create it. the command returned immediately
[17:19:32] <lmatteis> is it running in the background?
[17:19:42] <GothAlice> lmatteis: Only if you told it to do so.
[17:20:12] <lmatteis> no i just ran db['coll_name'].createIndex
[17:21:10] <lmatteis> ok then i'm still getting this and don't know why: { [MongoError: too much data for sort() with no index. add an index
[17:21:13] <lmatteis> or specify a smaller limit] name: 'MongoError' }
[17:21:24] <GothAlice> Foreground indexing will block other access to the collection while it's happening, but it's orders of magnitude faster than indexing in the background.
[17:21:36] <lmatteis> the code throwing that is: collection.find({},{"_id":0}).sort({"endpoint.datasets.0.label":1,"endpoint.uri":1})
[17:27:28] <lmatteis> GothAlice: so just like .createIndex({"endpoint.datasets.label":1})
[17:27:33] <codesine> Hi, anyone here for what I think is a basic question (:
[17:27:59] <GothAlice> lmatteis: It may be worthwhile to also add endpoint.uri to that index, as you're sorting on both.
[17:28:06] <GothAlice> codesine: Ask, don't ask to ask. :)
[17:28:08] <lmatteis> GothAlice: yeah that's there
[17:28:11] <codesine> I'm using mongoengine and for some reason things in arrays are showing up with a unicode in mongodb shell like so in this snippet:
[17:29:53] <codesine> i've never seen this ever before
[17:30:06] <codesine> I'm wondering how the hell the u got in mongoshell
[17:30:21] <GothAlice> codesine: Ah, you've got something in Python writing badly encoded JSON (or just a Python "repr" of a dictionary) into a string field.
[17:38:14] <lmatteis> i added the index i had earlier (with 0.label)
[17:38:18] <GothAlice> Oh, also, your sort is wrong.
[17:38:24] <lmatteis> and something seems to happen
[17:40:36] <GothAlice> From the explain you seem to have 535 records in that collection. If it's complaining about there being too much data to sort, something is terribly wrong with how you structured your data.
[17:41:34] <saml> what's good write concern to make sure data is completely saved?
[17:41:49] <saml> i tried w=majority&journal=true but still tests fail (find right after update)
[17:42:17] <saml> i can't tell how many replicaset members there are. so can't do w=100
[17:43:22] <saml> maybe it can't be done. currently 3 members. so w=3&journal=true . still tests fail sometimes
[17:43:27] <lmatteis> GothAlice: thanks, at least now it's working :) love you
[17:47:32] <GothAlice> "So our new prospect wants the entry level Product X™, but they have some questions about searching the data. They can search for candidates with certain levels of experience in certain areas, right?" My response: At the entry level? http://s.webcore.io/image/2T2z070q072I0R1z1n09
[17:49:58] <GothAlice> saml: Your tests are flawed.
[17:50:06] <GothAlice> Each time you bring it up and I'm around, I mention this. ;P
[17:50:39] <StephenLynx> GothAlice I didn't get that prospect and entry level stuff :v
[17:51:19] <GothAlice> StephenLynx: A potential client is asking for doctorate-level natural language processing capability for the equivalent of pennies on the dollar. "Ha ha ha. No."
[17:51:37] <codesine> Woot, @gothalice, thanks for the help, turns out the flaskrestful lib i was using automatically uses 2 types it calls, str, or int, which mangled my embedded object. But I could pass it a dict and it did without the mangling (:
[17:56:18] <wojons> running into some errors on a sharded cluster with "thread over memory limit, cleaning up", and "Assertion failure messageShouldHaveNs() src/mongo/db/dbmessage.cpp 97" and "AssertionException handling request, closing client connection: 0 assertion src/mongo/db/dbmessage.cpp:97"
[17:56:39] <GothAlice> saml: https://github.com/marrow/cache/blob/develop/test/test_model.py < a pretty thorough test suite for my "MongoDB as cache" package. And they work reliably: https://travis-ci.org/marrow/cache/jobs/59758804#L387-L427
[17:57:42] <wojons> i am running version 3.0.0-rc8 even if i update to 3.0.4 i still have the same issue
[17:58:18] <wojons> mmapv1 but let me double check
[17:58:36] <cheeser> if you have to check, it's almost certainly mmapv1
[17:58:46] <wojons> yeah i dont think i changed it cheeser
[17:58:54] <GothAlice> Set and forget is a thing, too.
[17:59:07] <cheeser> but less likely in this case :)
[18:00:44] <GothAlice> Alas, I can't immediately think of what would cause that in 3 beyond WiredTiger usage (with two directly related outstanding JIRA tickets). I would recommend opening up your own JIRA ticket with as much information as you can provide as to the runtime environment and configuration of the failing node.
[18:23:02] <GothAlice> Alas, I can't immediately think of what would cause that in 3 beyond WiredTiger usage (with two directly related outstanding JIRA tickets). I would recommend opening up your own JIRA ticket with as much information as you can provide as to the runtime environment and configuration of the failing node.
[18:23:34] <wojons> what jira tickets do you have for that
[18:27:19] <StephenLynx> IMO this guy is just flooding.
[18:31:43] <GothAlice> Max SendQ may also be the exact opposite of what you assumed: the server transmit buffer for that connection is filling. I.e. the client is "connected", but not successfully pulling in all data quickly enough. He may just have joined too many rooms at once. ;)
[18:32:22] <doc_tuna> i.e. /ignore #mongodb JOINS PARTS QUITS
[18:34:15] <mike_edmr> i do it for specific users when they are chronic rejoiners too
[18:34:43] <GothAlice> Depending on the messages surrounding the re-join, I sometimes PM people and advise on how to correct their problem.
[18:44:03] <kaliya> Hi. I have a replicaset for $database on three mongo instances. Two stopped because the partition where they store $database data filled up to 100%. I can discard the data... So I can remove $database.* files... But what is the procedure to follow here to remove those files? Without deleting the replicaset
[18:53:14] <deathanchor> StephenLynx must hate whem my autoaway re-nicks me
[19:17:54] <dan336> So funny story, I'm restoring a mongodb instance from a backup, and it is taking an extremely long time. right now the backup is about 63% done, and it has been running for over 24 hours, there are about 5 million records in the db. Are restores normally this slow?
[19:19:12] <deathanchor> dan336: is it building indexes?
[19:19:38] <dan336> deathanchor: how would I check that?
[19:19:54] <deathanchor> uh... it usually tells you what it is doing while doing a mongorestore
[19:20:59] <deathanchor> my experience has been 50% of the time is restoring the data, the other 50% was spent rebuilding the god aweful indexes the devs made.
[19:22:21] <GothAlice> Those sound like some unfortunate indexes.
[19:22:43] <dan336> that makes sense. we are using 2.6 and the only output we get from the command comes in the form:
[19:28:47] <GothAlice> Cool. That's fully eliminated as a potential problem. :) (EBS volumes, as an example, can sometimes get "stuck", causing await times to go nuts, which might not show as part of the load average.)
[19:29:17] <GothAlice> So, there is something you can do. You can restore the data without indexes, then tell the indexes to build in the background.
[19:29:27] <dan336> yeah we aren't on aws. we are running on our own servers.
[19:30:03] <GothAlice> This will take _substantially_ longer to fully build the indexes in the background, but at least the data will be accessible while that works away.
[19:31:06] <cheeser> background indexes aren't as space efficient fwiw
[19:31:12] <cheeser> but diskspace is cheap, right? :D
[19:31:37] <dan336> so if we do it in the background it will be using a lot of disk and ram? is that correct?
[19:31:48] <dan336> I mean more then it would originally.
[19:32:03] <GothAlice> For various definitions of "a lot".
[19:33:34] <dan336> are we looking at maybe a 2x increase?
[19:36:59] <jr3> anyone famaliar with AWS auto scaling?
[20:42:22] <dan336> So we got our restore to finish, however when we created the backup we have 5.9 million or so records. now we only have 3.2. does mongo not backup everything on a backup?
[20:50:28] <dan336> or is it possible that the restore process did not restore everything?
[20:54:33] <deathanchor> dan336: I'm going to go with the latter
[20:54:50] <deathanchor> unless your backup used some --query options
[21:04:31] <dan336> deathanchor: thanks, we found what we did. it was our mistake
[22:04:16] <Ruphin> I have a question regarding journaling and replica sets
[22:04:47] <Ruphin> We have an issue where due to large write volume the journaling creates a significant bottleneck in throughput
[22:05:45] <Ruphin> Is it possible to have the PRIMARY member of a replica set run without journaling to accept writes faster, and have a SECONDARY member run with oplog to have some safety in place in case of problems?
[22:12:31] <GothAlice> If the primary goes poof, you're likely to lose data in that scenario. (Any data that has hit the primary but not been replicated out to a secondary yet.)
[22:13:32] <Ruphin> Let's say we only store statistics such as performance graphing
[22:13:37] <GothAlice> Then disabling journalling might be an optimization you can get away with. As per my usual quip, optimization without measurement is by definition premature. I'd benchmark your data in a development environment under both scenarios.
[22:13:47] <Ruphin> Losing up to an hour of data is fine
[22:13:55] <GothAlice> Nah, shouldn't be that bad.
[22:14:02] <GothAlice> We're talking maybe 15 seconds of data.
[22:14:21] <Ruphin> What would be the consequence of disabling journaling on both primary and secondary?
[22:14:32] <GothAlice> Lack of node durability, that's it.
[22:14:57] <Ruphin> I mean, if I'm not journaling on the primary, does it matter if I journal on the secondary, or can I disable that as well without losing much
[22:15:23] <Ruphin> What I want to avoid at all cost is that the entire database is not recoverable if the entire cluster goes down due to power failure or something like that