| From: | Thomas Munro <thomas(dot)munro(at)gmail(dot)com> |
|---|---|
| To: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> |
| Cc: | Dmitry Dolgov <9erthalion6(at)gmail(dot)com>, artem(dot)anisimov(dot)255(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org, Teodor Sigaev <teodor(at)sigaev(dot)ru> |
| Subject: | Re: BUG #17949: Adding an index introduces serialisation anomalies. |
| Date: | 2023-06-28 03:18:00 |
| Message-ID: | CA+hUKGKmrBFy-Z7XTHv6o5EV7WEhoscyTqyf=LTBeGjNoYnOkA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On Mon, Jun 26, 2023 at 8:04 PM Heikki Linnakangas <hlinnaka(at)iki(dot)fi> wrote:
> Yes, +1 on the patches. Any chance of constructing test cases for these?
Thanks for looking. I can't think of any good way to test
deterministically. All three depend on unlucky scheduling. Perhaps
if we had one of those 'pause insertion' systems that I have heard
talk of.
> > /*
> > - * We only get here if the index is completely empty. Lock relation
> > - * because nothing finer to lock exists.
> > + * Since we have no pages locked, it's possible for another
> > + * transaction to insert data between _bt_search() and
> > + * PredicateLockRelation(). We have to try again after taking a
> > + * relation-level predicate lock, to close a narrow window where we
> > + * wouldn't scan concurrently inserted tuples, but the writer wouldn't
> > + * see our predicate lock.
> > */
>
> I'd like to keep the old comment here, it's good context, and add the
> new text in addition to the old.
Done.
> v3-0002-Fix-race-in-SSI-interaction-with-bitmap-heap-scan.patch: Can we
> keep the optimization when not using SSI?
Done.
I'll push these in a couple of days if there are no further comments.
| Attachment | Content-Type | Size |
|---|---|---|
| v4-0001-Fix-race-in-SSI-interaction-with-empty-btrees.patch | text/x-patch | 2.7 KB |
| v4-0002-Fix-race-in-SSI-interaction-with-bitmap-heap-scan.patch | text/x-patch | 2.5 KB |
| v4-0003-Fix-race-in-SSI-interaction-with-gin-fast-path.patch | text/x-patch | 3.2 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alexander Lakhin | 2023-06-28 06:00:00 | Re: BUG #17997: Assert failed in validatePartitionedIndex() when attaching partition index to child of valid index |
| Previous Message | Andres Freund | 2023-06-28 00:03:52 | Re: BUG #18003: FATAL: cannot request additional shared memory outside shmem_request_hook |