But, as follow, if txn1 not commit (just like long term readonly txn), it will 
block txn2's ddl job,  why alt add/drop column can not concurrently with read 
only access?


txn1: long term txn not commit access t1.
txn2 waiting txn1 to commit or abort.

txn3 wait txn2...








At 2022-10-11 18:05:01, "hubert depesz lubaczewski" <dep...@depesz.com> wrote:
>On Tue, Oct 11, 2022 at 05:43:03PM +0800, jiye wrote:
>> As we know postgres using high level lock when do alter table or other ddl 
>> commands,
>> It will block any dml operation, while it also will block by long term dml 
>> operation.
>
>Most of the things can be already done in non-blocking (or almost
>non-blocking way) if you just do it in a way that takes concurrency into
>account.
>
>Specifically - I have no problem adding/deleting columns.
>
>Best regards,
>
>depesz

Reply via email to