Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-3181

Add option to listDatabases to only get db names, not size info



    • Type: Improvement
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.2.13, 3.4.3, 3.5.4
    • Component/s: Storage
    • Environment:
      Linux yq131 2.6.18-164.el5 #1 SMP Thu Sep 3 03:28:30 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
      ext4 filesystem
    • Backwards Compatibility:
      Fully Compatible
    • Backport Requested:
      v3.4, v3.2
    • Sprint:
      Storage 2017-03-06


      I have about 29377 files (including datafile and nsfile), 13666 databases. The total size is about 1TB. The mongod started with parameters "smallfiles" and "noprealloc".
      When I run the command listDatabases, it takes too long on calculating "sizeOnDisk" and determining the empty of database, more than a hour sometimes. But I just need a list of database names. An option to not display size or empty probably makes sense.
      I found that mongod will receive the listDatabases command in the following cases:
      1. Dump all databases use mongodump
      2. A Member of replica set doing initialSync
      3. Add a new shard to a cluster.
      In these cases, listDatabases may cause mongod overload and can not do the normal queries.


          Issue Links



              • Votes:
                10 Vote for this issue
                28 Start watching this issue


                • Created: