|
By default the ensureIndex() operation is blocking, and will stop other operations on the database from proceeding until completed. However, in v1.3.2+, a background indexing option is available. To build an index in the background, add background:true to your index options. Examples:
> db.things.ensureIndex({x:1}, {background:true});
> db.things.ensureIndex({name:1}, {background:true, unique:true,
... dropDups:true});
With background mode enabled, other operations, including writes, will not be obstructed during index creation. The index is not used for queries until the build is complete. Although the operation is 'background' in the sense that other operations may run concurrently, the command will not return to the shell prompt until completely finished. To do other operations at the same time, open a separate mongo shell instance. Please note that background mode building uses an incremental approach to building the index which is slower than the default foreground mode: time to build the index will be greater. While the build progresses, it is possible to see that the operation is still in progress with the db.currentOp() command (will be shown as an insert to system.indexes). You may also use db.killOp() to terminate the build process. While the build progresses, the index is visible in system.indexes, but it is not used for queries until building completes. Notes
|

IF YOU HAVE A QUESTION, POST IT TO THE USER GROUP.
These pages are fine for comments, but for questions, your best bet will always be the MongoDB User Group. blog comments powered by Disqus