[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

why imap "rlist % *" is slow

Below is what proxyd on ronin.mail.umich.edu does when
pine does:
	RLIST % *
and there's the mysterious one minute pause.

Basically, I believe it's collecting names for all N hundred thousand mailboxes,
checking access rights, and returning 5 or 6.

It's suaully down in cyrus_acl_myrights, so I don't think
a faster mailbox database will help.

I'm going to grab a bite to eat, will be back in an hour.


Program received signal SIGINT, Interrupt.
0x4026570d in __i686.get_pc_thunk.bx () from /lib/libc.so.6
(gdb) where
#0  0x4026570d in __i686.get_pc_thunk.bx () from /lib/libc.so.6
#1  0x402730ae in __ctype_b_loc () at ../include/ctype.h:27
#2  0x08095624 in parse_binding (f=0x0, lineno=0x0, p=0xbfffaab4 "du = ENGIN.UMICH.EDU", 
    b=0x0, parent=0x8147054, error_message=0xbfffcadc) at config_file.c:164
#3  0x080958a4 in krb5_config_parse_file_debug (fname=0x0, res=0xbfffcb08, 
    lineno=0xbfffcad8, error_message=0xbfffcadc) at config_file.c:258
#4  0x080959ac in krb5_config_parse_file_multi (context=0x0, 
    fname=0xbfffaaa0 "        ummu.umich.edu = ENGIN.UMICH.EDU", res=0x0)
    at config_file.c:277
#5  0x08084803 in krb5_set_config_files (context=0x8148468, filenames=0xbfffaaa0)
    at context.c:254
#6  0x0808460b in krb5_init_context (context=0x0) at context.c:197
#7  0x0807995b in auth_canonifyid (identifier=0x8146d90 "", len=0) at auth_krb5.c:115
#8  0x0807988f in auth_memberof (auth_state=0x8146b70, identifier=0x8146d90 "")
    at auth_krb5.c:81
#9  0x080794d2 in cyrus_acl_myrights (auth_state=0x8146b70, acl=0x8146b80 "efrickla")
    at acl_afs.c:92
#10 0x0805f789 in find_p (rockp=0xbfffd490, key=0x42bb72a8 "user.efrickla", 
    data=0x42bb72bc "1 jackiebrown.mail.umich.edu!default efrickla\tlrswipcda\t", 
    datalen=0) at mboxlist.c:1772
#11 0x0807c4e7 in myforeach (db=0x813e5a8, prefix=0xbfffcec0 "user", prefixlen=4, 
    goodp=0x805f5a0 <find_p>, cb=0x805f880 <find_cb>, rock=0xbfffd490, tid=0x0)
    at cyrusdb_skiplist.c:969
#12 0x08060823 in mboxlist_findall_alt (namespace=0x8132940, pattern=0x8145a60 "%*", 
    isadmin=0, userid=0x0, auth_state=0x0, proc=0x8059340 <listdata>, rock=0x0)
    at mboxlist.c:2200
#13 0x0805753f in cmd_list (tag=0x8144388 "5", listopts=0, reference=0x81444a8 "%", 
    pattern=0xbfffcec0 "user") at proxyd.c:3885
#14 0x08051c6b in cmdloop () at proxyd.c:1888
#15 0x080504cf in service_main (argc=1, argv=0x813c048, envp=0xbffff96c) at proxyd.c:1364
#16 0x0804cef5 in main (argc=1, argv=0x3402f, envp=0xbffff96c) at service.c:557
#17 0x402658be in __libc_start_main (main=0x804c890 <main>, argc=1, ubp_av=0x3402f, 
    init=0x809db00 <__libc_csu_init>, fini=0x809db30 <__libc_csu_fini>, rtld_fini=0x9, 
    stack_end=0x65) at ../sysdeps/generic/libc-start.c:152
(gdb) cont