Replace a large number of OR clauses with ANY expression

Edit
ID 4450
Title Replace a large number of OR clauses with ANY expression
Topic Performance
Created 2023-07-18 14:09:00
Last modified 2024-10-05 09:39:59 (4 days ago)
Latest email 2024-10-09 09:31:49 (58 minutes ago)
Status
2024-11: Needs review
2024-09: Moved to next CF
2024-07: Moved to next CF
2024-03: Moved to next CF
2024-01: Moved to next CF
2023-11: Moved to next CF
2023-09: Moved to next CF
Target version 17
Authors Andrei Lepikhov (lepikhov), Alena Rybakina (alenka)
Reviewers Nikolay Shaplov (nataraj), Ranier Vilela (raniervilela)Become reviewer
Committer Alexander Korotkov (smagen)
Links CFbot results (CirrusCI) CFbot GitHub
Checkout latest CFbot patchset Go to your local checkout of the PostgreSQL repository and run:
git remote add commitfest https://github.com/postgresql-cfbot/postgresql.git
git fetch commitfest cf/4450
git checkout commitfest/cf/4450
Emails
POC, WIP: OR-clause support for indexes
First at 2015-12-26 18:04:58 by Teodor Sigaev <teodor at sigaev.ru>
Latest at 2024-10-09 09:31:49 by Andrei Lepikhov <lepihov at gmail.com>
Latest attachment (0001-Comments-for-the-0001-patch.patch) at 2024-10-09 09:31:49 from Andrei Lepikhov <lepihov at gmail.com>
    Attachment (0001-Comments-for-the-0001-patch.patch) at 2024-10-09 09:31:49 from Andrei Lepikhov <lepihov at gmail.com> (Patch: Yes)
    Attachment (v40-0002-Teach-bitmap-path-generation-about-transforming-.patch) at 2024-09-23 11:10:59 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v39-0002-Teach-bitmap-path-generation-about-transforming-.patch) at 2024-09-09 10:36:54 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (minor-fix.no-cbot) at 2024-09-04 15:42:17 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (minor-fix.no-cbot) at 2024-09-04 15:31:36 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (minor-fix.no-cfbot) at 2024-09-03 09:52:55 from Andrei Lepikhov <lepihov at gmail.com> (Patch: Yes)
    Attachment (diff.diff.no-cfbot) at 2024-08-26 10:41:01 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v37-0001-Transform-OR-clauses-to-SAOP-s-during-index-matc.patch) at 2024-08-23 12:58:46 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v36-0002-Teach-bitmap-path-generation-about-transforming-.patch) at 2024-08-21 14:52:03 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v35-0002-Teach-bitmap-path-generation-about-transforming-.patch) at 2024-08-21 00:17:40 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v34-0001-Transform-OR-clauses-to-SAOP-s-during-index-matching.patch) at 2024-08-15 19:13:32 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v33-0001-Transform-OR-clauses-to-SAOP-s-during-index-matching.patch) at 2024-08-07 23:53:35 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v32-0001-Transform-OR-clauses-to-SAOP-s-during-index-matc.patch) at 2024-08-07 01:11:08 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v31-0001-Transform-OR-clauses-to-SAOP-s-during-index-matching.patch) at 2024-08-05 20:24:47 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v30-0002-Teach-bitmap-path-generation-about-transforming-.patch) at 2024-08-05 19:48:53 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v29-0002-Teach-bitmap-scan-about-transforming-OR-clauses-.patch) at 2024-07-29 02:36:57 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v28-Transform-OR-clauses-to-ANY-expression.patch) at 2024-07-25 14:04:44 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v27-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-07-17 00:03:03 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v26-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-07-11 16:17:42 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (or.diff.no-cfbot) at 2024-07-10 23:30:22 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (or.diff) at 2024-07-09 01:57:15 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v25-fix.diff) at 2024-06-17 04:01:54 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v25-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-06-14 12:00:33 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v24-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-04-01 06:37:58 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v22-1-0002-Teach-generate_bitmap_or_paths-to-build-BitmapOr-pat.patch) at 2024-03-19 05:16:59 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v23-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-03-15 05:05:02 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v22-1-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-03-14 10:11:15 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v22-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-03-13 05:52:50 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (unique_any_elements_change.no-cfbot) at 2024-03-07 20:28:59 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v20-0002-Teach-generate_bitmap_or_paths-to-build-BitmapOr.patch) at 2024-03-07 14:51:43 from Alexander Korotkov <aekorotkov at gmail.com> (Patch: Yes)
    Attachment (v19-0001-Transform-OR-clauses-to-ANY-expression.patch) at 2024-03-05 07:59:16 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v18-0001-Minor-miscellaneous-refactor-based-on-v18.no-cfbot) at 2024-03-04 02:26:48 from jian he <jian.universality at gmail.com> (Patch: Yes)
    Attachment (v18-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2024-02-29 08:59:23 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v1-0001-Add-enable_or_transformation-doc-entry.no-cfbot) at 2024-02-26 04:10:47 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v1-0001-Add-enable_or_transformation-doc-entry.no-cfbot) at 2024-02-24 11:28:01 from jian he <jian.universality at gmail.com> (Patch: Yes)
    Attachment (fix.diff) at 2024-02-20 03:18:23 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v17-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2024-02-19 08:35:19 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (expression_num_or_1_100.sql) at 2024-02-16 00:00:00 from jian he <jian.universality at gmail.com> (Patch: No)
    Attachment (0002-Teach-generate_bitmap_or_paths-to-build-BitmapOr-pat-20240213.patch) at 2024-02-13 10:43:21 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (0002-Teach-generate_bitmap_or_paths-to-build-BitmapOr-pat-20240212.patch) at 2024-02-12 05:52:13 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v1-0001-minor-refactor-generate_saop_pathlist.no-cfbot) at 2024-02-10 05:00:00 from jian he <jian.universality at gmail.com> (Patch: Yes)
    Attachment (v16-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2024-02-08 05:34:38 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v15-1-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2024-02-02 19:06:17 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v14_comments.no-cfbot) at 2024-01-31 10:15:00 from jian he <jian.universality at gmail.com> (Patch: Yes)
    Attachment (v14-1-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2023-12-05 10:55:00 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v14-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2023-12-04 06:50:34 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v14-0001-Transform-OR-clause-to ANY-expressions.patch) at 2023-11-30 10:57:26 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (0001-OR-to-ANY-in-parser-and-ANY-to-OR-in-index.diff) at 2023-11-30 08:05:31 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v13-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2023-11-28 11:46:51 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (cause_problem.diff.txt) at 2023-11-28 03:52:20 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v12-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2023-11-27 08:02:09 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v11-1-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2023-11-24 03:30:39 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v11-0001-Transform-OR-clause-to-ANY-expressions.patch) at 2023-11-23 09:23:20 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v10-0001-PATCH-Replace-OR-clause-to-ANY-expressions.-Replace-.patch) at 2023-11-21 11:31:11 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v9-0001-PATCH-Replace-OR-clause-to-ANY-expressions.patch) at 2023-11-21 00:50:15 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (changes.txt) at 2023-11-20 08:52:08 from Andrei Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (v9-Replace-OR-clause-to-ANY-expressions.patch) at 2023-11-13 19:48:23 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (or_patch_changes.diff) at 2023-11-10 09:20:57 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v8.1-Replace-OR-clause-to-ANY-expressions.patch) at 2023-11-06 13:51:45 from Alena Rybakina <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v8.0-Replace-OR-clause-to-ANY-expressions.-Replace-X-N1-O.patch) at 2023-10-25 11:04:24 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (0001-Replace-OR-clause-to-ANY-expressions.diff) at 2023-10-04 19:19:59 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (experimantal_version.diff) at 2023-09-29 17:35:13 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (flamegraph1.png) at 2023-09-26 09:21:10 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: No)
    Attachment (flamegraph1.png) at 2023-09-26 09:13:29 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: No)
    Attachment (v7-v0-Replace-OR-clause-to-ANY.patch) at 2023-09-26 09:08:52 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (diff_fix_sel1.diff) at 2023-08-17 10:20:33 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (regresssion.diff) at 2023-08-17 10:08:03 from "a.rybakina" <a.rybakina at postgrespro.ru> (Patch: Yes)
    Attachment (v7-Replace-OR-clause-to-ANY-expressions.patch) at 2023-08-02 15:58:37 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (v6-Replace-OR-clause-to-ANY-expressions.patch) at 2023-07-18 14:25:28 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (diff-5.diff) at 2023-07-11 18:11:31 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (v5-Replace-OR-clause-to-ANY-expressions.-Replace.patch) at 2023-07-11 14:13:05 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (v5-Replace-OR-clause-to-ANY-expressions.patch) at 2023-07-11 12:29:21 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (diff-4.diff) at 2023-07-11 08:47:45 from Andrey Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (0001-Replace-OR-clause-to-ANY-expressions.patch) at 2023-07-10 08:38:17 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (diff-3.diff) at 2023-07-10 03:12:23 from Andrey Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (0001-Replace-OR-clause-to-ANY-expressions.patch) at 2023-07-07 08:20:20 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (delta-2.diff) at 2023-07-07 02:43:26 from Andrey Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (delta.diff) at 2023-07-06 10:20:46 from Andrey Lepikhov <a.lepikhov at postgrespro.ru> (Patch: Yes)
    Attachment (time_comsuption_with_indexes.png) at 2023-07-05 20:06:26 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: No)
    Attachment (time_comsuption_with_indexes.png) at 2023-07-05 19:39:08 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: No)
    Attachment (transform_or_v0.diff) at 2023-06-29 09:32:51 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (graphs.html) at 2023-06-27 15:49:20 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: No)
    Attachment (regression.diffs) at 2023-06-27 13:19:48 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (saop_patch_test.sql) at 2023-06-26 03:18:37 from Peter Geoghegan <pg at bowt.ie> (Patch: No)
    Attachment (regression.diffs) at 2023-06-26 02:38:14 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (0001-Replace-clause-X-N1-OR-X-N2-.-with-X-ANY-N1-N2-on.patch) at 2023-06-26 01:47:43 from Alena Rybakina <lena.ribackina at yandex.ru> (Patch: Yes)
    Attachment (demo.sql) at 2022-12-28 04:19:27 from Andrey Lepikhov <a.lepikhov at postgrespro.ru> (Patch: No)
    Attachment (0001-idx_or_core-v4.patch.gz) at 2016-03-18 16:38:05 from Teodor Sigaev <teodor at sigaev.ru> (Patch: No)
    Attachment (index_or-3.patch.gz) at 2016-03-17 17:19:55 from Teodor Sigaev <teodor at sigaev.ru> (Patch: No)
    Attachment (index_or-2.patch.gz) at 2016-02-29 18:04:38 from Teodor Sigaev <teodor at sigaev.ru> (Patch: No)
    Attachment (index_or-1.patch.gz) at 2015-12-26 18:04:58 from Teodor Sigaev <teodor at sigaev.ru> (Patch: No)
