Thread: Re: [BULK] Problems with vacuum!

Re: [BULK] Problems with vacuum!

From
"Domenico Sgarbossa"
Date:
Thanks for your advice!

As I immagine the system released dinamically the shared memory .... the
problem is that
when , after vacuum, users runs my application (ERP) and the system swap on
disk so the global performance
decrease very fast until the system is so slow that I need to reboot the
server.

It seems that the cached memory isn't released by the system... so the
system begin to swap to disk!
The swap problem is very important, it makes useless run vacuum 'cause after
vacuum the system
begin to swap.... so my application runs very slow!

Could you explain me better your final advice please?

> Watching this "cached" value over normal usage of your machine to get
> a running average is how you come up with your effective_cache_size
> configuration directive.

what does this mean pratically?

thanks!

Distinti Saluti

Sgarbossa Domenico
X Tecnica S.R.L.
www.xtecnica.com
Tel: 049/9409154 - 049/5970297
Fax: 049/9400288

----- Original Message -----
From: "Rosser Schwarz" <rschwarz@totalcardinc.com>
To: "'Domenico Sgarbossa'" <domenico@xtecnica.com>;
<pgsql-performance@postgresql.org>
Sent: Friday, June 11, 2004 4:09 PM
Subject: RE: [BULK] [PERFORM] Problems with vacuum!


> while you weren't looking, Domenico Sgarbossa wrote:
>
> Compare the "cached" values in each run of top.
>
> Before: 67828K cached
>
> After: 833896K cached
>
> The kernel is caching your tables for you.  That memory isn't actually
> being -used-, in the active, "a process has claimed this memory" sense.
> If a process comes along that needs more memory than free, the kernel
> will flush some of those cached pages (to swap?) to make room for
> whatever the memory requirements of the newcomer are.
>
> Watching this "cached" value over normal usage of your machine to get
> a running average is how you come up with your effective_cache_size
> configuration directive.
>
> /rls
>
> --
> Rosser Schwarz
> Total Card, Inc.
>
>
>




Re: [BULK] Problems with vacuum!

From
Doug McNaught
Date:
"Domenico Sgarbossa" <domenico@xtecnica.com> writes:

> Thanks for your advice!
>
> It seems that the cached memory isn't released by the system... so the
> system begin to swap to disk!

If you really think this is true, there should be a process that is
holding on to the memory.  Use 'ps' to find that process.

I also noticed that your shared_buffers setting seemed a bit low--you
might want to increase it.

-Doug

Re: [BULK] Problems with vacuum!

From
Dawn Hollingsworth
Date:
We actually found that in the 2.4-20 kernel for RedHat there was a known
issue that was causing cached memory to not be reused and our box
started to swap also.

http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=89226

This may be what you are experiencing if your using the same kernel.

Dawn Hollingsworth
Senior Director R&D
AirDefense, Inc.



On Fri, 2004-06-11 at 11:03, Doug McNaught wrote:
> "Domenico Sgarbossa" <domenico@xtecnica.com> writes:
>
> > Thanks for your advice!
> >
> > It seems that the cached memory isn't released by the system... so the
> > system begin to swap to disk!
>



Re: [BULK] Problems with vacuum!

From
"Domenico Sgarbossa"
Date:
The problems still remains...
I've tried to change shmax to 128 mb (i've got 2 GB of ram),
then the others parameter are set as follow:

shared_buffers = 8096        # 2*max_connections, min 16
max_fsm_relations = 500    # min 10, fsm is free space map
max_fsm_pages = 15000      # min 1000, fsm is free space map
max_locks_per_transaction = 64 # min 10
wal_buffers = 8            # min 4

#
#       Non-shared Memory Sizes
#
sort_mem = 1024          # min 32
vacuum_mem = 16384          # min 1024

I've scheduled 2 tasks nightly:

vacuumdb --analyze dbname
pg_dump -x -f dbname.dmp dbname

so when the users go home, i've got something like 15/20000kb free ram, the
rest is cached and 0kb of swap...
It seems that when pg_dump starts the cached memory isn't released so the
system begin to swap, then the system
does the same with vacuum..... even if there 1.8 gb of cached ram (that
is'nt released anymore....) very strange!

anyone could explain mw why this happend?


Distinti Saluti

Sgarbossa Domenico
X Tecnica S.R.L.
www.xtecnica.com
Tel: 049/9409154 - 049/5970297
Fax: 049/9400288





Re: [BULK] Problems with vacuum!

From
Tom Lane
Date:
"Domenico Sgarbossa" <domenico@xtecnica.com> writes:
> so when the users go home, i've got something like 15/20000kb free ram, the
> rest is cached and 0kb of swap...
> It seems that when pg_dump starts the cached memory isn't released so the
> system begin to swap,

A sane kernel should drop disk buffers rather than swapping.  We heard
recently about a bug in some versions of the Linux kernel that cause it
to prefer swapping to discarding disk cache, though.  It sounds like
that's what you're hitting.  Look into newer kernels ...

            regards, tom lane

Re: [BULK] Problems with vacuum!

From
"Scott Marlowe"
Date:
On Fri, 2004-06-18 at 09:11, Tom Lane wrote:
> "Domenico Sgarbossa" <domenico@xtecnica.com> writes:
> > so when the users go home, i've got something like 15/20000kb free ram, the
> > rest is cached and 0kb of swap...
> > It seems that when pg_dump starts the cached memory isn't released so the
> > system begin to swap,
>
> A sane kernel should drop disk buffers rather than swapping.  We heard
> recently about a bug in some versions of the Linux kernel that cause it
> to prefer swapping to discarding disk cache, though.  It sounds like
> that's what you're hitting.  Look into newer kernels ...

This was a common problem in the linux 2.4 series kernels, but has
supposedly been fixed in the 2.6 kernels.  Having lots of memory and
turning off swap will "fix" the problem in 2.4, but if you run out of
real mem, you're hosed.


Re: [BULK] Problems with vacuum!

From
"Scott Marlowe"
Date:
I believe it was more like the kernel was tuned to make it less common,
but certain things can still trigger it.  I know the problem was still
there in the 2.4.24 on the last server I was playing with, but it was a
lot less of a problem than it had been under 2.4.9 on an earlier machine
with the same basic amount of memory.

On Fri, 2004-06-18 at 12:47, Joshua D. Drake wrote:
> Hello,
>
> I would have to double check BUT I believe this is fixed in later 2.4.x
> kernels as well. If you don't want to go through the hassle of 2.6
> (although it really is a nice kernel) then upgrade to 2.4.26.
>
> Sincerely,
>
> Joshau D. Drake
>
> Scott Marlowe wrote:
> > On Fri, 2004-06-18 at 09:11, Tom Lane wrote:
> >
> >>"Domenico Sgarbossa" <domenico@xtecnica.com> writes:
> >>
> >>>so when the users go home, i've got something like 15/20000kb free ram, the
> >>>rest is cached and 0kb of swap...
> >>>It seems that when pg_dump starts the cached memory isn't released so the
> >>>system begin to swap,
> >>
> >>A sane kernel should drop disk buffers rather than swapping.  We heard
> >>recently about a bug in some versions of the Linux kernel that cause it
> >>to prefer swapping to discarding disk cache, though.  It sounds like
> >>that's what you're hitting.  Look into newer kernels ...
> >
> >
> > This was a common problem in the linux 2.4 series kernels, but has
> > supposedly been fixed in the 2.6 kernels.  Having lots of memory and
> > turning off swap will "fix" the problem in 2.4, but if you run out of
> > real mem, you're hosed.
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 4: Don't 'kill -9' the postmaster
>


Re: [BULK] Problems with vacuum!

From
"Joshua D. Drake"
Date:
Hello,

I would have to double check BUT I believe this is fixed in later 2.4.x
kernels as well. If you don't want to go through the hassle of 2.6
(although it really is a nice kernel) then upgrade to 2.4.26.

Sincerely,

Joshau D. Drake

Scott Marlowe wrote:
> On Fri, 2004-06-18 at 09:11, Tom Lane wrote:
>
>>"Domenico Sgarbossa" <domenico@xtecnica.com> writes:
>>
>>>so when the users go home, i've got something like 15/20000kb free ram, the
>>>rest is cached and 0kb of swap...
>>>It seems that when pg_dump starts the cached memory isn't released so the
>>>system begin to swap,
>>
>>A sane kernel should drop disk buffers rather than swapping.  We heard
>>recently about a bug in some versions of the Linux kernel that cause it
>>to prefer swapping to discarding disk cache, though.  It sounds like
>>that's what you're hitting.  Look into newer kernels ...
>
>
> This was a common problem in the linux 2.4 series kernels, but has
> supposedly been fixed in the 2.6 kernels.  Having lots of memory and
> turning off swap will "fix" the problem in 2.4, but if you run out of
> real mem, you're hosed.
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster


--
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - jd@commandprompt.com - http://www.commandprompt.com
Mammoth PostgreSQL Replicator. Integrated Replication for PostgreSQL

Attachment

Re: [BULK] Problems with vacuum!

From
"Domenico Sgarbossa"
Date:
As you suggets I've tried to upgrade to the kernel 2.4.28, but it seems that
nothing change!
I built a new machine with Red Hat 8  (kernel 2.4.28) a 1GB RAM using the
same parameters i've been used before.
After the boot, i've got 800Mb of free memory, if a launch a pg_dump then
the system swap (only 1 or 2 mb.....) and the
free memory become 20mb.
Now, if I tried a vacuumdb the system use partially the cached memory then
begin to swap again.... with 700mb of cached
memory it's very strange that the system swap again....

anyone know why this happend?

Distinti Saluti

Sgarbossa Domenico
X Tecnica S.R.L.
www.xtecnica.com
Tel: 049/9409154 - 049/5970297
Fax: 049/9400288

----- Original Message -----
From: "Scott Marlowe" <smarlowe@qwest.net>
To: "Joshua D. Drake" <jd@commandprompt.com>
Cc: "Tom Lane" <tgl@sss.pgh.pa.us>; "Domenico Sgarbossa"
<domenico@xtecnica.com>; <pgsql-performance@postgresql.org>
Sent: Friday, June 18, 2004 8:58 PM
Subject: Re: [PERFORM] [BULK] Problems with vacuum!


> I believe it was more like the kernel was tuned to make it less common,
> but certain things can still trigger it.  I know the problem was still
> there in the 2.4.24 on the last server I was playing with, but it was a
> lot less of a problem than it had been under 2.4.9 on an earlier machine
> with the same basic amount of memory.
>
> On Fri, 2004-06-18 at 12:47, Joshua D. Drake wrote:
> > Hello,
> >
> > I would have to double check BUT I believe this is fixed in later 2.4.x
> > kernels as well. If you don't want to go through the hassle of 2.6
> > (although it really is a nice kernel) then upgrade to 2.4.26.
> >
> > Sincerely,
> >
> > Joshau D. Drake
> >
> > Scott Marlowe wrote:
> > > On Fri, 2004-06-18 at 09:11, Tom Lane wrote:
> > >
> > >>"Domenico Sgarbossa" <domenico@xtecnica.com> writes:
> > >>
> > >>>so when the users go home, i've got something like 15/20000kb free
ram, the
> > >>>rest is cached and 0kb of swap...
> > >>>It seems that when pg_dump starts the cached memory isn't released so
the
> > >>>system begin to swap,
> > >>
> > >>A sane kernel should drop disk buffers rather than swapping.  We heard
> > >>recently about a bug in some versions of the Linux kernel that cause
it
> > >>to prefer swapping to discarding disk cache, though.  It sounds like
> > >>that's what you're hitting.  Look into newer kernels ...
> > >
> > >
> > > This was a common problem in the linux 2.4 series kernels, but has
> > > supposedly been fixed in the 2.6 kernels.  Having lots of memory and
> > > turning off swap will "fix" the problem in 2.4, but if you run out of
> > > real mem, you're hosed.
> > >
> > >
> > > ---------------------------(end of
broadcast)---------------------------
> > > TIP 4: Don't 'kill -9' the postmaster
> >
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>
>