[
https://issues.apache.org/jira/browse/HADOOP-9182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13551880#comment-13551880
]
dingyichuan commented on HADOOP-9182:
-------------------------------------
Thanks for your replies. I use top command to monitor the memory status when
the program is running. We find the "VIRT" increases every time a new thread
opens a file and never decreases. So we finally solve this problem by using
thread-pool. Maybe the version used in our team is obsolete. It is my fault,
sorry.
> the buffer used in hdfsRead seems leaks when the thread exits
> -------------------------------------------------------------
>
> Key: HADOOP-9182
> URL: https://issues.apache.org/jira/browse/HADOOP-9182
> Project: Hadoop Common
> Issue Type: Bug
> Components: filecache
> Environment: Linux RHEP x64
> Reporter: dingyichuan
>
> I use multi-threads in my c++ program to download 3000 files in HDFS use
> libhdfs. Every thread is created by "pthread_create" to download a file and
> exit. We monitor the memory status when the program is running. It seems
> every thread will create a buffer which size is specified by the buffersize
> parameter in "hdfsOpenFile" function. But when the thread finish the task and
> exit, it doesn't free the buffer. So our program will eventually abort by
> Java's "out of memory" exception. I just don't know how to free the buffer or
> I use these functions in wrong way. Thanks!
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira