@@ -329,6 +329,56 @@ ORDER BY pk LIMIT 5] OFFSET 2
329329 spans: /"\xc0"-/"\xc0"/PrefixEnd
330330 limit: 5
331331
332+ # Test that the synthesized UNIQUE WITHOUT INDEX constraints do not cause
333+ # lookups into redundant arbiters.
334+ query T
335+ SELECT * FROM [
336+ EXPLAIN INSERT INTO regional_by_row_table (crdb_region, pk, pk2, a, b)
337+ VALUES ('ca-central-1', 7, 7, 8, 9) ON CONFLICT DO NOTHING
338+ ] OFFSET 2
339+ ----
340+ ·
341+ • insert
342+ │ into: regional_by_row_table(pk, pk2, a, b, j, crdb_region)
343+ │ auto commit
344+ │ arbiter constraints: regional_by_row_table_pkey, regional_by_row_table_b_key, uniq_idx
345+ │
346+ └── • render
347+ │
348+ └── • distinct
349+ │ distinct on: arbiter_uniq_idx_distinct
350+ │ nulls are distinct
351+ │
352+ └── • render
353+ │
354+ └── • lookup join (anti)
355+ │ table: regional_by_row_table@uniq_idx (partial index)
356+ │ lookup condition: (column4 = a) AND (crdb_region IN ('ap-southeast-2', 'ca-central-1', 'us-east-1'))
357+ │ pred: column5 > 0
358+ │
359+ └── • lookup join (anti)
360+ │ table: regional_by_row_table@regional_by_row_table_b_key
361+ │ equality cols are key
362+ │ lookup condition: (column5 = b) AND (crdb_region IN ('ap-southeast-2', 'ca-central-1', 'us-east-1'))
363+ │
364+ └── • cross join (anti)
365+ │
366+ ├── • values
367+ │ size: 6 columns, 1 row
368+ │
369+ └── • union all
370+ │ limit: 1
371+ │
372+ ├── • scan
373+ │ missing stats
374+ │ table: regional_by_row_table@regional_by_row_table_pkey
375+ │ spans: [/'ap-southeast-2'/7 - /'ap-southeast-2'/7]
376+ │
377+ └── • scan
378+ missing stats
379+ table: regional_by_row_table@regional_by_row_table_pkey
380+ spans: [/'ca-central-1'/7 - /'ca-central-1'/7] [/'us-east-1'/7 - /'us-east-1'/7]
381+
332382# Tests for locality optimized search.
333383
334384# Split the table into 3 regions and change the leaseholders to be "local"
@@ -624,7 +674,7 @@ SELECT message FROM [SHOW KV TRACE FOR SESSION] WITH ORDINALITY
624674Scan /Table/112/1/"@"/10/0, /Table/112/1/"\x80"/10/0, /Table/112/1/"\xc0"/10/0
625675fetched: /child/child_pkey/?/10/c_p_id -> /10
626676Scan /Table/111/1/"@"/10/0, /Table/111/1/"\x80"/10/0, /Table/111/1/"\xc0"/10/0
627- fetched: /parent/parent_pkey/?/? -> <undecoded>
677+ fetched: /parent/parent_pkey/'ap-southeast-2'/10 -> <undecoded>
628678
629679# Semi join with locality optimized search disabled.
630680query T
@@ -654,7 +704,7 @@ SELECT message FROM [SHOW KV TRACE FOR SESSION] WITH ORDINALITY
654704Scan /Table/112/1/"@"/10/0, /Table/112/1/"\x80"/10/0, /Table/112/1/"\xc0"/10/0
655705fetched: /child/child_pkey/?/10/c_p_id -> /10
656706Scan /Table/111/1/"@"/10/0, /Table/111/1/"\x80"/10/0, /Table/111/1/"\xc0"/10/0
657- fetched: /parent/parent_pkey/?/? -> <undecoded>
707+ fetched: /parent/parent_pkey/'ap-southeast-2'/10 -> <undecoded>
658708output row: [10 10]
659709
660710# Inner join with locality optimized search disabled.
@@ -750,7 +800,7 @@ SELECT * FROM [EXPLAIN (DISTSQL) SELECT * FROM child WHERE NOT EXISTS (SELECT *
750800 table: child@child_pkey
751801 spans: [/'ca-central-1'/10 - /'ca-central-1'/10] [/'us-east-1'/10 - /'us-east-1'/10]
752802·
753- Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJy0k2GLm04Qxt__P8Uwb5L82ZLVWHosBAx3hnpYvSZCDy4SrA539oxr3RVyhHz3oqbcGZrQu7Zv1J2dx_09w7M7VN9zFLh0POcyhP9hvgg-wZ1ze-PNXB-GV-4yXH72RtBvSB6yPIUvH52FA0M_CMG5bRph2G8r44oKfegr11kKU0jWzcdoBDP_CoZJVzT4KIJgPl86IZjIsJAp-fGGFIo7NDBiWFYyIaVk1ZR2bYObblFwhllR1ropRwwTWRGKHepM54QCw_hrTguKU6rGHBmmpOMsb3_berDb57p8pCdkeCnzelMoAQ0WO6Aiw2UZN9XxCler7QVf4djgYw5xkYIBUj9QhdGeoaz1M4nS8T2hMPbsbbTGX6C1D6Qn6cyTdM9QiqoszqEuZJVSRWmPK9r_woYv38lybPYNeNkm02CcROGvGdS1zIrDnCb9Y8KnkgR4zjyEmR-6cB24PjLskmh3r58D9KR8rEv4JrMCZCFgaE9gCrZ5yKZtwRS2A4sPhBC2wbnBP4yQYVBrAbbBbPOkmckbzVj_0kxzn7eDi5d2GGwHSc_fbxq0XmNwQaqUhaKj5JzKQcSQ0nvqUqhkXSV0U8mkPaZbBq2uLaSkdLdrdgu3aLfae_dSbPyJ2DwrnvTE_Fg8OSu2zouts-L3R-Jo_9-PAAAA__9jBNRX
803+ Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJy0k2Fro04Qxt__P8Uwb5L82SOr8biyULC0hrN4ppcIV2gkWHdovdpdb1VIKfnuh5qjMVwCzd29UXd2Hvf3DM--YvkjR4ELL_AuI_gfpvPZF7jzbm-CCz-E4ZW_iBZfgxH0G9LHLJfw7bM392AYziLwbptGGPbbisSQqrZ9xSqTcA7pqvkYjeAivIJh2hUtPophNp0uvAhsZKi0pDB5phLFHVoYMyyMTqkstWlKr22DL9coOMNMFXXVlGOGqTaE4hWrrMoJBUbJfU5zSiSZMUeGkqoky9vfth7c9rkqnugFGV7qvH5WpYAGi21RkeGiSJrqeInL5fqML3Fs8TGHREmwQFePZDDeMNR19UZSVskDobA27DRa6y_QulvSg3T2Qbo3qJJMluRQK20kGZI9rnjzGxuh_qCLsd03EGTPWQXWQRT-nkFd60xt5zTpHxO9FCQg8KYRXISRD9czP0SGXRLd7vVrgIHWT3UB33WmQCsBQ3cC5-Da22y6DpzDeuDwgRDCtTi3-KfR7tyLbu5G3q8MPWRaHTQ3OdGc8y_NNfd7PTjbtcdgPUh7fk807LzH8JzKQquS9pJ1KCcxQ5IP1KW01LVJ6cbotD2mW85aXVuQVFbdrt0tfNVutfdyV2z9idg-Kp70xHxfPDkqdo6LnaPij3viePPfzwAAAP__dhHiVw==
754804
755805statement ok
756806SET vectorize=on
@@ -783,7 +833,7 @@ SELECT message FROM [SHOW KV TRACE FOR SESSION] WITH ORDINALITY
783833Scan /Table/112/1/"@"/10/0
784834fetched: /child/child_pkey/?/10/c_p_id -> /10
785835Scan /Table/111/1/"@"/10/0
786- fetched: /parent/parent_pkey/?/? -> <undecoded>
836+ fetched: /parent/parent_pkey/'ap-southeast-2'/10 -> <undecoded>
787837
788838statement ok
789839SET tracing = on,kv,results; SELECT * FROM child WHERE NOT EXISTS (SELECT * FROM parent WHERE p_id = c_p_id) AND c_id = 20; SET tracing = off
@@ -801,7 +851,7 @@ Scan /Table/112/1/"\x80"/20/0, /Table/112/1/"\xc0"/20/0
801851fetched: /child/child_pkey/?/20/c_p_id -> /20
802852Scan /Table/111/1/"@"/20/0
803853Scan /Table/111/1/"\x80"/20/0, /Table/111/1/"\xc0"/20/0
804- fetched: /parent/parent_pkey/?/? -> <undecoded>
854+ fetched: /parent/parent_pkey/'ca-central-1'/20 -> <undecoded>
805855
806856# Semi join with locality optimized search enabled.
807857query T
@@ -827,7 +877,7 @@ SELECT * FROM [EXPLAIN (DISTSQL) SELECT * FROM child WHERE EXISTS (SELECT * FROM
827877 table: child@child_pkey
828878 spans: [/'ca-central-1'/10 - /'ca-central-1'/10] [/'us-east-1'/10 - /'us-east-1'/10]
829879·
830- Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJysk1Fr2z4Uxd__n-JyX5L80YjsFFYEAZfWYS5u0sWGFRoTPPvSenUkT5IhJeS7D9sZrcPS0W0vtnV1jvTT0fUOzfcSBUZ-6F_G8D_MlosbuPfvbsOLYA7DqyCKo8_hCPqC7LEoc_jyyV_64N81Ghj2FVWqSdqDpFoXOUwhWzcfI7iYX8Ew62oOHyWwmM0iPwYXGUqV0zzdkEFxjw4mDCutMjJG6aa0awVBvkXBGRayqm1TThhmShOKHdrCloQC4_RrSUtKc9JjjgxzsmlRtsu29F77XFdP9IwML1VZb6QR0GCxAykyjKq0qY5XuFptz_kKxw4fc0hlDg4o-0gakz1DVdsXEmPTB0Lh7Nmf0Tr_gNY7kJ6kc0_SvUAZ0kVaQi2VzklT3uNK9r84xlx9UNXY7R8gLDaFBeckCn9PUNeqkIecJv1t4ueKBIT-LIbIvwngehHMkWHXiF73-hlgqNRTXcE3VUhQUsDQm8AUPPfQm94ZTGE7OOMDIYTncO7wjyNkuKSNsgTlb93Nr7MdnL_2M9gOst6CzYqL2grwHOa5J-OZvCeeJZlKSUNHV3Uq-IQh5Q_UXbtRtc7oVqus3aYbLlpfW8jJ2G7W7QaBbKfaRn9tdv7G7L5pnvTM_Ng8edN8dmRO9v_9CAAA__-CWJEk
880+ Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJysk1Fr2zAQx9_3KY57STI0IjuBFUHApXWYi5t0sWGFxgTXOlKvjuTJNqSEfPdhO6NxWDq67cW2TveXfve_8w6LHxkKDFzfvQrhI0wX81t4cO_v_EtvBv1rLwiDr_4AugnJU5pJ-PbFXbjg3tc50O9m5LEhVR5S8lUqYQLJqv4YwOXsGvpJG7P4IIL5dBq4IdjIUGlJs3hDBYoHtDBimBudUFFoU4d2TYIntyg4w1TlVVmHI4aJNoRih2VaZoQCw_gxowXFksyQI0NJZZxmzbENvdM8V_kzvSDDK51VG1UIqLHYgRQZBnlcR4dLXC63F3yJQ4sPOcRKggW6fCKD0Z6hrspXkqKM14TC2rO_o7X-A61zID1LZ5-le4UqyKRxBpXSRpIh2eGK9r8pY6Y_6Xxodwvw001agnUWhb_HqBudqoNPo-414UtOAnx3GkLg3npwM_dmyLAdRKd9_TLQ1_q5yuG7ThVoJaDvjGACjn2YTWcME9j2xrwnhHAszi3-eYAMF7TRJUH2R3X962x7F8d6Btte0jlwcNzJvO2kkY8rQ-tUq7N2jd5j14KKXKuCTlp3rhERQ5Jraseg0JVJ6M7opLmmXc4bXROQVJTtrt0uPNVsNYN_LLb-RWy_KR51xPxUPHpTPD4RR_sPPwMAAP__OaSYJA==
831881
832882statement ok
833883SET vectorize=on
@@ -859,7 +909,7 @@ SELECT message FROM [SHOW KV TRACE FOR SESSION] WITH ORDINALITY
859909Scan /Table/112/1/"@"/10/0
860910fetched: /child/child_pkey/?/10/c_p_id -> /10
861911Scan /Table/111/1/"@"/10/0
862- fetched: /parent/parent_pkey/?/? -> <undecoded>
912+ fetched: /parent/parent_pkey/'ap-southeast-2'/10 -> <undecoded>
863913output row: [10 10]
864914
865915statement ok
@@ -878,7 +928,7 @@ Scan /Table/112/1/"\x80"/20/0, /Table/112/1/"\xc0"/20/0
878928fetched: /child/child_pkey/?/20/c_p_id -> /20
879929Scan /Table/111/1/"@"/20/0
880930Scan /Table/111/1/"\x80"/20/0, /Table/111/1/"\xc0"/20/0
881- fetched: /parent/parent_pkey/?/? -> <undecoded>
931+ fetched: /parent/parent_pkey/'ca-central-1'/20 -> <undecoded>
882932output row: [20 20]
883933
884934# Inner join with locality optimized search enabled.
@@ -905,7 +955,7 @@ SELECT * FROM [EXPLAIN (DISTSQL) SELECT * FROM child INNER JOIN parent ON p_id =
905955 table: child@child_pkey
906956 spans: [/'ca-central-1'/10 - /'ca-central-1'/10] [/'us-east-1'/10 - /'us-east-1'/10]
907957·
908- Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJysk9Fq2zAUhu_3FIdzk2RoRLYDK4KAS-swl8zunMAGjQmefWi9OpYnyZAR8u4jckbrsHR0241tHemTPv2Sd6i_VyhwEcyDqyW8hVkSf4S74Mvt_DKMYHgdLpaLT_MR9AfkD2VVQBhFQQI3cRhBkymqDcQRNOuygCnka_vx-UOQBJB3NYenEM9mi2AJLjKsZUFRtiGN4g4dTBk2SuaktVSH0s4OCIstCs6wrJvWHMopw1wqQrFDU5qKUOAy-1pRQllBasyRYUEmKys7rRX17XPdPNIPZHglq3ZTa2Gt2FEUGS6a7FAdr3C12l7wFY4dPuaQ1QU4IM0DKUz3DGVrnky0ye4JhbNnf2fr_Adb_2h61s49a_ckpUmVWQVtLVVBioqeV7r_zTYi-U42Y7e_gXm5KQ04Z1X4a4K6kWV9zMnrL9PdNr97_UpqLuVj28A3WdYgawFD34Mp-O4ILqNrGPoTmMJ2MOEDIYTvcO7w9yNkmNBGGoLqj_Thd9gOLp7zDLaDvDfhYca4NQJ8h_ku872zUXiviSIh3cha08mxnAs5ZUjFPXVHrGWrcrpVMrfLdM3YcrZQkDZdr9s1wtp22Uv9HHb-BXZfhL0ezE9h70V4cgKn-zc_AwAA__8ZoYaJ
958+ Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJysk2Fr2zwQgL-_v-K4L2leNCLbhRVBwKV1mEtmd05gg8YE1zpSr47kyTJkhPz3ETujcVg6uu2LbZ30SI_uzlusv5UocBZMg5s5_A-TJP4ID8GX--l1GMHFbTibzz5Nh9BfkD8VpYQwioIE7uIwgiozpCzEEVTLQsIY8mX78flDkASQdzGHpxBPJrNgDi4yVFpSlK2pRvGADqYMK6Nzqmtt9qFtuyCUGxScYaGqxu7DKcNcG0KxRVvYklDgPHssKaFMkhlxZCjJZkXZbtuK-u1zWT3Td2R4o8tmrWrRWrGDKDKcVdk-OlrgYrG54gscOXzEIVMSHND2iQymO4a6sS8mtc1WhMLZsT-zdf6BrX8wPWvnnrV7karJFFkJjdJGkiHZ80p3v7hGpN_pauT2LzAt1oUF56wKf0ui7nShDnny-sd03eZ3r5-Zmmr93FTwVRcKtBJw4XswBt8dwnV0Cxf-JYxhM7jkAyGE73Du8PdDZJjQWluC8rf0_nfYDK6OeQabQd7bcHhcsqormZGPS0OrQitkGDdWgO8w32W-dzZP3lvylFBdaVXTSc3OVSBlSHJFXf1r3Zic7o3O22O6YdxybUBSbbtZtxuEqp1qO_4Ydv4Gdl-FvR7MT2HvVfjyBE53__0IAAD__5JOkJo=
909959
910960statement ok
911961SET vectorize=on
@@ -983,7 +1033,7 @@ SELECT * FROM [EXPLAIN (DISTSQL) SELECT * FROM child LEFT JOIN parent ON p_id =
9831033 table: child@child_pkey
9841034 spans: [/'ca-central-1'/10 - /'ca-central-1'/10] [/'us-east-1'/10 - /'us-east-1'/10]
9851035·
986- Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJysk1Fr2zAUhd_3Ky73Je3QiGwXVgQBl9ZhKZ7dOR4bNCZ49qX16lieJENKyH8fkTNah6Wj215s60jn6tPR9Qb1jxoFzoMwuEzhLUyT-CPcBl9vwotZBCdXs3k6_xSewnBBcV_VJYTBNIXreBZBmytqDMQRtMuqhAkUS_vx5UOQBFD0msMziKfTeZCCiwwbWVKUr0ijuEUHM4atkgVpLdVO2tgFs3KNgjOsmrYzOzljWEhFKDZoKlMTCkzzbzUllJekxhwZlmTyqrZlLadvn8v2gR6R4aWsu1WjhaVie1BkOG_znTpe4GKxPucLHDt8zCFvSnBAmntSmG0Zys48kWiT3xEKZ8v-jtb5D7T-nvQonXuU7glKk6ryGrpGqpIUlQOubPubY0TynWzH7vAAYbWqDDhHUfhrgrqWVbPPyRtukz62JPruiz-nQWJ7EBn2Xej3r18JhlI-dC18l1UDshFw4nswAd89hYvoCk78M5jAenTGR0II3-Hc4e9PkWFCK2kI6j-6d3_JenT-3M9gPSoGBXcV484I8B3mu8z3jkbkvSaihHQrG00H13Us_IwhlXfUX72WnSroRsnCbtMPY-uzQkna9LNuP5g1dso2-3Oz8y9m90WzNzDzQ7P3ovnswJxt3_wMAAD__4udjM4 =
1036+ Diagram: https://cockroachdb.github.io/distsqlplan/decode.html#eJysk2Fr2zwQgL-_v-K4L2leNCI7hRVBwaV1WIpnd47HBo0JrnW0Xh3Jk2VIKfnvI3JH67B0dNuXxDrpkR7dnR6x_V6jwEUYhecZ_A-zNPkI1-HXq-hsHsPRxXyRLT5FYxguKO-qWkIUzjK4TOYxNIUhZSGJoVlVEk6hXLmPLx_CNISyj3k8h2Q2W4QZ-MhQaUlxsaYWxTV6mDNsjC6pbbXZhR7dgrncoOAMK9V0dhfOGZbaEIpHtJWtCQVmxU1NKRWSzIQjQ0m2qGq3rfMM3O-quacHZHiu626tWuGs2JMoMlw0xS46WeJyuTnhS5x4fMKhUBI80PaODOZbhrqzzyatLW4Jhbdlf2br_QPb4Mn0oJ1_0O5ZqiVTFTV0ShtJhuTAK9_-4hqxfqebiT-8QFStKwveQRX-lkRd6ko95Wk6PCZ7aEj03Zd8zsLU9SAy7Lsw6P9-ZjDS-r5r4JuuFGgl4CiYwikE_hjO4gs4Co7hFDajYz4SQgQe5x5_P0aGKa21Jah_S-9eyWZ08pJnsBmVgw3HL0vZ9KU08mZl6LbSChkmnRUQeCzwWTA9mL_pW_KXUtto1dJeLQ9VJmdI8pb6vmh1Z0q6Mrp0x_TDxHEuIKm1_azfD-bKTbmX8BL2_gb2X4WnA5jvw9NX4eM9ON_-9yMAAP__uiqW3w= =
9871037
9881038statement ok
9891039SET vectorize=on
@@ -2417,7 +2467,7 @@ FROM
24172467 regional_by_row_table_as4@a_idx
24182468 WHERE
24192469 a
2420- IN (1, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18,
2470+ IN (1, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18,
24212471 18, 19, 22, 23, 24, 25, 28, 30, 33, 34, 39, 40)
24222472 LIMIT
24232473 5
@@ -2479,7 +2529,7 @@ FROM
24792529 regional_by_row_table_as4@a_idx
24802530 WHERE
24812531 a
2482- IN (1, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18,
2532+ IN (1, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18,
24832533 18, 19, 22, 23, 24, 25, 28, 30, 33, 34, 39, 40)
24842534 LIMIT
24852535 5
@@ -2522,7 +2572,7 @@ FROM
25222572 regional_by_row_table_as4@a_idx
25232573 WHERE
25242574 a
2525- IN (1, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18,
2575+ IN (1, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18,
25262576 18, 19, 22, 23, 24, 25, 28, 30, 33, 34, 39, 40)
25272577 LIMIT
25282578 5
0 commit comments