Hi there,

I am using valgrind to help analyse my MPI program.

I used hdfs file system to read/write data. And if I run the code without
valgrind, it works correctly. However, if I run with valgrind, for example,

*mpirun -np 3 /usr/bin/valgrind --tool=callgrind  ./myprogram /input_file
/output_file*

it returns with following information

=========================================================





























*Exception in thread "main" java.lang.InternalError: processing event:
535548453    at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:506)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at
com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243)
at
com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:347)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:177)    at
org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:1156)
at
org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:1107)
at
org.apache.hadoop.conf.Configuration.getProps(Configuration.java:1053)
at org.apache.hadoop.conf.Configuration.get(Configuration.java:397)    at
org.apache.hadoop.conf.Configuration.getBoolean(Configuration.java:594)
at
org.apache.hadoop.security.SecurityUtil.<clinit>(SecurityUtil.java:67)
at org.apache.hadoop.net.NetUtils.makeSocketAddr(NetUtils.java:188)    at
org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:168)    at
org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:212)
at
org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:99)
at
org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1446)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:67)    at
org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1464)    at
org.apache.hadoop.fs.FileSystem.get(FileSystem.java:263)    at
org.apache.hadoop.fs.FileSystem$1.run(FileSystem.java:118)    at
org.apache.hadoop.fs.FileSystem$1.run(FileSystem.java:116)    at
java.security.AccessController.doPrivileged(Native Method)    at
javax.security.auth.Subject.doAs(Subject.java:415)    at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:116)Call to
org.apache.hadoop.fs.Filesystem::get(URI, Configuration) failed!*

=========================================================

By debugging, I found that the exception happens in hdfsConnect(). But I
don't how to fix it. Could anyone give me some advice, please?

-- 
Best Regards.
---
Xing FENG
PhD Candidate
Database Research Group

School of Computer Science and Engineering
University of New South Wales
NSW 2052, Sydney

Phone: (+61) 413 857 288

Reply via email to