Re: Copy large size file takes longer time

vittal <[email protected]> Tue, 3 Nov 2015 17:23:11 -0500
Newsgroups gmane.network.samba.java
Message-ID <CACHNoE9-pSNo1CWGeGgDKshej2vmTVKzFNfcX8c9mR_2Hqz0CQ@mail.gmail.com>
--001a113a5f06cf38ac0523aa56e7
Content-Type: text/plain; charset=UTF-8

If we map source drive (\\xxx.xx.xx.xx\abcd95\D\NJ$) from target machine
(aaaaaa.bbb.ccc), using window copy option transfer is quick 160MB takes 3
sec. Whereas this functionality we are doing from code implemented using
JAVA API with SAMBA protocol (jcifs-1.3.17.jar) takes longer time. This
implementation been working fine 8+ years, no change in implementation,
since recently performance degraded, transfer take 40+ minutes, sometime
transfer fails. Is it some would have changed on samba
server/configuration?, please advise.

On Mon, Nov 2, 2015 at 9:10 PM, vittal <[email protected]> wrote:

> Hi All,
> I would like to have advice on multiple issues, code snippet java code.
>
> void test(){
> SmbFile sFile = null;
> NtlmPasswordAuthentication auth = new
> NtlmPasswordAuthentication(activeUserDomain, activeUserID, activePwd);
> sFile = new SmbFile("smb:"+absoluteFilePath.replaceAll("\\\\", "/"), auth);
>
> File inFile = new File(tempZipDir,zipFileName);
> inFile.createNewFile();
> DataOutputStream outZ = new DataOutputStream(new FileOutputStream(inFile));
> InputStream inZ = sFile.getInputStream();
> copyStreams(inZ,outZ);
> }
>
> private static final void copyStreams ( InputStream in, OutputStream out )
> throws IOException
>     {
>      byte [  ]  buffer = new byte[1024];
>      int len;
>
>
>      while (  ( len = in.read(buffer)) >= 0 )  {
>        out.write( buffer, 0, len ) ;
>      }
>
>      in.close() ;
>      out.close() ;
>     }
>
> 1. Above snippet of code setup locally, worked for sometime, once I got
> connection time error, since than always  throws  below exception, similar
> behavior in my secondary machine as well, please advice, what might causing?
>
> java.net.ConnectException: Connection timed out: connect
>  at java.net.DualStackPlainSocketImpl.connect0(Native Method)
>  at
> java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
>  at
> java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
>  at
> java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
>  at
> java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
>  at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
>  at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
>  at java.net.Socket.connect(Socket.java:579)
>  at java.net.Socket.connect(Socket.java:528)
>  at java.net.Socket.<init>(Socket.java:425)
>  at java.net.Socket.<init>(Socket.java:208)
>  at jcifs.smb.SmbTransport.ssn139(SmbTransport.java:226)
>  at jcifs.smb.SmbTransport.negotiate(SmbTransport.java:288)
>  at jcifs.smb.SmbTransport.doConnect(SmbTransport.java:353)
>  at jcifs.util.transport.Transport.run(Transport.java:240)
>  at java.lang.Thread.run(Thread.java:745
>
> 2. I am very new to smb implementation, I am trying to trouble shoot
> performance issue on existing implementation, same code have been working
> for years i.e. to copy zip file(3KB to 800MB) from samba server to
> appserver but since recent time copy function takes long time for a give
> file, please advice what might cause?
>
>
> --
> Regards
> ---------------------------------------
> Vittal
>



-- 
Regards
---------------------------------------
M.Vittal Reddy

--001a113a5f06cf38ac0523aa56e7
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div id=3D"3047479">If we map source drive (\\xxx.xx.xx.xx=
\abcd95\D\NJ$) from target machine (aaaaaa.bbb.ccc), using window copy opti=
on transfer is quick 160MB takes 3 sec.  Whereas this functionality we are =
doing from code implemented using JAVA API with SAMBA protocol (jcifs-1.3.1=
7.jar) takes longer time.  This implementation been working fine 8+ years, =
no change in implementation, since recently performance degraded, transfer =
take 40+ minutes, sometime transfer fails.  Is it some would have changed o=
n samba server/configuration?, please advise.</div></div><div class=3D"gmai=
l_extra"><br><div class=3D"gmail_quote">On Mon, Nov 2, 2015 at 9:10 PM, vit=
tal <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" target=
=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;pa=
dding-left:1ex"><div dir=3D"ltr"><p>Hi All,<br>I would like to have advice =
on multiple issues, code snippet java code.</p><p>void test(){<br>SmbFile s=
File =3D null;<br>NtlmPasswordAuthentication auth =3D new NtlmPasswordAuthe=
ntication(activeUserDomain, activeUserID, activePwd);<br>sFile =3D new SmbF=
ile(&quot;smb:&quot;+absoluteFilePath.replaceAll(&quot;\\\\&quot;, &quot;/&=
quot;), auth);</p><p>File inFile =3D new File(tempZipDir,zipFileName);<br>i=
nFile.createNewFile();<br>DataOutputStream outZ =3D new DataOutputStream(ne=
w FileOutputStream(inFile));<br>InputStream inZ =3D sFile.getInputStream();=
<br>copyStreams(inZ,outZ);<br>}</p><p>private static final void copyStreams=
 ( InputStream in, OutputStream out ) throws IOException <br>=C2=A0=C2=A0=
=C2=A0 {=C2=A0 <br>=C2=A0=C2=A0=C2=A0=C2=A0 byte [=C2=A0 ]=C2=A0 buffer =3D=
 new byte[1024]; <br>=C2=A0=C2=A0=C2=A0=C2=A0 int len; <br>=C2=A0 <br>=C2=
=A0 <br>=C2=A0=C2=A0=C2=A0=C2=A0 while (=C2=A0 ( len =3D in.read(buffer)) &=
gt;=3D 0 )=C2=A0 {<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 out.write( buffe=
r, 0, len ) ; <br>=C2=A0=C2=A0=C2=A0=C2=A0 }<br>=C2=A0 <br>=C2=A0=C2=A0=C2=
=A0=C2=A0 in.close() ; <br>=C2=A0=C2=A0=C2=A0=C2=A0 out.close() ; <br>=C2=
=A0=C2=A0=C2=A0 }=C2=A0 </p><p>1. Above snippet of code setup locally, work=
ed for sometime,=C2=A0once I got connection time error, since than always=
=C2=A0 throws=C2=A0 below exception, similar behavior in my secondary machi=
ne as well, please advice, what might causing?</p><p>java.net.ConnectExcept=
ion: Connection timed out: connect<br>=C2=A0at java.net.DualStackPlainSocke=
tImpl.connect0(Native Method)<br>=C2=A0at java.net.DualStackPlainSocketImpl=
.socketConnect(DualStackPlainSocketImpl.java:79)<br>=C2=A0at java.net.Abstr=
actPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)<br>=C2=A0at =
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.j=
ava:200)<br>=C2=A0at java.net.AbstractPlainSocketImpl.connect(AbstractPlain=
SocketImpl.java:182)<br>=C2=A0at java.net.PlainSocketImpl.connect(PlainSock=
etImpl.java:172)<br>=C2=A0at java.net.SocksSocketImpl.connect(SocksSocketIm=
pl.java:392)<br>=C2=A0at java.net.Socket.connect(Socket.java:579)<br>=C2=A0=
at java.net.Socket.connect(Socket.java:528)<br>=C2=A0at java.net.Socket.&lt=
;init&gt;(Socket.java:425)<br>=C2=A0at java.net.Socket.&lt;init&gt;(Socket.=
java:208)<br>=C2=A0at jcifs.smb.SmbTransport.ssn139(SmbTransport.java:226)<=
br>=C2=A0at jcifs.smb.SmbTransport.negotiate(SmbTransport.java:288)<br>=C2=
=A0at jcifs.smb.SmbTransport.doConnect(SmbTransport.java:353)<br>=C2=A0at j=
cifs.util.transport.Transport.run(Transport.java:240)<br>=C2=A0at java.lang=
.Thread.run(Thread.java:745</p><p>2. I am very new to smb implementation,=
=C2=A0I am trying to trouble shoot performance issue on existing implementa=
tion, same code have been working for years i.e. to copy zip file(3KB to 80=
0MB) from samba server to appserver but since recent time copy function tak=
es long time for a give file, please advice what might cause?<span class=3D=
"HOEnZb"><font color=3D"#888888"><br><br clear=3D"all"><br>-- <br></font></=
span></p><span class=3D"HOEnZb"><font color=3D"#888888"><div>Regards<br>---=
------------------------------------<br>Vittal<br></div>
</font></span></div>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature">Regards<br>---------------------------------------<br>M.Vittal Redd=
y<br></div>
</div>

--001a113a5f06cf38ac0523aa56e7--