From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> |
Cc: | pgsql-patches(at)postgresql(dot)org |
Subject: | Re: Dead Space Map version 3 (simplified) |
Date: | 2007-05-17 22:11:15 |
Message-ID: | 200705172211.l4HMBF125649@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
This needs additional changes for memory mangement and we don't have
time to do that for 8.3, Sorry:
This has been saved for the 8.4 release:
http://momjian.postgresql.org/cgi-bin/pgpatches_hold
---------------------------------------------------------------------------
ITAGAKI Takahiro wrote:
> Attached is an updated DSM patch. I've left the core function of DSM only
> and dropped other complicated features in this release.
>
> VACUUM finishs faster with the patch, but it's obvious... DSM vacuum
> sweeps only pages that have many dead tuples and leave some of them
> after vacuum.
>
> I'll examine the sweep behavior and the performance from now.
>
>
> * Features
> - DSM tracks pages worth vacuuming using 1bit/page bit.
> The threshold is two dead tuples or 2kB of deadspaces.
> - DSM is constructed at page flush. Almost of the works are done by
> bgwriter if it is properly configured.
> - 'VACUUM' command uses DSM. 'VACUUM ALL' always scans all pages.
> - This is including n_dead_tuples statistics fix.
> http://momjian.us/mhonarc/patches/msg00002.html
>
> * Configuration
> - max_dsm_relations (=1000)
> Counterpart to max_fsm_relations, but count tables only;
> Indexes are not tracked by DSM.
> - max_dsm_pages (=1024000)
> Counterpart to max_dsm_pages. Default values are configurated to
> 5 times of max_fsm_pages at initdb.
> - min_dsm_target (=8MB)
> Minimum size of tables of which dead space is tracked
> to avoid tracking small tables, including system catalogs.
>
> * Limitation
> - XID-wraparound vacuum is still required. VACUUM with DSM cannot
> update relfrozenxid, so we sometimes needs full-scan.
> - No recovery support. All contents of DSM and FSM are lost on crash.
> - DSM uses fixed size memory allocated at server start. We cannot change
> the value on-the-fly. If we want the feature, we need something like
> shared-memory-allocator or swap-supported memory management module.
>
> Regards,
> ---
> ITAGAKI Takahiro
> NTT Open Source Software Center
[ Attachment, skipping... ]
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> message can get through to the mailing list cleanly
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2007-05-17 22:14:29 | Re: [COMMITTERS] pgsql: Fix parameter recalculation for Limit nodes: during a ReScan call |
Previous Message | Joachim Wieland | 2007-05-17 21:51:40 | Re: mb and ecpg regression tests |
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-05-17 22:20:27 | Re: Updated bitmap index patch |
Previous Message | Bruce Momjian | 2007-05-17 21:40:12 | Re: Concurrent psql patch |