我有一個最近進行了一些重組。基本上在某些已修復的節點上存在一些丟失的磁盤。在此之後,在HDFS path
上找不到配置單元目錄。但是,配置單元表和數據完好無損,可以從配置單元CLI
中查看錶格。配置單元表存在但找不到目錄
我試過fsck
哪個運行沒有任何問題,然後執行了gfsck
。
下面是gfsck的輸出:
$ sudo /opt/mapr/bin/gfsck -r cluster=tmcluster1 rwvolume=users
Starting GlobalFsck:
clear-mode = false
debug-mode = false
dbcheck-mode = false
repair-mode = true
assume-yes-mode = false
cluster = tmcluster1
rw-volume-name = users
snapshot-name = null
snapshot-id = 0
user-id = 0
group-id = 0
get volume properties ...
put volume users in global-fsck mode ...
get snapshot list for volume users ...
starting phase one (get containers) for volume users(31225146) ...
got volume containers map
done phase one
starting phase two (get inodes) for volume users(31225146) ...
java.lang.Exception: ContainerGetInodes RPC retry 11
at com.mapr.fs.globalfsck.PhaseTwo$PhaseTwoThread.getInodesOfContainer(PhaseTwo.java:238)
at com.mapr.fs.globalfsck.PhaseTwo$PhaseTwoThread.run(PhaseTwo.java:154)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
在蜂房,我只能看到表,結構等我不能解僱任何其他DDL
。例如一個表上的正常計數給出了以下錯誤:
hive> select count(1) from table1;
2015-08-20 21:10:13,4261 ERROR JniCommon fs/client/fileclient/cc/jni_MapRClient.cc:1306 Thread: 27514 mkdirs failed for /user/mapr/tmp/hive/hive_2015-08-20_21-10-13_254_31142713538709, error 11
FAILED: RuntimeException java.io.IOException: Error: Resource temporarily unavailable(11), file: hive_2015-08-20_21-10-13_254_3114271353870903660-1, user name: mapr, ID: 5000
這裏只有只有一個用戶,'mapr'
,對蜂巢表上執行所有操作。
有人對此有何看法?
在此先感謝。
謝謝Debjit。我已經嘗試了metastore重新啓動,但這並沒有解決我的問題。掛載了hive表的掛載似乎在目錄結構中顯示爲文件而不是目錄。我做了一個fsck的那個目錄名稱,並以某種方式解決了這個問題:) 我讀了一下,並得到了一個想法,有時由於壞扇區,它發生了一個特定的內存段不聯機,你必須多次使用fsck來實現這一點。 感謝您的回覆。 – knowone