JDBC delete not recovering space?

Поиск
Список
Период
Сортировка
От John Guthrie
Тема JDBC delete not recovering space?
Дата
Msg-id 01da01c309af$5bf9f320$3dc810ac@corphq.psynapsetech.net
обсуждение исходный текст
Ответ на JDBC and primary Key missing  ("Nuno Duarte Leitao" <nunomdl@eml.cc>)
Ответы Re: JDBC delete not recovering space?  ("Jeroen Habets" <Jeroen@twofoldmedia.com>)
Re: JDBC delete not recovering space?  (Dave Cramer <Dave@micro-automation.net>)
Список pgsql-jdbc
i am seeing some odd behavior and wonder if anyone can help me explain it
and fix it...

i've written a java task that runs in a thread and monitors disk space on
the partition where i have my $PGDATA. if the space available drops below a
certain level, i remove some old records ... and vacuum.

the odd thing is that running via jdbc the space seems to not be recovered.
example - if i start with 100,000 records of approximately 1K size and i
remove 50,000, using 'df' in another shell i see no space recovery. from
another shell, using psql, i run vacuum and again i see no gains.

the really odd thing is that if i do this whole scenario in psql - create
100,000, delete the oldest 50,000, and vacuum - i *do* see the space
recovered.

even better (or worse), if i do the whole test in java, verify that little
or no space is recovered, then run psql and delete a single records and
vacuum, bam(!) i get a boatload of space back.

 note that in the java task i explicitly set auto-commit to true and i run
queries from psql that show results that reflect the deletions, so i don't
see this as a transaction problem. also, if i shut down postgresql i see the
correct (reduced) record count but still no space recovery. i can restart
it, run psql, and vacuum, but still no space recovery... but if i then
delete a record and vacuum again, i get space, lots of space (i.e.
megabytes).

any ideas anyone? thanks

john

---
john guthrie
psynapse technologies


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

Предыдущее
От: Roberto Bouza
Дата:
Сообщение: An I/O error has occured while flushing the output
Следующее
От: "Jeroen Habets"
Дата:
Сообщение: Re: JDBC delete not recovering space?