commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lvenkataraman (JIRA)" <j...@apache.org>
Subject [jira] Created: (NET-160) FTP Client API Hangs - Attached Scenario.
Date Wed, 09 May 2007 15:03:15 GMT
FTP Client API Hangs - Attached Scenario.
-----------------------------------------

                 Key: NET-160
                 URL: https://issues.apache.org/jira/browse/NET-160
             Project: Commons Net
          Issue Type: Bug
    Affects Versions: 1.4
         Environment: Suse Enterprise Linux 9.0, Intel
            Reporter: Lvenkataraman


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.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message