Once relaunch of mongod-3.2.6, the server displayed an empty database.
We have a copy of the data after this launch (with an already empty database).
Although the database looks empty, its size, which it occupies on the disk, has not changed.
Further work with the database is correct relative to its empty state.
Perhaps the previous session was not completed correctly. Its log:
2017-11-28T10:47:42.260+0300 I CONTROL [initandlisten] MongoDB starting : pid=552 port=14077 dbpath=Data 64-bit host=Evgenii
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] db version v3.2.6
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] git version: 05552b562c7a0b3143a729aaa0838e558dc49b25
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1p-fips 9 Jul 2015
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] allocator: tcmalloc
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] modules: none
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] build environment:
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] distmod: 2008plus-ssl
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] distarch: x86_64
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] target_arch: x86_64
2017-11-28T10:47:42.261+0300 I CONTROL [initandlisten] options: { net: { port: 14077 }, storage: { dbPath: "Data", engine: "wiredTiger" }, systemLog: { destination: "file", path: "Data/Logs/logs.2017-11-28T10-47-42" } }
2017-11-28T10:47:42.263+0300 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=4G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-11-28T10:47:42.939+0300 I NETWORK [HostnameCanonicalizationWorker] Starting hostname canonicalization worker
2017-11-28T10:47:42.939+0300 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory 'Data/diagnostic.data'
2017-11-28T10:47:42.940+0300 I NETWORK [initandlisten] waiting for connections on port 14077
2017-11-28T10:47:43.179+0300 I NETWORK [initandlisten] connection accepted from 127.0.0.1:51051 #1 (1 connection now open)
2017-11-28T11:06:19.886+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d18f7f6488f059de0d159') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 102ms
2017-11-28T11:06:19.886+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d18f7f6488f059de0d159') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 103ms
2017-11-28T11:06:20.104+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d18f7f6488f059de0d159') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 113ms
2017-11-28T11:06:20.104+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d18f7f6488f059de0d159') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 113ms
2017-11-28T11:07:08.330+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d1928f6488f059de0d15a') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 112ms
2017-11-28T11:07:08.330+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d1928f6488f059de0d15a') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 112ms
2017-11-28T11:07:08.698+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d1928f6488f059de0d15a') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 108ms
2017-11-28T11:07:08.698+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d1928f6488f059de0d15a') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 108ms
2017-11-28T11:07:09.682+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d1928f6488f059de0d15a') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 107ms
2017-11-28T11:07:09.682+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d1928f6488f059de0d15a') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 107ms
2017-11-28T11:08:27.528+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d1979f6488f059de0d15c') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 103ms
2017-11-28T11:08:27.528+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d1979f6488f059de0d15c') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 103ms
2017-11-28T11:09:33.050+0300 I WRITE [conn1] update case.axio query: { _id: ObjectId('5a1d19b9f6488f059de0d15d') } update: { $push: { data.record: { $each: [] } } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 keyUpdates:0 writeConflicts:0 numYields:1 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } 197ms
2017-11-28T11:09:33.050+0300 I COMMAND [conn1] command case.$cmd command: update { update: "axio", updates: [ { q: { _id: ObjectId('5a1d19b9f6488f059de0d15d') }, u: { $push: { data.record: { $each: [] } } }, multi: false, upsert: false } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:55 locks:{ Global: { acquireCount: { r: 2, w: 2 } }, Database: { acquireCount: { w: 2 } }, Collection: { acquireCount: { w: 2 } } } protocol:op_query 198ms
2017-11-28T11:16:23.332+0300 I COMMAND [conn1] terminating, shutdown command received
2017-11-28T11:16:23.332+0300 I FTDC [conn1] Shutting down full-time diagnostic data capture
2017-11-28T11:16:23.334+0300 I CONTROL [conn1] now exiting
2017-11-28T11:16:23.334+0300 I NETWORK [conn1] shutdown: going to close listening sockets...
2017-11-28T11:16:23.334+0300 I NETWORK [conn1] closing listening socket: 560
2017-11-28T11:16:23.334+0300 I NETWORK [conn1] shutdown: going to flush diaglog...
2017-11-28T11:16:23.334+0300 I NETWORK [conn1] shutdown: going to close sockets...
2017-11-28T11:16:23.334+0300 I STORAGE [conn1] WiredTigerKVEngine shutting down
Running mongod with the --repair key did not succeed:
C:\REPOS\LIBRARIES\mongo-cxx-1.1.2\Win64\exec>mongod.exe --dbpath "C:\Users\Zoloto\AppData\Roaming\P-Art\Database" --port 14077 --storageEngine wiredTiger --repair
2017-12-01T14:00:16.286+0300 I CONTROL [initandlisten] MongoDB starting : pid=15172 port=14077 dbpath=C:\Users\Zoloto\AppData\Roaming\P-Art\Database 64-bit host=ZOLOTOV_PC
2017-12-01T14:00:16.287+0300 I CONTROL [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
2017-12-01T14:00:16.291+0300 I CONTROL [initandlisten] db version v3.2.6
2017-12-01T14:00:16.294+0300 I CONTROL [initandlisten] git version: 05552b562c7a0b3143a729aaa0838e558dc49b25
2017-12-01T14:00:16.294+0300 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1p-fips 9 Jul 2015
2017-12-01T14:00:16.295+0300 I CONTROL [initandlisten] allocator: tcmalloc
2017-12-01T14:00:16.295+0300 I CONTROL [initandlisten] modules: none
2017-12-01T14:00:16.296+0300 I CONTROL [initandlisten] build environment:
2017-12-01T14:00:16.296+0300 I CONTROL [initandlisten] distmod: 2008plus-ssl
2017-12-01T14:00:16.296+0300 I CONTROL [initandlisten] distarch: x86_64
2017-12-01T14:00:16.296+0300 I CONTROL [initandlisten] target_arch: x86_64
2017-12-01T14:00:16.297+0300 I CONTROL [initandlisten] options: { net: { port: 14077 }, repair: true, storage: { dbPath: "C:\Users\Zoloto\AppData\Roaming\P-Art\Database", engine: "wiredTiger" } }
2017-12-01T14:00:16.299+0300 I STORAGE [initandlisten] Detected WT journal files. Running recovery from last checkpoint.
2017-12-01T14:00:16.304+0300 I STORAGE [initandlisten] journal to nojournal transition config: create,cache_size=4G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-12-01T14:00:16.354+0300 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=4G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),,log=(enabled=false),
2017-12-01T14:00:16.385+0300 I STORAGE [initandlisten] Repairing size cache
2017-12-01T14:00:16.387+0300 I STORAGE [initandlisten] Verify succeeded on uri table:sizeStorer. Not salvaging.
2017-12-01T14:00:16.390+0300 I STORAGE [initandlisten] Repairing catalog metadata
2017-12-01T14:00:16.394+0300 I STORAGE [initandlisten] Verify succeeded on uri table:_mdb_catalog. Not salvaging.
2017-12-01T14:00:16.409+0300 I STORAGE [initandlisten] repairDatabase case
2017-12-01T14:00:16.409+0300 I STORAGE [initandlisten] Repairing collection case.settings
2017-12-01T14:00:16.414+0300 I STORAGE [initandlisten] Verify succeeded on uri table:collection-2--1109448600568661957. Not salvaging.
2017-12-01T14:00:16.430+0300 I INDEX [initandlisten] build index on: case.settings properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "case.settings" }
2017-12-01T14:00:16.430+0300 I INDEX [initandlisten] building index using bulk method
2017-12-01T14:00:16.446+0300 I STORAGE [initandlisten] repairDatabase local
2017-12-01T14:00:16.446+0300 I STORAGE [initandlisten] Repairing collection local.startup_log
2017-12-01T14:00:16.451+0300 I STORAGE [initandlisten] Verify succeeded on uri table:collection-0--1109448600568661957. Not salvaging.
2017-12-01T14:00:16.472+0300 I INDEX [initandlisten] build index on: local.startup_log properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "local.startup_log" }
2017-12-01T14:00:16.472+0300 I INDEX [initandlisten] building index using bulk method
2017-12-01T14:00:16.491+0300 I STORAGE [initandlisten] finished checking dbs
2017-12-01T14:00:16.491+0300 I CONTROL [initandlisten] now exiting
2017-12-01T14:00:16.492+0300 I NETWORK [initandlisten] shutdown: going to close listening sockets...
2017-12-01T14:00:16.495+0300 I NETWORK [initandlisten] shutdown: going to flush diaglog...
2017-12-01T14:00:16.495+0300 I NETWORK [initandlisten] shutdown: going to close sockets...
2017-12-01T14:00:16.504+0300 I STORAGE [initandlisten] WiredTigerKVEngine shutting down
2017-12-01T14:00:16.530+0300 I STORAGE [initandlisten] shutdown: removing fs lock...
2017-12-01T14:00:16.531+0300 I CONTROL [initandlisten] dbexit: rc: 0
To restore the data, we built WiredTiger-2.9.3 (with Snappy-1.1.1.8).
We took advice and tried to run wt with the salvage key for each * .wt file.
This also did not succeed:
***** collection-0--1109448600568661957.wt *****
***** collection-0--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-0--4563383296172894413.wt: No such file or directory
***** collection-0--7728738330246642581.wt *****
wt.exe: session.salvage: file:collection-0--7728738330246642581.wt: No such file or directory
***** collection-0-1204684021656353242.wt *****
wt.exe: session.salvage: file:collection-0-1204684021656353242.wt: No such file or directory
***** collection-0-160758265150124333.wt *****
wt.exe: session.salvage: file:collection-0-160758265150124333.wt: No such file or directory
***** collection-0-2369900529422110509.wt *****
wt.exe: session.salvage: file:collection-0-2369900529422110509.wt: No such file or directory
***** collection-0-8225139244052626311.wt *****
wt.exe: session.salvage: file:collection-0-8225139244052626311.wt: No such file or directory
***** collection-11--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-11--4563383296172894413.wt: No such file or directory
***** collection-14--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-14--4563383296172894413.wt: No such file or directory
***** collection-16--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-16--4563383296172894413.wt: No such file or directory
***** collection-18--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-18--4563383296172894413.wt: No such file or directory
***** collection-2--1109448600568661957.wt *****
***** collection-2--4563383296172894413.wt *****
***** collection-20--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-20--4563383296172894413.wt: No such file or directory
***** collection-22--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-22--4563383296172894413.wt: No such file or directory
***** collection-4--4563383296172894413.wt *****
WT_SESSION.salvage 1900
***** collection-6--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-6--4563383296172894413.wt: No such file or directory
***** collection-8--4563383296172894413.wt *****
wt.exe: session.salvage: file:collection-8--4563383296172894413.wt: No such file or directory
***** index-0-3763645043796422516.wt *****
***** index-1--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-1--4563383296172894413.wt: No such file or directory
***** index-1--7728738330246642581.wt *****
wt.exe: session.salvage: file:index-1--7728738330246642581.wt: No such file or directory
***** index-1-1204684021656353242.wt *****
wt.exe: session.salvage: file:index-1-1204684021656353242.wt: No such file or directory
***** index-1-160758265150124333.wt *****
wt.exe: session.salvage: file:index-1-160758265150124333.wt: No such file or directory
***** index-1-2369900529422110509.wt *****
wt.exe: session.salvage: file:index-1-2369900529422110509.wt: No such file or directory
***** index-1-3763645043796422516.wt *****
***** index-1-8225139244052626311.wt *****
wt.exe: session.salvage: file:index-1-8225139244052626311.wt: No such file or directory
***** index-10--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-10--4563383296172894413.wt: No such file or directory
***** index-12--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-12--4563383296172894413.wt: No such file or directory
***** index-13--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-13--4563383296172894413.wt: No such file or directory
***** index-15--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-15--4563383296172894413.wt: No such file or directory
***** index-17--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-17--4563383296172894413.wt: No such file or directory
***** index-19--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-19--4563383296172894413.wt: No such file or directory
***** index-21--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-21--4563383296172894413.wt: No such file or directory
***** index-23--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-23--4563383296172894413.wt: No such file or directory
***** index-3--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-3--4563383296172894413.wt: No such file or directory
***** index-5--4563383296172894413.wt *****
***** index-7--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-7--4563383296172894413.wt: No such file or directory
***** index-9--4563383296172894413.wt *****
wt.exe: session.salvage: file:index-9--4563383296172894413.wt: No such file or directory
***** sizeStorer.wt *****
***** WiredTiger.wt *****
wt.exe: session.salvage: file:WiredTiger.wt: Resource device
***** WiredTigerLAS.wt *****
wt.exe: session.salvage: file:WiredTigerLAS.wt: Resource device
***** _mdb_catalog.wt *****
Is it any way to restore the data?
It seems that only some journal was corrupted, and the data itself remained untouched.
We can send a copy of the data, but we would not like to publish the data publicly.