-
Type: Bug
-
Resolution: Duplicate
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage NYC 2018-11-05
In certain corruption scenarios, __wt_txn_recover can return WT_NOTFOUND and results in the inability to attempt a salvage.
Cases that I am aware of in v4.0. I was able to obtain these stacktraces by starting mongod on .wt and .turtle metadata files provided by a customer with data corruption.
When log files are missing:
__wt_log_scan()
#0 __wt_log_scan (session=0x5555594478a0, lsnp=lsnp@entry=0x55555cb2d010, flags=flags@entry=0, func=func@entry=0x5555560bce30 <__txn_log_recover>, cookie=cookie@entry=0x7fffffffa850) at src/third_party/wiredtiger/src/log/log.c:2290 #1 0x00005555560be3b7 in __wt_txn_recover (session=0x5555594478a0, session@entry=0x555559447000) at src/third_party/wiredtiger/src/txn/txn_recover.c:621 #2 0x0000555556048f57 in __wt_connection_workers (session=session@entry=0x555559447000, cfg=cfg@entry=0x7fffffffaac0) at src/third_party/wiredtiger/src/conn/conn_open.c:225 #3 0x0000555556045b83 in wiredtiger_open (home=<optimized out>, event_handler=event_handler@entry=0x55555940db18, config=<optimized out>, connectionp=connectionp@entry=0x55555940db08) at src/third_party/wiredtiger/src/conn/conn_api.c:2761 #4 0x000055555600b803 in mongo::WiredTigerKVEngine::_openWiredTiger (this=this@entry=0x55555940db00, path="/home/louis/Downloads/SERVER-37249/tmp", wtOpenConfig="create,cache_size=31631M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close"...) at src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp:605
Even when --nojournal is used, WT_NOTFOUND is still returned
__recovery_file_scan()
#0 __recovery_file_scan (r=r@entry=0x7fffffffa820) at src/third_party/wiredtiger/src/txn/txn_recover.c:507 #1 0x00005555560be3f0 in __wt_txn_recover (session=0x5555594478a0, session@entry=0x555559447000) at src/third_party/wiredtiger/src/txn/txn_recover.c:574 #2 0x0000555556048f57 in __wt_connection_workers (session=session@entry=0x555559447000, cfg=cfg@entry=0x7fffffffaa90) at src/third_party/wiredtiger/src/conn/conn_open.c:225 #3 0x0000555556045b83 in wiredtiger_open (home=<optimized out>, event_handler=event_handler@entry=0x55555940db18, config=<optimized out>, connectionp=connectionp@entry=0x55555940db08) at src/third_party/wiredtiger/src/conn/conn_api.c:2761 #4 0x000055555600b803 in mongo::WiredTigerKVEngine::_openWiredTiger (this=this@entry=0x55555940db00, path="/home/louis/Downloads/SERVER-37249/tmp", wtOpenConfig="create,cache_size=31631M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close"...) at src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp:605 #5 0x00005555560118b6 in mongo::WiredTigerKVEngine::WiredTigerKVEngine (this=0x55555940db00, canonicalName=..., path="/home/louis/Downloads/SERVER-37249/tmp", cs=<optimized out>, extraOpenOptions=..., cacheSizeMB=<optimized out>, durable=false, ephemeral=false, repair=true, readOnly=false) at src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp:520
- duplicates
-
WT-4345 Set corruption and return salvage on facing a missing log file
- Closed