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
Python 2.4+ spends too much time in PyEval_EvalFrame w/ xmlrpmclib #45668
Comments
Created a small program using xmlrpclib. When connecting to one url <code> import xmlrpclib
u = 'someuser'
p = 'password'
server_url = 'http://rhn.redhat.com/rpc/api'
server = xmlrpclib.Server(server_url)
session = server.auth.login(u,p)
l = server.channel.listSoftwareChannels(session)
for a in l:
print a['channel_label']
</code> |
I have tested 2.4.4 and 2.5.1 from python.org and both suffer from the |
That changes to ceval should have introduced some kind of XML-RPC (passing in verbose=True to the Server[Proxy] constructor might be good |
Please find the attached ceval.c. This file was generated from oprofile You will find in the oprofile output, from ceval.c, that PyEval_Frame Now I will be the first to admit that I am by no means a C programmer; Please check it out for yourself, using a different xmlrpc server - I |
I don't think ceval is the issue here.
ceval.c is the place where the interpreter executes python code. I suggest you to use the python-level profiler: |
Do you have an example which doesn't require a login? Failing that, Skip |
Can you switch on verbose mode in xmlrpclib, so you can see *where* the Arguing that a hanging Python program must be caused by a bug in the |
Has anybody else tested this against an RPC server that has more than As for the bug, I do not claim there is a bug, I am simply pointing I am looking to turn on verbose mode in xmlrpc. As soon as I do that On Jan 15, 2008 7:05 PM, Fredrik Lundh <report@bugs.python.org> wrote:
|
I have added the verbose=1 option, the processing hangs in the body: where : Is returning the data. Initially it returns data quickly and then slows Here is the sample of the body data... data removed... <body> This information is repeats ~500 times in the server where the program If you require anything further from the verbose output please let me know. |
What is the length of the response? Note that I managed to produce the same kind of output as the one you |
Here is the header information that I get: Then I get addition send followed by more header info: <snip> I am looking for additional Content-Length data. Also, the above was Thank you! |
Some strace data: WORKS: I am still compiling the same data for Python 2.4.3 (#1, Dec 11 2006, |
Please, could you use the python profiler instead? Since most of the #!/usr/bin/env python
import xmlrpclib
import profile
u = 'someuser'
p = 'password'
server_url = 'http://rhn.redhat.com/rpc/api'
def f():
server = xmlrpclib.Server(server_url)
session = server.auth.login(u,p)
l = server.channel.listSoftwareChannels(session)
for a in l:
print a['channel_label']
def g():
try:
f()
except:
pass profile.run("g()") |
Can this ticket be closed? I've still yet to see anything here that |
"Requested info not available", closing this ticket. |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: