pan-users
[Top][All Lists]
Advanced

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

Re: [Pan-users] speed of "Get new articles"


From: Gert
Subject: Re: [Pan-users] speed of "Get new articles"
Date: Sat, 30 Nov 2002 12:38:25 +0100
User-agent: Mutt/1.4i

Charles Kerr (address@hidden) wrote:
> On Wed, Nov 27, 2002 at 10:36:03PM +0100, Gert wrote:
> > Hi,
> > 
> > I have a question. Do you think it is possible to shorten the time pan
> > spends processing the newsgroup after getting the new headers? I am
> > subscribed to a binary newsgroup which has about 300.000 articles, and I
> > just clicked on the get new article headers menu item. It started
> > downloading, which it finished after a minute of 5, fetching the 90.000
> > new headers. That was 29 minutes ago (and yes, this problem is common
> > ;).
> > I don't quite know what it is supposed to be doing now (other then
> > consuming CPU cycles ;), but I doubt it is more then inserting
> > structures in a sorted linked list (/tree) ?
> 
> What does the status bar at the bottom say?

Nothing at all, the GUI won't update.

> Try attaching to the running pan process with gdb and hitting
> ctrl-c to pause it every few minutes, and get a backtrace.
> Where is Pan spending its time during these 30 minutes?
> 
> It will be practically impossible to fix this without helpers...

Got one here ;)
Ok,I just updated my headers, but this time (in gdb) it only took about
8 minutes. Main difference is that a lot of articles seemed to be
missing after I started pan. (My guess is it's a feature, pan removes
all messages from the window that aren't served by the newsserver? -
good feature anyways).
I did some backtraces during the CPU cycles, and continued to get traces
like:

#0  0x40524991 in nanosleep () from /lib/libc.so.6
#1  0x404787d2 in __pthread_timedsuspend_new () from /lib/libpthread.so.0
#2  0x40475286 in pthread_cond_timedwait_relative () from /lib/libpthread.so.0
#3  0x40475408 in pthread_cond_timedwait () from /lib/libpthread.so.0
#4  0x4046b7ab in _init () from /usr/lib/libgthread-2.0.so.0
#5  0x0807efb0 in gtk_widget_grab_focus ()
#6  0x4038d1d0 in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#7  0x40475fa5 in pthread_start_thread () from /lib/libpthread.so.0
#8  0x40475fed in pthread_start_thread_event () from /lib/libpthread.so.0

Which I thing is just a worker thread. A backtrace on thread #1 (gdb
cmd "t 1") resulted in the following backtrace:

#0  0x404f88dd in memmove () from /lib/libc.so.6
#1  0x40364539 in g_ptr_array_remove_index () from /usr/lib/libglib-2.0.so.0
#2  0x40364641 in g_ptr_array_remove () from /usr/lib/libglib-2.0.so.0
#3  0x0805740a in gtk_widget_grab_focus ()
#4  0x08065a4c in gtk_widget_grab_focus ()
#5  0x0808b449 in gtk_widget_grab_focus ()
#6  0x40379f98 in g_main_context_wakeup () from /usr/lib/libglib-2.0.so.0
#7  0x40377a19 in g_get_current_time () from /usr/lib/libglib-2.0.so.0
#8  0x40378837 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#9  0x40378c13 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#10 0x403792ef in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#11 0x400d000f in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#12 0x08074031 in gtk_widget_grab_focus ()
#13 0x4049d0bf in __libc_start_main () from /lib/libc.so.6

Perhaps this suggests a gtk bug? Do I even have the right thread (24 of
them are running or so)? My experience with gdb-ing threaded programs is
limited (make it zero ;)...

Hope it helps?

Gert
-- 
In my universe I'm perfectly normal.
It's not my fault you don't live in my universe.
        [read on slashdot]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]