# LogicTest: 5node-dist

statement ok
CREATE TABLE t (k INT PRIMARY KEY, v INT, w INT, INDEX v(v))

# Prevent the merge queue from immediately discarding our splits.
statement ok
SET CLUSTER SETTING kv.range_merge.queue_enabled = false;

# Split the index into 5 parts, as if numbers were in the range 1 to 100.
statement ok
ALTER INDEX t@v SPLIT AT SELECT (i * 10)::int FROM generate_series(1, 4) AS g(i)

# Relocate the five parts to the five nodes.
statement ok
ALTER INDEX t@v EXPERIMENTAL_RELOCATE
  SELECT ARRAY[i+1], (i * 10)::int FROM generate_series(0, 4) AS g(i)

query TTITI colnames
SHOW EXPERIMENTAL_RANGES FROM INDEX t@v
----
start_key  end_key  range_id  replicas  lease_holder
NULL       /10      1         {1}       1
/10        /20      2         {2}       2
/20        /30      3         {3}       3
/30        /40      4         {4}       4
/40        NULL     5         {5}       5

query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM t WHERE v > 10 AND v < 50]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJyslDtrwzAURvf-ivLNt8SvPOrJazokJXQrHlzrEgyJZSS5tJT89-IoUDk0ioMz6nHu8RmsH9RS8KrYs0b6jhCECIQYhASEKXJCo2TJWkvVXbHAUnwhDQhV3bTGbpvK7Bgp2loqwYoFCIJNUe268_yQE0qpGOnf1ZV8ks1kcXaRIFtzGpsTtCm2jDQ-kKMOHfU_g9-Kjx1vuBCsJkFvPD4zA8K6NeljFuKSLbzF9iKr-iRL-rJGVftCfbtKyiLK4oviqCeOhmeG4zOv2JzM6X0z4-GZ0fjMKzYnc3bfzGR4Zjw-84rNyZzfNzPwizesG1lrHvTXB92zwWLL9o3RslUlvypZHjV2uT5yxw3B2tjTZ7tY1vao-0AXDr1w5IcjLxz04PAcjr1w4jcnY8xTLzzzm2djzHMvvPCbFzeZ88PDbwAAAP__eQw40w==

query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM t WHERE v > 10 AND v < 50 ORDER BY v]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJyslM1uozAURvfzFKNvO3cUMORnWLHNLJIq6q5iQfFVhJRgZJuqVcW7V8GRClHjEIWlf46Pz-Z-olKSN_mRDZIXhCAIECIQYhDmyAi1VgUbo_TpigPW8h1JQCirurFu25b2wEigtGTNEgTJNi8P3bup-IOszQiF0ozk-_ZG_VX1bDW4nbUE1djzyxnB2HzPSKKWevawZ__h4ef89cA7ziXrWTD8zFtqQdg2NvmdhpQKXBOG9wj_q7I6--Khr9blMdcfF1ZKo6tiMRCL8aXhJKU3hL3S-bSl0fhSMUnpDWGvdDFtaTy-NJqk9IawV7qctjTwi3dsalUZHjUBgtMIYblnN3KManTBT1oVncYttx3XbUg21p3-c4t15Y5OH-zDoRcWflh44WAAh5dw5IVjvzl-xDz3wgu_efGIeemFV37z6i5z1v76CgAA___W2DtJ

# Here we care about ordering by v, but v is not otherwise used.
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT w FROM t WHERE v > 10 AND v < 50 ORDER BY v]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJyslL9uqzAYR_f7FFe_ta6CDflTJtZ0SKqoW8VA8acIKcHINlWrinevgiPVVK1DFEZsn-_4DPgTtZK0KY5kkL6Ag0GAIQZDAoY5coZGq5KMUfp0xAFr-Y40YqjqprVu2Vb2QEihtCRNEgySbFEd-rmZuEPe5Qyl0oT0-_RG3atmthqczjsG1drz5JzB2GJPSOOOeXbu2X8Z_Fy8HmhHhSQ9i4aXecssGLatTf9nnGUCfwn5NcJHVdVnXzL0Nbo6FvrDs8YhqxhYxfhMPknmBaGXOZ8wMx6fKSbJvCD0MhcTZibjM-NJMi8IvczlhJlR2Loj06ja0Ki_Pjo9GyT35J4Zo1pd0pNWZa9xn9ue6xckGet2H9zHunZbpwv6MA_CIgyLIBwNYP4TjoNwEjYnt5jnQXgRNi9uMS-D8CpsXl1lzrt_XwEAAP__NMo41Q==

# The single join reader should be on node 5, and doesn't need to output v.
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT w FROM t WHERE v > 40 AND v < 50 ORDER BY v]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkT1rwzAQhvf-ivLOKrFsumjKmg5JCd2KB9U6gsHRCelcWoL_e7FVqF2I24z38byPOF3g2dHeninBvEJD4RG1QojcUEocx3Ze2rkPmEKh9aGXsV0rNBwJ5gJppSMY7PmBw6aEgiOxbTetDQrcyw-UxJ4IphrULFivB7_Yt46OZB3FTbGIx_tWoHDoxdxvNa7Z9C22J279t0wvZSG2Zxs_Z8rqqrJcKP-43JFSYJ_oX6crhlqB3Iny7yTuY0PPkZtJk8vDxE0NR0nytMrFzufR-MA5rFfhch0uV-HiF1wPd18BAAD__56h0KE=
