From: | "John Guthrie" <jguthrie(at)psynapsetech(dot)net> |
---|---|
To: | <pgsql-jdbc(at)postgresql(dot)org> |
Subject: | JDBC delete not recovering space? |
Date: | 2003-04-23 15:45:21 |
Message-ID: | 01da01c309af$5bf9f320$3dc810ac@corphq.psynapsetech.net |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | 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
From | Date | Subject | |
---|---|---|---|
Next Message | Jeroen Habets | 2003-04-23 15:50:59 | Re: JDBC delete not recovering space? |
Previous Message | Roberto Bouza | 2003-04-23 15:39:16 | An I/O error has occured while flushing the output |