Uploaded image for project: 'MongoDB Database Tools'
  1. MongoDB Database Tools
  2. TOOLS-170

mongooplog --dbpath throws assertion

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 2.8.0-rc0
    • Affects Version/s: None
    • Component/s: mongooplog
    • None

      mongooplog has a --dbpath option, help message says this:

        --dbpath arg                    directly access mongod database files in the 
                                        given path, instead of connecting to a mongod
                                          server - needs to lock the data directory, 
                                        so cannot be used if a mongod is currently 
                                        accessing the same path
      

      It's not clear from this message if the dbpath is meant to be used as the SOURCE or the DESTINATION for the oplog operations.

      First I tried using it as the data source:

      test-tools [master●●] % mongooplog --dbpath /tmp/rstest/data_replset0/db4000 --host localhost:4003
      Thu Aug  2 15:45:43 [tools] need to specify --from
      Thu Aug  2 15:45:43 dbexit: 
      Thu Aug  2 15:45:43 [tools] shutdown: going to close listening sockets...
      Thu Aug  2 15:45:43 [tools] shutdown: going to flush diaglog...
      Thu Aug  2 15:45:43 [tools] shutdown: going to close sockets...
      Thu Aug  2 15:45:43 [tools] shutdown: waiting for fs preallocator...
      Thu Aug  2 15:45:43 [tools] shutdown: closing all files...
      Thu Aug  2 15:45:43 [tools] closeAllFiles() finished
      Thu Aug  2 15:45:43 [tools] shutdown: removing fs lock...
      Thu Aug  2 15:45:43 dbexit: really exiting now
      

      Doesn't work because it seems to still expect a source to be specified with the --from arg.

      I tried with a fresh pair of replsets and tried to use the --dbpath as the destination instead:

      test-tools [master●●] % mongooplog --dbpath /tmp/rstest/data_replset0/db4000 --from localhost:4003
      Thu Aug  2 15:55:56 [tools]   Assertion failure currentClient.get() == 0 src/mongo/db/client.cpp 115
      0x10059855b 0x1000dab26 0x1006bad28 0x10000c230 0x100565d53 0x10000101a 0x100000f94 
       0   mongooplog                          0x000000010059855b _ZN5mongo15printStackTraceERSo + 43
       1   mongooplog                          0x00000001000dab26 _ZN5mongo12verifyFailedEPKcS1_j + 310
       2   mongooplog                          0x00000001006bad28 _ZN5mongo6Client10initThreadEPKcPNS_21AbstractMessagingPortE + 280
       3   mongooplog                          0x000000010000c230 _ZN9OplogTool3runEv + 448
       4   mongooplog                          0x0000000100565d53 _ZN5mongo4Tool4mainEiPPc + 5715
       5   mongooplog                          0x000000010000101a main + 58
       6   mongooplog                          0x0000000100000f94 start + 52
      assertion: 0 assertion src/mongo/db/client.cpp:115
      Thu Aug  2 15:55:56 dbexit: 
      Thu Aug  2 15:55:56 [tools] shutdown: going to close listening sockets...
      Thu Aug  2 15:55:56 [tools] shutdown: going to flush diaglog...
      Thu Aug  2 15:55:56 [tools] shutdown: going to close sockets...
      Thu Aug  2 15:55:56 [tools] shutdown: waiting for fs preallocator...
      Thu Aug  2 15:55:56 [tools] shutdown: closing all files...
      Thu Aug  2 15:55:56 [tools] closeAllFiles() finished
      Thu Aug  2 15:55:56 [tools] shutdown: removing fs lock...
      Thu Aug  2 15:55:56 dbexit: really exiting now
      

            Assignee:
            Unassigned Unassigned
            Reporter:
            mikeo@mongodb.com Michael O'Brien
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: