On 8/26/07, Kevin Kempter <kevin@xxxxxxxxxxxxxxxxxxx> wrote: > On Saturday 25 August 2007 21:10:19 Ron Johnson wrote: > > On 08/25/07 21:51, Kevin Kempter wrote: > > > Hi List; > > > > > > I have a very large table (52million rows) - I'm creating a copy of it to > > > rid it of 35G worth of dead space, then I'll do a sync, drop the original > > > table and rename table2. > > > > What is your definition of "dead space"? > > > > Bad rows, duplicate rows, old rows? Something else? > > deleted rows that should have been cleaned up with vacuum, problem is the > client let it go so long that now I cant get a vacuum to finish cause it > impacts the day2day operations too much. Long story, see my recent questions > on the performance list for more info. In your place I would do something like Slony-I does, when it replicates the tables. Create on insert/update/delete triggers on table1 which will log operations on table1 to some table1_log table. Then copy table1 to table2. Then replay table1_log on table2, then BEGIN;LOCK tablel1;finish replaying the lock;DROP table1; alter table rename...;commit; Or perhaps actually use Slony-I for the above steps? Should work quite nicely... Or perhaps use SkyTools for it (I've never used it)? Regarda, Dawid ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq