Results 1 to 5 of 5
- 10-07-2008, 07:08 PM #1
Member
- Join Date
- Oct 2008
- Posts
- 1
- Rep Power
- 0
data loss in the secure file transfer using java
Hi,
My java Appllication uses the sftp(secure file transfer protocol) for file transferring. when the load is high like 150 GB , data loss occuring for some files especially last chunk of data is missing.
Core file transfer code
while (true)
{
int read = bis.read(buffer); //Reading bytes into the byte array (buffer) from network stream (bis).
if (read==-1) {
break; //Break the loop, if there are no more bytes available in the InputStream.
}
bos.write(buffer,0,read); //Writing the same number of bytes what we read into buffer byte array into OutputStream
complete.update(buffer,0,read); //Giving the same number of bytes what we read above to the checksum calculation.
bytesSoFar += read; //Incrementing the bytes that we have read from the source.
//if the bytes transferred are equal to the source file size
If (bytesSoFar == fileInfo.getFileSize().intValue())
{
// Calculate the file checksum.
// Update DbAuditLog with checksum and no. of bytes read
}
else
{
// Update DbAuditLog with no. of bytes read
}
}
bos.flush();
Please help , why the data loss is happening when the big size files transfer
Note:
1.150 gb not a single file multiple files.
2.SFTP no java specific API, So connection is happening through java .io.sockect connection
Due to data loss, checksum also not correct.
This issue not occurring continuously.. some times whole transfer failing or success.
Is NFS mount plays any role when this occurrence happening .. OS is HP-UX ia64 itanium version.
Now we are observing with glance tool which is provided by hp to analyze system activity
Application is running along with jconsole.
All the transaction are running under multithreaded way.. that means,most of the txns run multi threaded way , few txns run under singel thread. it depends on the threads available in the thread pool.
- 10-08-2008, 09:01 AM #2
You need to make sure you are reading any partially filled last buffer blocks.
SFTP is just SSH + FTP. What is doing your encryption?
How big are these files? Sending things bigger than 2GB can cause all sorts of issues.
- 02-07-2009, 12:39 PM #3
Member
- Join Date
- Mar 2008
- Posts
- 10
- Rep Power
- 0
Try with a working Java SFTP tool
You should make a test with an applet that supports SFTP such as JFileUpload (there is a free full featured trial). If it works then it means that you have a problem in your code.
- 02-07-2009, 08:37 PM #4
Don't know if it will help with your problem, but you should always close you outputstreams:
You should also close your program's inputstream when finished.Java Code:bos.close();
Luck,
CJSLChris S.
Difficult? This is Mission Impossible, not Mission Difficult. Difficult should be easy.
- 02-09-2009, 06:56 AM #5
Senior Member
- Join Date
- Jan 2009
- Posts
- 671
- Rep Power
- 5
Similar Threads
-
Fast Data Transfer 0.9.1
By Java Tip in forum Java SoftwareReplies: 0Last Post: 04-24-2008, 06:41 PM -
Fast Data Transfer 0.8.5
By JavaBean in forum Java SoftwareReplies: 0Last Post: 11-12-2007, 06:11 PM -
Fast Data Transfer 0.6.7
By Jamie in forum Java SoftwareReplies: 0Last Post: 06-14-2007, 02:55 PM -
Fast Data Transfer 0.6.4
By levent in forum Java SoftwareReplies: 0Last Post: 05-21-2007, 10:11 AM -
Fast Data Transfer 0.6.4
By levent in forum Java SoftwareReplies: 0Last Post: 05-20-2007, 08:55 AM


LinkBack URL
About LinkBacks
Reply With Quote
Bookmarks