Sv: DDL in active production database - Mailing list pgsql-sql

From Andreas Joseph Krogh
Subject Sv: DDL in active production database
Date
Msg-id VisenaEmail.a6e.1bf6172a1534952b.18acbc594bb@origo02.app.internal.visena.net
Whole thread Raw
In response to DDL in active production database  ("Skelton, Adam J" <Adam.Skelton@fisglobal.com>)
List pgsql-sql
På mandag 25. september 2023 kl. 02:01:28, skrev Skelton, Adam J <Adam.Skelton@fisglobal.com>:

Hi,

 

I hope I have the correct group here.

 

I have a question that I am struggling to find answers for in the documentation.  Does Postgres have problems with creation / changes to database schema objects when the database is actively being used?

 

In particular – rightly or wrongly – our developers want our application to occasionally issue the following kinds of DDL when it’s in active use

 

Alter table ... add column ...

Create / drop materialised view ...

Create / drop table created with INHERITANCE

 

 

I know oracle hates this and you can run into some serious issues, SQL server generally lets you away with it.  

 

Should we expect problems if we decided to do this in the latest version of Postgres?

 

Thanks for your time.

Adam

The information contained in this message is proprietary and/or confidential. If you are not the intended recipient, please: (i) delete the message and all copies; (ii) do not disclose, distribute or use the message in any manner; and (iii) notify the sender immediately. In addition, please be aware that any message addressed to our domain is subject to archiving and review by persons other than the intended recipient. Thank you.

It will cause problems if you mix DDL and DML when having deferred constraints with following updates in the same TX.

 

--
Andreas Joseph Krogh
CTO / Partner - Visena AS
Mobile: +47 909 56 963
 
Attachment

pgsql-sql by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: DDL in active production database
Next
From: JORGE MALDONADO
Date:
Subject: A situation with one parent table and 3 child tables