Skip to content
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

BUG/TST: catch socket.error in py2/3.2 and ConnectionError in py3.3 #3985

Merged
merged 2 commits into from
Jun 26, 2013
Merged

BUG/TST: catch socket.error in py2/3.2 and ConnectionError in py3.3 #3985

merged 2 commits into from
Jun 26, 2013

Conversation

cpcloud
Copy link
Member

@cpcloud cpcloud commented Jun 21, 2013

closes #3982.

@ghost ghost assigned cpcloud Jun 21, 2013
@cpcloud
Copy link
Member Author

cpcloud commented Jun 21, 2013

this passes travis but that doesn't really tell us that much...since the errors from #3982 are occurring intermittently...

@cpcloud
Copy link
Member Author

cpcloud commented Jun 21, 2013

also it skips when i remove my connection...but i'm still not sure if that's enough

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

strange that it only happens on 3.2...trying to think of what itcould be @jreback @jtratner any ideas?
https://travis-ci.org/cpcloud/pandas/jobs/8322345

@jtratner
Copy link
Contributor

Is socket.error a subclass of IOError in 3.2? Wasn't clear on the
resolution to this previously...

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

yep it is.

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

it's possible that this might be the problem and the solution

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

sigh probably a simple context manager will fix this....the resp is not being closed...same for google

@jtratner
Copy link
Contributor

I can write something up this week, do you want me to take it on?

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

no it's fine i can do it, won't take that long. i'll write something on the wiki too showing how to use context managers with resources that don't implement the context manager protocol.

while it may not be too big of a deal to not close a file (or close url resource) when one is working in the shell, it's quite another to leave resources open in library code, especially since python makes it so easy to automatically close a file.

@jtratner
Copy link
Contributor

can you use urlopen in a with statement? If so, that makes it incredibly
simple....

On Sat, Jun 22, 2013 at 11:39 PM, Phillip Cloud notifications@github.comwrote:

no it's fine i can do it, won't take that long. i'll write something on
the wiki too showing how to use context managers with resources that don't
implement the context manager protocol.

while it may not be too big of a deal to not close a file (or close url
resource) when one is working in the shell, it's quite another to leave
resources open in library code, especially since python makes it _so_easy to automatically close a file.


Reply to this email directly or view it on GitHubhttps://github.com//pull/3985#issuecomment-19868544
.

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

Yep but in Python 2 you must use for example, with contextlib.closing(urlopen(url)) as response since url objects don't implement the context manager protocol in Python 2 in Python 3 they work fine with a regular with statement

@jtratner
Copy link
Contributor

good to know - learned something today :)

On Sun, Jun 23, 2013 at 9:29 AM, Phillip Cloud notifications@github.comwrote:

Yep but in Python 2 you must use for example, with
contextlib.closing(urlopen(url)) as response since url objects don't
implement the context manager protocol in Python 2 in Python 3 they work
fine with a regular with statement


Reply to this email directly or view it on GitHubhttps://github.com//pull/3985#issuecomment-19873954
.

@jreback
Copy link
Contributor

jreback commented Jun 23, 2013

this fix the problem?

@cpcloud
Copy link
Member Author

cpcloud commented Jun 23, 2013

close in favor of #4002 .

@cpcloud cpcloud closed this Jun 23, 2013
@jreback
Copy link
Contributor

jreback commented Jun 26, 2013

since you moved your data fixes to 0.13.....any chance of reviving fixing these network test issues? or too much work?

@cpcloud
Copy link
Member Author

cpcloud commented Jun 26, 2013

i could just peel off the commit from the clean up and use that

@jreback
Copy link
Contributor

jreback commented Jun 26, 2013

maybe do that these netwok tests failing too much

@cpcloud cpcloud reopened this Jun 26, 2013
@cpcloud
Copy link
Member Author

cpcloud commented Jun 26, 2013

let me get rid of some of these merge commits

@cpcloud
Copy link
Member Author

cpcloud commented Jun 26, 2013

whoops that zf context won't pass hold on

@cpcloud
Copy link
Member Author

cpcloud commented Jun 26, 2013

no wonder there are all these reset connection errors there are a ton of sockets to yahoo finance left open

@cpcloud
Copy link
Member Author

cpcloud commented Jun 26, 2013

will merge after passing...just added docs

cpcloud added a commit that referenced this pull request Jun 26, 2013
BUG/TST: catch socket.error in py2/3.2 and ConnectionError in py3.3
@cpcloud cpcloud merged commit f09a03c into pandas-dev:master Jun 26, 2013
@cpcloud cpcloud deleted the network-socket-errno-thing branch June 26, 2013 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

yahoo test error connection reset
3 participants