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
test_list uses unreasonable amounts of memory on 64-bit Linux #47357
Comments
[tony@gossamer Python-2.5.1]$ ./configure [tony@gossamer bin]$ file python |
How do you know that there is a memory leak? |
Here is the story, sorry I skipped it before- I was at work then. I was doing the basic build-from-source on RHEL (Centos) Linux, because I tried 2.5.2 because it was the latest + greatest. When I ran "make Then I tried python 2.5.1, built exactly the same way, and make test |
And make is definitely using gcc, not something else.
|
Are you willing to debug this? Otherwise, I'll have to close this as |
Python-2.5.2]$ file python [tony@hathi Python-2.5.2]$ gcc --version [tony@hathi Python-2.5.2]$ cat /etc/redhat-release[tony@hathi CentOS [tony@hathi Python-2.5.2]$ uname -a (after make test) (another window, just before I dumped it) PID USER PR NI %CPU TIME+ %MEM VIRT RES SHR S COMMAND |
Run "python Lib/test/test_lists.py" separately, and find out which |
make test not only fails "test_list", it also fails "test_tuple" and |
in test_list.py, the following shows where it hit the memory leak: [tony@hathi Python-2.5.2]$ =========== [tony@hathi Python-2.5.2]$ =========== [tony@hathi Python-2.5.2]$ ========== I commented out the following methods and reran the above tests. When I re-ran the three tests (test_list, test_tuple, test_userlist), (test_list) (test_tuple) (test_userlist) That is all the info I have time to get right now. If I get time later |
tried again with No change But I noticed this when it recompiled. Maybe it is related. gcc -pthread -c -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall (code fragment)
|
This compile complaint was definitely introduced in 2.5.2 by source However, replacing the 2.5.2 version of obmalloc.c with the 2.5.1 |
This appears to be the same issue as in: The failing test appears to be test_bigrepeat: def test_bigrepeat(self):
x = self.type2test([0])
x *= 2**16
self.assertRaises(MemoryError, x.__mul__, 2**16)
if hasattr(x, '__imul__'):
self.assertRaises(MemoryError, x.__imul__, 2**16) I am experiencing the same symptoms with 64-bit builds on Solaris10 on In other words Python appears to be working as it should. In my case I |
Ok, so it seems there is no memory leak. Changing the title accordingly. |
Apparently this has been fixed as part of r65335 ("Security patches from |
It worked- I took a patch of r65334, as and applied that patch ONLY to a clean release 2.5.2 source, ignoring Now, make test runs all the way through with no difficulty. Thanks, everyone. I consider this closed. Maintainer, please dispose |
It looks like I made a dupe at http://bugs.python.org/issue3625, where I |
Thanks, Tony! |
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: