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.
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 |