man incredibly slow because it scans for share directory in PATH??

Riedel,Till (TM) till.riedel@kit.edu
Sun Jun 12 17:18:00 GMT 2016


 > You have lots of duplicated, obsolete and overlapping paths in your 
%PATH%.
 > I suggest you start from some homecleaning.
 > Not to mention strange ones, like "/".
Thx alot!
I know that my path is messy, but having "/" in the path should not be 
all too fatal.
Furthermore, I probably did not set any of those strange paths myself 
(this is afterall Windows ;) ).
@Eliot: Good idea to set MANPATH!
 >MANPATH=/usr/share/man PATH="/usr/bin:/foo" strace man bar |grep 
'foo/share'
returns nothing and fixes the issue!
IMHO at least in Windows/Cygwin creating MANPATH from PATH makes no 
sense! (although I now get the idea what was the rationell!) Reasonably 
setting MANPATH should IMHO be a default...
BR
Till
Am 6/12/2016 um 12:49 PM schrieb Andrey Repin:
> Greetings, Riedel,Till (TM)!
>>> I traced down my problem with really slow man page views this:
>>> {{{
>> >>PATH="/usr/bin:/foo" strace man bar |grep 'foo/share'
>>> }}}
>>> I am getting this:
>>> {{{
>>> 13 39756 [main] man 6688 normalize_posix_path: src /foo/share/man
>> 16 39772 [main] man 6688 normalize_posix_path: /foo/share/man =
>> normalize_posix_path (/foo/share/man)
>> 13 39785 [main] man 6688 mount_info::conv_to_win32_path:
>> conv_to_win32_path (/foo/share/man)
>> 12 39810 [main] man 6688 mount_info::conv_to_win32_path: src_path
>> /foo/share/man, dst C:\tools\cygwin\foo\share\man, flags 0x3000A, rc 0
>> 16 39912 [main] man 6688 mount_info::conv_to_win32_path:
>> conv_to_win32_path (/foo/share)
>> 14 39942 [main] man 6688 mount_info::conv_to_win32_path: src_path
>> /foo/share, dst C:\tools\cygwin\foo\share, flags 0x3000A, rc 0
>>> }}}
>>> If my PATH is the real one this goes on forever, and generates some
>> problems,like:
>> You have lots of duplicated, obsolete and overlapping paths in your %PATH%.
> I suggest you start from some homecleaning.
> Not to mention strange ones, like "/".
>>> {{{
>> >>time man bar
>> No manual entry for bar
>>> real 0m23.650s
>> user 0m0.000s
>> sys 0m0.108s
>>> hanging e.g. on
>>> 20 2449004 [main] man 8124 mount_info::conv_to_win32_path: src_path
>> //share/man, dst \\share\man, flags 0x4022, rc 0
>>> }}}
>>> VS.
>>> {{{
>> >>PATH=/usr/bin/ bash -c "time man bar"
>> No manual entry for bar
>>> real 0m0.082s
>> user 0m0.031s
>> sys 0m0.045s
>>> }}}
>>> Any ideas why man does look for "share" in the whole path? Tbh I haven't
>> looked at the man source code. Thx in advance!
>>
-- 
KIT- Research University in the Helmholtz Association
Dr.-Ing. Till Riedel
Lab Leader TECO, SDSC-BW/SDIL
Karlsruhe Institute of Technology (KIT)
Institute of Telematics (TM)
Pervasive Computing Systems - Prof. Beigl
Bldg. 07.07., Room 211
Vincenz Prießnitz Str. 1, 76131 Karlsruhe
+49 (0)721 608 41706
www.teco.kit.edu/~riedel
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple


More information about the Cygwin mailing list

AltStyle によって変換されたページ (->オリジナル) /