2,653 reputation
429
bio website comerford.cc
location Ireland
age 35
visits member for 2 years, 5 months
seen 4 hours ago

I currently work for MongoDB, Inc. and have a background in operations, networking and system administration. You can find me in all the usual places, but probably the most useful and relevant are listed below:

Personal Site/Blog
LinkedIn
Twitter
Stack Overflow Careers


1d
comment MongoDB Max Connections
Can you comment on the version you are using - the treatment of max connections changed with 2.6
Jun
26
comment MongoDB copyDatabase failed with dbOwner
My bad - it even tells you that the data remains intact at the end of that page. Seems that is the issue, so need to figure out a way to get rid of that permanently (assuming no issues post-migration)
Jun
26
comment MongoDB copyDatabase failed with dbOwner
Did you do this when you upgraded? docs.mongodb.org/manual/release-notes/2.6-upgrade-authorization There is a process to upgrade the user auth data when you go to 2.6 - if you did this and the issue is still there, then it's probably a (reproducible) bug, but if not then that is likely the root cause here.
Jun
25
comment MongoDB copyDatabase failed with dbOwner
Try: { resource: { db: "db1", collection: "system.users" }, actions: [ "find" ] } and then add insert to the actions if it still fails.
Jun
25
comment MongoDB copyDatabase failed with dbOwner
Hmmm, since this is not an admin DB you shouldn't need access to system.users and dbOwner should be more than enough. That makes me wonder if the authentication is succeeding and granting you that role for the copyDatabase. It will take me a little while to get some testing set up. If you wanted to do a little differential diagnosis yourself in the meantime, you could try using the root role for that user temporarily and see if it still fails. If it does, then that would imply that the issue is getting authenticated as the user rather than the role the user has (root has all access)
Jun
25
comment ENTRYPOINT & CMD commands with mongod results in unknown option error
first thing to try would be to take out the port and dbpath parameters, after all that is what you get as defaults anyway. What happens if you make it just CMD ["--smallfiles"]?
Jun
23
comment mongod won't run without me specifying my own conf path
I don't think you quite got what I meant. When you run mongod with not arguments, it defaults to /data/db - that will error regardless of the user you are running with if that folder does not exist. Hence your issues when running it without an explicit dbpath or config. Your issue with the service starting, and then not working is separate, and that is where you are likely running afoul of the permissions issues. None of this is really a mongodb issue, you would have the same problems with any service's files if you run the service as root.
May
30
comment Mongodump on Gridfs is killing the host IOs
Not at the moment, unless you use a node specifically for that purpose - you could have a secondary and tag it as "backup", the others as "prod" for example and have the backup queries only hit that node. You could even run more than one process on the host, make one of the them your designated backup node and then ionice that process, but for a single existing process there is no way to target specific queries within that process from a system level (that I know of).
May
30
comment Mongodump on Gridfs is killing the host IOs
But, since all the requests are coming from the same binary (mongod) you can't use ionice - the mongodump uses a regular query just like anything else and that is then serviced by mongod, so it's not competing with another process. You can use mongodump to access files directly (and hence ionice would work on it) but you have to shut down the mongod to be able to do that anyway, so nothing gained.
Apr
14
comment Backup MongoDB database copying files in `dbpath`?
Asked and answered already here: dba.stackexchange.com/a/62853/6441
Apr
8
comment how to integrate between MONGODB & SOLR, using MONGO-CONNECTOR
auth is failing (per the error) - if you run without auth I assume it will work, so it would seem that you are either passing in the wrong credentials or the user is not valid to run the command - you mentioned that you started the shell, but did you try running a command (like rs.status()) to verify the user was logged in and valid?
Apr
3
comment Did my mongoDB server crash because the database is too large?
@Tim - mongodb has a max file size of 2GB for that reason (some FS/OS not supporting it) - it pre-allocates multiple files of 2GB (max, starts smaller) when databases exceed that size (see your data directory for database.0, database.1 etc.)
Mar
28
comment MongoDB and ZFS bad performance: disk always busy with reads while doing only writes
@jlliagre - yes, but as soon as you start actually changing the file you are going to see a performance hit, because you invalidate the whole lot
Mar
27
comment MongoDB and ZFS bad performance: disk always busy with reads while doing only writes
@AlexF - yes, basically - the server ticket I pointed to is the one that will fix that particular issue for ZFS on Linux. You can see a similar check for NFS here already, so it should not be a huge change, but there are likely to be other issues: github.com/mongodb/mongo/blob/v2.4/src/mongo/util/…
Feb
25
comment Why is mongod not using all available RAM?
If you take a look at the pieces related to under reporting of virtual memory you will note that it is possible for resident memory to be low, and not increase, but for data to be in memory. Pre-heat the data, then run a query, see if there are page faults when you know the data is in memory. You will probably need to quiesce the database to be sure about the measurement. If the secondaries are similarly spec'ed then do a failover and see what the behavior looks like then (this is what I meant about them all looking the same or not).
Feb
24
comment Why is mongod not using all available RAM?
OK, well it could be readahead, but it would have to be way off (very high/inefficient). NUMA is likely not a problem if you are using VMs. Page faults while the set is heating up is OK (after all, you have to have page faults to get the data into active memory) but once you have touched all the relevant data once, they should ease off. Hence my recommendation to pre-heat and then evaluate. If they do ease off, then it would seem you have a reporting issue with resident memory, if not then something else is going on. Do all VMs show the same limitation?
Dec
30
comment how can I install MongoDB as a service in centOS
minor follow up here - the OS repos tend to get out of date, and give you older versions (freezing on the major version for example). If you use the 10gen/MongoDB repos and packages instead (as described in the guide you linked) you will get the latest versions
Dec
3
comment How to calculate the required EBS PIOPS for our mongo server?
You didn't mention the instance size but I would expect single volumes to be able to do significantly more than 25 IOPS a piece (with 4 total you get the 100 figure I mentioned) - if you were seeing IOWait, high queues (and you don't seem to be) then I would expect a significant improvement. Without obvious IOPS related stress, the biggest improvement you will probably see is a reduction in peak latency (PIOPS performance is more predictable). You may get more bang for your buck getting more RAM so MongoDB can fit more data into memory and hit disk less often (depends on your usage pattern)
Nov
26
comment Is it safe to snapshot an mdadm RAID with only xfs_freeze?
As long as the snapshot is point-in-time guaranteed you do not have to stop MongoDB (as long as the journal is included in the snapshot). Of course, that's independent of whether the snapshot itself is consistent from a data perspective across the volumes without freezing the data itself.
Nov
14
comment Spawning mongod process using sudo yields two separate mongod processes
I think the nature of the processes is answered below, but I will say this: do not start MongoDB as root, do not use sudo to run MongoDB - or any database for that matter - it is a bad, bad idea. If you switch to another user, as you should, you will have to manually fix the ownership on the various data files before the new user will be able to successfully start.