Re: statistics collector process is thrashing my cpu

From: "William Temperley" <willtemperley(at)gmail(dot)com>
To: "Magnus Hagander" <magnus(at)hagander(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: statistics collector process is thrashing my cpu
Date: 2008-05-23 10:47:13
Message-ID: 439dc11e0805230347s52b469e7wcd4b3a1863b1d85e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, May 9, 2008 at 2:55 PM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:

> William Temperley wrote:
> > On Thu, May 8, 2008 at 6:14 PM, Magnus Hagander <magnus(at)hagander(dot)net>
> > wrote:
> > > William Temperley wrote:
> > >> > >
> > >> > > Any ideas why this might be happening, and how I can stop it?
> > >> >
> > >> > It'd be interesting to know what the stats collector is actually
> > >> > doing. Could you, using Process Explorer or a debugger, get a
> > >> > stack trace from that process while it's in the trashing state?
> > >> >
> > >> > //Magnus
> > >> >
> > >>
> > >> Certainly, but I'll have to wait 'til it does it again, it doesn't
> > >> happen all the time.
> > >> What would you like to know from Process Explorer?
> > >
> > > Get the backtrace from hung process. Find the process in the list,
> > > open it. Go to the tab "Threads", find the thread that's using a
> > > lot of CPU (or at least has a lot of ocntext switchs), and click
> > > the Stack button. That should give you a window with a backtrace.
> > >
> > > //Magnus
> > >
> >
> > Ok, got the little blighter. Below are 4 stack traces taken at random
> > times. Doesn't seem to be doing much I/O (16 reads and 167 other in 3
> > hours). The memory usage seems to be static (3.7MB) even with high
> > database usage (vacuum, read, update).
>
> Hmm. They all show the same function, but it's not a function being
> used in the stats collector. I think I missed a step in the
> instructions - you need to download the symbols for the server (make
> sure you get the same version!) and configure process explorer to use
> those (IIRC, it can use detached symbols), then do the same things
> again. Sorry for missing that in the first instructions!
>
> //Magus
>

Hi Magnus,

Sorry I didn't reply earlier (away on holiday). I can't seem to get the
symbols to work -
I can't find any way to attach symbols in process explorer, however windows
debugger can. I've done this:
1. Downloaded the symbols (8.3.1!)
2. Set the path for windows debugger to find them
3. Atttached to the process (offending PID found from process explorer)

Then I get this message:

Microsoft (R) Windows Debugger Version 6.9.0003.113 X86
Copyright (c) Microsoft Corporation. All rights reserved.

*** wait with pending attach
Symbol search path is: C:\Temp\pgsymbols
Executable search path is:
ModLoad: 00400000 007da000 C:\Program
Files\PostgreSQL\8.3\bin\postgres.exe
...........Lots more modload lines .....
(eb4.3e4): Break instruction exception - code 80000003 (first chance)
eax=7ffd4000 ebx=00000001 ecx=00000002 edx=00000003 esi=00000004
edi=00000005
eip=7c901230 esp=0235ffcc ebp=0235fff4 iopl=0 nv up ei pl zr na pe
nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000
efl=00000246
*** ERROR: Symbol file could not be found. Defaulted to export symbols for
C:\WINDOWS\system32\ntdll.dll -
ntdll!DbgBreakPoint:
7c901230 cc int 3

Any ideas?

Will

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Craig Ringer 2008-05-23 11:29:18 Re: F-Secure and PostgreSQL
Previous Message Bill Moran 2008-05-23 10:33:26 Re: deadlock debug methodology question