[ https://issues.apache.org/jira/browse/NET-160?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13028112#comment-13028112 ]
Thomas Vanstals commented on NET-160: ------------------------------------- I'm facing the same problem with version 2.2. What information do you need to help solving the problem ? > FTP Client API Hangs - Attached Scenario. > ----------------------------------------- > > Key: NET-160 > URL: https://issues.apache.org/jira/browse/NET-160 > Project: Commons Net > Issue Type: Bug > Components: FTP > Affects Versions: 1.4 > Environment: Suse Enterprise Linux 9.0, Intel > Reporter: Lvenkataraman > Attachments: Util.java, __getReply > > > FTP client hangs with the following error. Here is the truss output. The > client hangs indefinitely and no work is being done other than this error > when you truss the process. I use Java 1.5 to run this. We wrote a > long-running ftp daemon and this happens after 20-23 hours of continuous > running. > Here is the code to pull files from the ftp server. This one lists files that > are received after this particular "incal" time (currently it lists but the > intention is to implement an incremental download). We initially thought > doing periodic noop would keep the client alive by sending dummy commands to > the server. But we found this probelm still occurs. > public void ListIncrementalFiles (String directory, Calendar incal) > { > try > { > FTPFile[] files = listFiles(directory); > > int total_files = 0; > > System.out.println("FileName\tFileSize\t\tDate Time > Stamp"); > for (int i = 0; i < files.length; i++) > { > > > FTPFile file = files[i]; > if ((i % 1000) == 0) > { > System.out.println("noop > occurred at this instance---> " + i + "\n"); > noop(); > } > > if (file.isFile()) > { > Calendar c = > file.getTimestamp(); > > > if (c.after(incal) || > c.equals(incal)) > { > > > System.out.println(file.getName() + "\t" + file.getSize() + "\t\t" + > c.getTime()); > total_files++; > } > } > > } > System.out.println("Total Files in the listing ----> " > + total_files); > } > catch (Exception e) > { > System.out.println("FTP Getfiles exception occured"); > e.printStackTrace(); > } > > } > ---------------------------------------------------------------------------------------------------------------------------------Truss > output begins-------------------------------------------------------- > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /9: lwp_park(0x00000000, 0) (sleeping...) > /3: lwp_cond_wait(0x000B77C0, 0x000B77A8, 0x00000000, 0) (sleeping...) > /8: lwp_cond_wait(0x0014A908, 0x0014A8F0, 0x00000000, 0) (sleeping...) > /10: lwp_cond_wait(0x000366E8, 0x000366D0, 0x00000000, 0) (sleeping...) > /1: pollsys(0x00000000, 0, 0xFFBFEB60, 0x00000000) (sleeping...) > /11: lwp_cond_wait(0x00036778, 0x00036760, 0x00000000, 0) (sleeping...) > /4: lwp_cond_wait(0x000B77C0, 0x000B77A8, 0x00000000, 0) (sleeping...) > /12: lwp_cond_wait(0x00036778, 0x00036760, 0x00000000, 0) (sleeping...) > /2: lwp_cond_wait(0x000B77C0, 0x000B77A8, 0x00000000, 0) (sleeping...) > /7: lwp_cond_wait(0x00149F98, 0x00149F80, 0x00000000, 0) (sleeping...) > /5: lwp_cond_wait(0x000B77C0, 0x000B77A8, 0x00000000, 0) (sleeping...) > /13: lwp_cond_wait(0x00034958, 0x00034940, 0x00000000, 0) (sleeping...) > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /6: lwp_cond_wait(0x00035F08, 0x00035EF0, 0xB477FBE0, 0) Err#62 ETIME > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > /14: pollsys(0x00000000, 0, 0xB3F7FC10, 0x00000000) = 0 > ------------------------------------------------------------------------------------------Truss > output > ends------------------------------------------------------------------------------------------- -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira