Esta es una pregunta general acerca de las excepciones Java EOF, así como de la excepción EOF de Hadoop, que está relacionada con la interoperabilidad de jar. Los comentarios y respuestas sobre cualquier tema son aceptables.¿Cuál es el significado de las excepciones de EOF en las conexiones de hadoop namenode desde hbase/filesystem?
Antecedentes
estoy observando algunos temas que discuten una excepción críptica, que es en última instancia, causada por un método "readInt". Esta excepción parece tener algunas implicaciones genéricas que son independientes de hadoop, pero en última instancia, es causada por la interoperabilidad de los frascos de Hadoop.
En mi caso, lo obtengo cuando intento crear un nuevo objeto FileSystem en hadoop, en java.
Pregunta
Mi pregunta es: ¿qué está sucediendo y por qué la lectura de un entero una excepción EOF? ¿A qué "Archivo" se refiere esta excepción EOF, y por qué se lanzaría tal excepción si dos jarras no son capaces de interoperar?
En segundo lugar, también me gustaría saber cómo solucionar este error para que pueda conectarse y lectura/escritura hadoops sistema de archivos mediante el protocolo hdfs con la API de Java, de forma remota ....
java.io.IOException: Call to /10.0.1.37:50070 failed on local exception: java.io.EOFException at org.apache.hadoop.ipc.Client.wrapException(Client.java:1139) at org.apache.hadoop.ipc.Client.call(Client.java:1107) at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:226) at $Proxy0.getProtocolVersion(Unknown Source) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:398) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:384) at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:111) at org.apache.hadoop.hdfs.DFSClient.(DFSClient.java:213) at org.apache.hadoop.hdfs.DFSClient.(DFSClient.java:180) at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:89) at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1514) at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:67) at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:1548) at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1530) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:228) at sb.HadoopRemote.main(HadoopRemote.java:35) Caused by: java.io.EOFException at java.io.DataInputStream.readInt(DataInputStream.java:375) at org.apache.hadoop.ipc.Client$Connection.receiveResponse(Client.java:819) at org.apache.hadoop.ipc.Client$Connection.run(Client.java:720)
También podría significar otras cosas ... La excepción EOF es bastante genérica. – jayunit100
lo siento, ¿qué quiere decir servir a 0.0.0.0. ¿Podría por favor documentar el par de prop de nombre/valor de su configuración? – hba
¿qué quiere decir con "servir a 0.0.0.0"? El archivo core-site.sh tiene la propiedad ' fs.default.name hdfs: // localhost: 9000/ '. Cambiar esta configuración de 'localhost' a' 0.0.0.0' no resuelve el problema. –
nikk