Thread: Why need a lock?

Why need a lock?

From
jacktby jacktby
Date:
I find this in source code
#define ShareLock                5    /* CREATE INDEX (WITHOUT CONCURRENTLY) */
I think if there is no CONCURRENTLY, so why we need a lock, I think that’s unnecessary. What’s the point?


Re: Why need a lock?

From
Tom Lane
Date:
jacktby jacktby <jacktby@gmail.com> writes:
> I find this in source code
> #define ShareLock                5    /* CREATE INDEX (WITHOUT CONCURRENTLY) */
> I think if there is no CONCURRENTLY, so why we need a lock, I think that’s unnecessary. What’s the point?

We need a lock precisely to prevent concurrent execution
(of table modifications that would confuse the index build).

            regards, tom lane