I have noticed that "pydoc -k ." hangs on my system.
This method is used by vim-ref (https://github.com/thinca/vim-ref/) to get a list of all entries.
With `strace -f`, this is where it hangs:
[pid 14429] access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) [pid 14429] open("/usr/lib/x86_64-linux-gnu/libatspi.so.0", O_RDONLY|O_CLOEXEC) = 17 [pid 14429] read(17, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\332\0\0\0\0\0\0"..., 832) = 832 [pid 14429] fstat(17, {st_mode=S_IFREG|0644, st_size=178328, ...}) = 0 [pid 14429] mmap(NULL, 2274208, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 17, 0) = 0x7f6ebbbcc000 [pid 14429] mprotect(0x7f6ebbbf4000, 2097152, PROT_NONE) = 0 [pid 14429] mmap(0x7f6ebbdf4000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 17, 0x28000) = 0x7f6ebbdf4000 [pid 14429] close(17) = 0 [pid 14429] mprotect(0x7f6ebbdf4000, 12288, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ec05eb000, 8192, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ebbffb000, 4096, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ec03cd000, 81920, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ec0816000, 4096, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ec0a1f000, 8192, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ec0cb1000, 16384, PROT_READ) = 0 [pid 14429] mprotect(0x7f6ec137d000, 32768, PROT_READ) = 0 [pid 14429] munmap(0x7f6ee9dd0000, 183571) = 0 [pid 14429] stat("libgdk-3.so.0", 0x7fff3ac35030) = -1 ENOENT (No such file or directory) [pid 14429] stat("libgdk-3.so.0.so", 0x7fff3ac35030) = -1 ENOENT (No such file or directory) [pid 14429] stat("libgdk-3.so.0.la", 0x7fff3ac35030) = -1 ENOENT (No such file or directory) [pid 14429] openat(AT_FDCWD, "/usr/lib/girepository-1.0", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 17 [pid 14429] getdents(17, /* 117 entries */, 32768) = 4952 [pid 14429] open("/usr/lib/girepository-1.0/Atk-1.0.typelib", O_RDONLY) = 18 [pid 14429] fstat(18, {st_mode=S_IFREG|0644, st_size=65276, ...}) = 0 [pid 14429] mmap(NULL, 65276, PROT_READ, MAP_PRIVATE, 18, 0) = 0x7f6ee9ded000 [pid 14429] close(18) = 0 [pid 14429] getdents(17, /* 0 entries */, 32768) = 0 [pid 14429] close(17) = 0 [pid 14429] munmap(0x7f6ee9ded000, 65276) = 0 [pid 14429] stat("/usr/lib/python2.7/dist-packages/gi/overrides/Atk", 0x7fff3ac32ee0) = -1 ENOENT (No such file or directory) [pid 14429] open("/usr/lib/python2.7/dist-packages/gi/overrides/Atk.x86_64-linux-gnu.so", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 14429] open("/usr/lib/python2.7/dist-packages/gi/overrides/Atk.so", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 14429] open("/usr/lib/python2.7/dist-packages/gi/overrides/Atkmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 14429] open("/usr/lib/python2.7/dist-packages/gi/overrides/Atk.py", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 14429] open("/usr/lib/python2.7/dist-packages/gi/overrides/Atk.pyc", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 14429] stat("libatk-1.0.so.0", 0x7fff3ac34030) = -1 ENOENT (No such file or directory) [pid 14429] stat("libatk-1.0.so.0.so", 0x7fff3ac34030) = -1 ENOENT (No such file or directory) [pid 14429] stat("libatk-1.0.so.0.la", 0x7fff3ac34030) = -1 ENOENT (No such file or directory) [pid 14429] futex(0x42ff0a4, FUTEX_WAIT_PRIVATE, 1, NULL
ProblemType: Bug DistroRelease: Ubuntu 13.10 Package: python2.7 2.7.5-8ubuntu3 ProcVersionSignature: Ubuntu 3.11.0-15.25-generic 3.11.10 Uname: Linux 3.11.0-15-generic x86_64 ApportVersion: 2.12.5-0ubuntu2.2 Architecture: amd64 Date: Fri Feb 14 08:11:08 2014 InstallationDate: Installed on 2012-05-28 (626 days ago) InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120425) MarkForUpload: True SourcePackage: python2.7 UpgradeStatus: Upgraded to saucy on 2013-10-08 (128 days ago)
I have noticed that "pydoc -k ." hangs on my system.
This method is used by vim-ref (https:/ /github. com/thinca/ vim-ref/) to get a list of all entries.
With `strace -f`, this is where it hangs:
[pid 14429] access( "/etc/ld. so.nohwcap" , F_OK) = -1 ENOENT (No such file or directory) usr/lib/ x86_64- linux-gnu/ libatspi. so.0", O_RDONLY|O_CLOEXEC) = 17 2\1\1\0\ 0\0\0\0\ 0\0\0\0\ 3\0>\0\ 1\0\0\0\ 20\332\ 0\0\0\0\ 0\0"... , 832) = 832 S_IFREG| 0644, st_size=178328, ...}) = 0 PROT_EXEC, MAP_PRIVATE| MAP_DENYWRITE, 17, 0) = 0x7f6ebbbcc000 0x7f6ebbbf4000, 2097152, PROT_NONE) = 0 4000, 16384, PROT_READ| PROT_WRITE, MAP_PRIVATE| MAP_FIXED| MAP_DENYWRITE, 17, 0x28000) = 0x7f6ebbdf4000 0x7f6ebbdf4000, 12288, PROT_READ) = 0 0x7f6ec05eb000, 8192, PROT_READ) = 0 0x7f6ebbffb000, 4096, PROT_READ) = 0 0x7f6ec03cd000, 81920, PROT_READ) = 0 0x7f6ec0816000, 4096, PROT_READ) = 0 0x7f6ec0a1f000, 8192, PROT_READ) = 0 0x7f6ec0cb1000, 16384, PROT_READ) = 0 0x7f6ec137d000, 32768, PROT_READ) = 0 0x7f6ee9dd0000, 183571) = 0 3.so.0" , 0x7fff3ac35030) = -1 ENOENT (No such file or directory) 3.so.0. so", 0x7fff3ac35030) = -1 ENOENT (No such file or directory) 3.so.0. la", 0x7fff3ac35030) = -1 ENOENT (No such file or directory) girepository- 1.0", O_RDONLY| O_NONBLOCK| O_DIRECTORY| O_CLOEXEC) = 17 usr/lib/ girepository- 1.0/Atk- 1.0.typelib" , O_RDONLY) = 18 S_IFREG| 0644, st_size=65276, ...}) = 0 0x7f6ee9ded000, 65276) = 0 usr/lib/ python2. 7/dist- packages/ gi/overrides/ Atk", 0x7fff3ac32ee0) = -1 ENOENT (No such file or directory) usr/lib/ python2. 7/dist- packages/ gi/overrides/ Atk.x86_ 64-linux- gnu.so" , O_RDONLY) = -1 ENOENT (No such file or directory) usr/lib/ python2. 7/dist- packages/ gi/overrides/ Atk.so" , O_RDONLY) = -1 ENOENT (No such file or directory) usr/lib/ python2. 7/dist- packages/ gi/overrides/ Atkmodule. so", O_RDONLY) = -1 ENOENT (No such file or directory) usr/lib/ python2. 7/dist- packages/ gi/overrides/ Atk.py" , O_RDONLY) = -1 ENOENT (No such file or directory) usr/lib/ python2. 7/dist- packages/ gi/overrides/ Atk.pyc" , O_RDONLY) = -1 ENOENT (No such file or directory) 1.0.so. 0", 0x7fff3ac34030) = -1 ENOENT (No such file or directory) 1.0.so. 0.so", 0x7fff3ac34030) = -1 ENOENT (No such file or directory) 1.0.so. 0.la", 0x7fff3ac34030) = -1 ENOENT (No such file or directory)
[pid 14429] open("/
[pid 14429] read(17, "\177ELF\
[pid 14429] fstat(17, {st_mode=
[pid 14429] mmap(NULL, 2274208, PROT_READ|
[pid 14429] mprotect(
[pid 14429] mmap(0x7f6ebbdf
[pid 14429] close(17) = 0
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] mprotect(
[pid 14429] munmap(
[pid 14429] stat("libgdk-
[pid 14429] stat("libgdk-
[pid 14429] stat("libgdk-
[pid 14429] openat(AT_FDCWD, "/usr/lib/
[pid 14429] getdents(17, /* 117 entries */, 32768) = 4952
[pid 14429] open("/
[pid 14429] fstat(18, {st_mode=
[pid 14429] mmap(NULL, 65276, PROT_READ, MAP_PRIVATE, 18, 0) = 0x7f6ee9ded000
[pid 14429] close(18) = 0
[pid 14429] getdents(17, /* 0 entries */, 32768) = 0
[pid 14429] close(17) = 0
[pid 14429] munmap(
[pid 14429] stat("/
[pid 14429] open("/
[pid 14429] open("/
[pid 14429] open("/
[pid 14429] open("/
[pid 14429] open("/
[pid 14429] stat("libatk-
[pid 14429] stat("libatk-
[pid 14429] stat("libatk-
[pid 14429] futex(0x42ff0a4, FUTEX_WAIT_PRIVATE, 1, NULL
ProblemType: Bug ature: Ubuntu 3.11.0- 15.25-generic 3.11.10
DistroRelease: Ubuntu 13.10
Package: python2.7 2.7.5-8ubuntu3
ProcVersionSign
Uname: Linux 3.11.0-15-generic x86_64
ApportVersion: 2.12.5-0ubuntu2.2
Architecture: amd64
Date: Fri Feb 14 08:11:08 2014
InstallationDate: Installed on 2012-05-28 (626 days ago)
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120425)
MarkForUpload: True
SourcePackage: python2.7
UpgradeStatus: Upgraded to saucy on 2013-10-08 (128 days ago)