Re: Doubt in mvcc

From: Francisco Olarte <folarte(at)peoplecall(dot)com>
To: Rama Krishnan <raghuldrag(at)gmail(dot)com>
Cc: Postgres General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Doubt in mvcc
Date: 2020-07-13 08:41:28
Message-ID: CA+bJJbwpPtVX8bEexmmPu=TEmy2MJCcEGuCvbbQmckSS=F2BOA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Rama:

On Mon, Jul 13, 2020 at 9:52 AM Rama Krishnan <raghuldrag(at)gmail(dot)com> wrote:
> I m preparing for interview one of the recruiter asked me mvcc drawbacks as i told due to mvcc it use more space and need to perform maintenance activity.
> Another one is the same data causes an update conflict because two different transactions can update the same version of the row.
> he told its wrong, kindly tell me will you please tell me its correct or wrong?

I'm not sure I understand your question too well, you may want to
refresh/expand.

One interpretation is, on a pure MVCC contest, two transactions, say 5
and 6, could try to update a tuple valid for [1,) and end up
generating two new tuples, [5,), [6,) and closing the original at
either [1,5) or [1,6) .

That's why MVCC is just a piece, locking is other. On a MVCC the
tuples are locked while a transaction manipulates them. Other
transactions may read them, which is why readers do not block writers,
but two updates on the same tuple serialize.

Francisco Olarte.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Rama Krishnan 2020-07-13 08:52:03 Re: Doubt in mvcc
Previous Message Rama Krishnan 2020-07-13 07:31:07 Doubt in mvcc