RE: delete then insert

From: Ken Benson <Ken(at)infowerks(dot)com>
To: "pgsql-admin(at)lists(dot)postgresql(dot)org" <pgsql-admin(at)lists(dot)postgresql(dot)org>
Subject: RE: delete then insert
Date: 2020-01-17 20:59:46
Message-ID: BN6PR19MB0081C5DFB5E0AD45BACD6838A3310@BN6PR19MB0081.namprd19.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

From: Ron <ronljohnsonjr(at)gmail(dot)com>
Sent: Friday, January 17, 2020 12:12 PM
To: pgsql-admin(at)lists(dot)postgresql(dot)org
Subject: Re: delete then insert

On 1/17/20 2:03 PM, Ken Benson wrote:

So – I THINK I know – that when a row is deleted from a table – the row is not actually removed from the table – but, merely marked as deleted, thus becoming a dead tuple.
AUTOVACUUM – takes care of the process of removing these dead tuples.

My question. If – an insert occurs to that same table before autovacuum comes along, does that inserted record use a dead tuple? Or – does the insert result in an actual added row?

If there's an open transaction which is still looking at the now-deleted record, then over-writing that area of the file would be a Bad Thing.

So – the answer is – NO – the dead tuple won’t be used until is has been reclaimed by vacuum – and that it doesn’t because it would be a bad thing, right?
--
Angular momentum makes the world go 'round.

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Ron 2020-01-17 21:20:25 Re: delete then insert
Previous Message Ron 2020-01-17 20:12:10 Re: delete then insert