New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Infinite loops and threading #373

Merged
merged 8 commits into from Sep 8, 2014

Conversation

Projects
None yet
3 participants
@lndbrg
Contributor

lndbrg commented Aug 15, 2014

No description provided.

@coveralls

This comment has been minimized.

coveralls commented Aug 15, 2014

Coverage Status

Coverage decreased (-0.09%) when pulling 78653dc on lndbrg:infinite-loops-and-threading into 991d56b on paramiko:master.

@lndbrg

This comment has been minimized.

Contributor

lndbrg commented Aug 15, 2014

Wat, coveralls. I added like a million lines of test for a two line change.

@bitprophet

This comment has been minimized.

Member

bitprophet commented Aug 15, 2014

I don't think I've seen coveralls say anything but "coverage decreased (-0.0N%)" for any pull request, ever :( so I already kind of ignore it, sigh. Will dig sometime.


Confirmed that I can run this branch and it appears to fix the issue outlined in #354 using the provided use case, and continues to work OK with the gatewaying mentioned in #252 (which @lndbrg indicated may also have been related-ish to some of his changes).

I can also use this branch without any errors when running a nontrivial Fab task involving various run, sudo, put functions and a nontrivial amount of stdout/stderr streaming.

lndbrg added some commits Aug 15, 2014

Let packetizer handle 0-length sends from channel.
If the channel is closed the send method returs a response length
of 0. This is not handled correctly by the packetizer and puts it
in an infinite loop. (Fixes #156 for real :-)

We make sure we don't do more than 10 iteration on a 0 length respose,
but raise an EOFError.
Add new _send method to reduce code duplication.
This method is the lowest _send related method on Channel and is
the place where we raise a socket is closed Excpetion.
@coveralls

This comment has been minimized.

coveralls commented Aug 15, 2014

Coverage Status

Coverage decreased (-0.11%) when pulling 885fc06 on lndbrg:infinite-loops-and-threading into 991d56b on paramiko:master.

@coveralls

This comment has been minimized.

coveralls commented Aug 15, 2014

Coverage Status

Coverage decreased (-0.08%) when pulling 49ae008 on lndbrg:infinite-loops-and-threading into 991d56b on paramiko:master.

@lndbrg

This comment has been minimized.

Contributor

lndbrg commented Aug 18, 2014

Please note that i updated the branch after your tests @bitprophet if you have time, please test again. :)

@bitprophet

This comment has been minimized.

Member

bitprophet commented Sep 8, 2014

Merged up to latest master, tests run, fabric tests run, fabric integration tests run, and I can run the abovementioned real world task (a Chef running tool at work), all looks OK to me.

@bitprophet bitprophet merged commit 49ae008 into paramiko:master Sep 8, 2014

1 check passed

continuous-integration/travis-ci The Travis CI build passed
Details

bitprophet added a commit that referenced this pull request Sep 8, 2014

@bitprophet bitprophet added the Hangs label Jun 11, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment