天天看點

IoTDB 更新時 flush 之後還有 wal 目錄,無法啟動

現象

更新版本時出現以下日志,并且停止啟動。

原理

為了簡化更新流程,在更新大版本時,需要先 flush 之後再更新,flush 會把記憶體資料持久化,并且将檔案封口,并且把記憶體資料對應的 wal 删掉。

新版本啟動時會檢查,如果有 wal,先不啟動,提示停止寫入之後執行 flush。

解決

(1)不确定有沒有寫入的,可以把 iotdb-engine.properties 裡的 6667 換個端口啟動,一定就沒有寫入了,然後執行 flush。

(2)如果确定停止寫入了,那有可能 wal 删除失敗了,flush 完直接把 data/wal 目錄移走,啟動就行了。