Re: Defer Committing Updates on High-Activity Table
От | Tom Lane |
---|---|
Тема | Re: Defer Committing Updates on High-Activity Table |
Дата | |
Msg-id | 3433.1123097940@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Defer Committing Updates on High-Activity Table ("Lane Van Ingen" <lvaningen@esncc.com>) |
Список | pgsql-admin |
"Lane Van Ingen" <lvaningen@esncc.com> writes: > I have a situation where I have a temporary table (because of how it is > being used) that creates a lot of (legitimate) I/O activity. The table > contains information which is transient and tends to stay in shared buffers > because of frequency of use, and it is only necessary to commit the changes > to disk every hour or so (mainly for backup purposes). If it's actually a temp table, then the data isn't in shared buffers; it's kept in backend-local buffers, and isn't written to disk at all unless the backend needs to evict a page from those buffers to make room for more temp data. What you probably really need is to enlarge the number of buffers available for temp-table data. This number is user-configurable as of Postgres 8.1, but unfortunately is hard-wired at a pretty small value in existing releases. If you're desperate you could try increasing NLocBuffer in src/backend/storage/buffer/localbuf.c, but I'm not sure how well that will work --- the pre-8.1 code is not designed to perform well with large values of NLocBuffer. regards, tom lane
В списке pgsql-admin по дате отправления: