Re: Very long deletion time on a 200 GB database

Поиск
Список
Период
Сортировка
От Greg Spiegelberg
Тема Re: Very long deletion time on a 200 GB database
Дата
Msg-id CAEtnbpWh-ko=4mznWLdPVT7pifaGMeoy0wDB1=mBcrUx35Dkdw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Very long deletion time on a 200 GB database  (Andy Colson <andy@squeakycode.net>)
Ответы Re: Very long deletion time on a 200 GB database  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-performance
On Thu, Feb 23, 2012 at 11:11 AM, Andy Colson <andy@squeakycode.net> wrote:
On 2/23/2012 12:05 PM, Shaun Thomas wrote:
On 02/23/2012 11:56 AM, Greg Spiegelberg wrote:

I know there are perils in using ctid but with the LOCK it should be
safe. This transaction took perhaps 30 minutes and removed 100k rows
and once the table was VACUUM'd afterward it freed up close to 20 GB
on the file system.

It took *30 minutes* to delete 100k rows? And 100k rows were using 20GB?
Is that off by an order of magnitude?

Using the ctid is a cute trick, though. :)


And I'm not sure the LOCK is necessary, while googling for "delete from table limit 10" I ran across this thread:

http://archives.postgresql.org/pgsql-hackers/2010-11/msg02028.php

They use it without locks.


I used LOCK simply because if a VACUUM FULL x; slipped in between the SELECT and the DELETE the ctid's could conceivably change. 

-Greg

В списке pgsql-performance по дате отправления:

Предыдущее
От: Andy Colson
Дата:
Сообщение: Re: Very long deletion time on a 200 GB database
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Very long deletion time on a 200 GB database