History
When Who What
2024-10-05 09:39:59 Andrey Borodin (x4m) Closed in commitfest 2024-09 with status: Moved to next CF
2024-08-01 06:14:08 Corey Huinker (coreyh) Closed in commitfest 2024-07 with status: Moved to next CF
2024-06-26 17:09:10 Nikolay Shaplov (nataraj) Added nataraj as reviewer
2024-04-12 11:06:10 Andrey Borodin (x4m) Closed in commitfest 2024-03 with status: Moved to next CF
2024-04-12 11:06:05 Andrey Borodin (x4m) New status: Needs review
2024-04-09 06:30:29 Andrei Lepikhov (lepikhov) Closed in commitfest 2024-03 with status: Committed
2024-04-09 06:30:29 Andrei Lepikhov (lepikhov) Changed committer to smagen
2024-04-02 16:18:43 Alena Rybakina (a.rybakina) New status: Needs review
2024-02-01 18:52:59 vigneshwaran C (vignesh.postgres) Closed in commitfest 2024-01 with status: Moved to next CF
2024-01-30 10:51:18 vigneshwaran C (vignesh.postgres) New status: Waiting on Author
2023-12-04 09:47:36 John Naylor (john.naylor) Closed in commitfest 2023-11 with status: Moved to next CF
2023-11-24 03:17:21 Andrei Lepikhov (lepikhov) Changed name to Replace a large number of OR clauses with ANY expression
2023-10-04 15:06:46 Alena Rybakina (a.rybakina) New status: Needs review
2023-10-02 10:56:58 Peter Eisentraut (petere) Closed in commitfest 2023-09 with status: Moved to next CF
2023-09-20 12:42:37 Peter Eisentraut (petere) New status: Waiting on Author
2023-07-18 14:37:32 Alena Rybakina (a.rybakina) Changed targetversion to 17
2023-07-18 14:12:06 Alena Rybakina (a.rybakina) Changed reviewers to Ranier Vilela (raniervilela)
2023-07-18 14:12:06 Alena Rybakina (a.rybakina) Changed authors to Andrei Lepikhov (lepikhov), Alena Rybakina (alenka)
2023-07-18 14:09:00 Alena Rybakina (a.rybakina) Attached mail thread 567ED6CA.2040504@sigaev.ru
2023-07-18 14:09:00 Alena Rybakina (a.rybakina) Created patch record
Edit