[paramiko] paramiko stops responding after huge data is transferred !
Robey Pointer
robey at lag.net
Sat Mar 22 19:06:42 PDT 2008
On 15 Mar 2008, at 6:26, Deepak Rokade wrote:
> Hi All,
> I am using paramiko 1.5.3 in my python application.
> I found that when large data is fetched using paramiko with
> prefetch, deadlock condition occurs.
> I found through paramiko debug level logs, that deadlock occurs when
> paramiko goes for rekeying.
> Below is the paramiko log.
>
> DEB [20080315-18:27:58.843] thr=1 paramiko.transport: Rekeying
> (hit 91 packets, 1051212 bytes received)
>
> Above is the last log I saw after which my application stopped
> responding.
>
> For reproducing deadlock quickly, I had set the low limit for
> REKEY_PACKETS.
> I set the limit as
> REKEY_PACKETS = pow(2, 20)
> REKEY_BYTES = pow(2, 20)
> (In file paramiko/packet.py , class Packetizer)
>
>
> For tackling this problem I close connections periodically.
> Has this problem been solved in later verion of paramiko ?.
>
> I tried paramiko 1.7.1 for short test in which I did not observe
> deadlock condition even after setting REKEY_PACKETS limit.
Sounds like it's fixed, then. Version 1.5.3 is from over 2 years ago,
so a lot has changed, and some of the changed code is related to
prefetch.
Just to be safe, I added some more code to the "renegotiate while
sending large files" test, to make it renegotiate while receiving a
large file too.
If you can reproduce the problem against the current release, please
send me some code to reproduce, and I'll try to figure it out.
Anything you think should be in the unit tests, that isn't, would also
be great. :)
robey
More information about the paramiko
mailing list