# LogicTest: 5node-dist

statement ok
CREATE TABLE data (a INT PRIMARY KEY)

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

# Split into ten parts.
statement ok
ALTER TABLE data SPLIT AT SELECT i FROM generate_series(1, 9) AS g(i)

# Relocate the ten parts to the five nodes.
statement ok
ALTER TABLE data TESTING_RELOCATE
  SELECT ARRAY[i%5+1], i FROM generate_series(0, 9) AS g(i)

statement ok
INSERT INTO data SELECT generate_series(0, 9)

# Correlated SRF
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT a, generate_series(a, a + 1) FROM data ORDER BY 1, 2]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJykk8GK2zAQhu99CjGnlsgoku1t0cnXXLbLZm_FFNUasi6OZEYKtCx-9xL7kLqNgzY-zow-_R8M8wbOW3w0Rwygv4EEDgo45MChAA4l1Bx68g2G4On8ZAJ29hfoLYfW9ad4btccGk8I-g1iGzsEDS_mR4fPaCyS2AIHi9G03RjTU3s09LuyJhrgsO-NC5plQjLjLJPMx1ckqAcO_hQvCSGaA4KWA1-wuIR7skho57GV3EA9XFF9Iv8Tm7jHKMo5ckCHZCJ-D0gtho-V5KySbMOk1nr3-PLl06KmWtS8YrD3FJHEw3_CvFIb4HA0sXllHTrN5GJiPkuU6euRKesRMhPqjgWpdA-V5KEykd_hkad75EkeeSaKOzyKdI8iyaPIRLnycK54PGPovQs4U1j6eXu-KrQHnK4w-BM1-ES-GWOm8uvIjQ2LIU5TORU7N45Gwb9heRNWM3j7L6xuwp9vw_ka7WINXK6BH94F18OHPwEAAP__NOT0hQ==

# Order by primary key
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT a, generate_series(a, a + 1) FROM data ORDER BY 1]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJykk79qwzAQh_c-hbmpJTKy_KcUTV6zpCHJVkxRrSN1SSRzUqAl-N1L7CF1SYoaj3fnz7-P43QEYzUu1B4dyBcQwCAFBhkwyIFBARWDlmyNzlk6fTIAc_0JMmHQmPbgT-2KQW0JQR7BN36HIGGj3na4QqWReAIMNHrV7PqYlpq9oq9SK6-AwbpVxsko5iJSRkcisv4dCaqOgT34c4LzaosgRceuWJzDLWkk1OPYUsyg6i6oLsl-YO3X6HkxRrZokJTHV4fUoLsvBYtKEc0iIaWcLzZPD1c105GmCF-WCFkWFzFPb1hXGu6RBnmkMc9u8MjCPbIgjyzm-Q0eebhHHuSRx7yYeMYXPFboWmscjhSu_Tk53TjqLQ5vwtkD1bgkW_cxQ_ncc31Do_PDVAzF3PSjXvAnLP6EH0dw8htOpyRnU-B8Clz8C666u-8AAAD__5K7vE0=

# Order by SRF
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT a, generate_series(a, a + 1) FROM data ORDER BY 2]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJykk02L2zAQhu_9FWZOLSsjS7a3RSdfc9kum70VU1RrSF0SyYxkaAn-7yX2IXWwgxof9fHM-8DwnsE6gy_6hB7UNxDAQAKDHBgUwKCEmkFHrkHvHV2-TMDO_AaVMWht14fLdc2gcYSgzhDacERQ8K5_HPENtUHiGTAwGHR7HGM6ak-a_lRGBw0M9p22XiUpF4m2JhGJCz-RoB4YuD5cE3zQBwQlBrZicQ3vrSODhGYWXA8Lnq_kfmET9hh4Odc8oEXSAb97pBb9x0qwpBLJUyKUUruX9y-fVh3lquOCwd5RQOLP8_RKPq2Oz2fjRfwiRMwiuEi5fGAVMt5DRnnIlOcPeOTxHnmUR57y4gGPIt6jiPIoUl5urMiCxxv6zlmPN1VZnpxdKoTmgFPfvOupwVdyzRgzHb-O3Hhh0IfpVUyHnR2fRsF_YXEXljM4u4XlXfjzfTjfol1sgcst8PN_wfXw4W8AAAD__yGn71k=

# Filter on ProjectSet node
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT a, b FROM (SELECT a, generate_series(1, 3) AS b FROM data) WHERE a < 4 AND b = 3]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJykk1Gr0zAUx9_9FOE8TUhJk7QiAWGCCHuZl3v3pkVic5iVLilJCsrod5e1ytaxSVzfmpz-8v_lkHME6wxu9QEDqM_AgYIAChIoFEChhIpC512NITh_-mUCNuYnqJxCY7s-nrYrCrXzCOoIsYktgoKd_tbiM2qDnuVAwWDUTTvGdL45aP9rbXTUQOGl0zYokjFOtDWEExe_o4dqoOD6eE4IUe8RFB_oHYtzeG-dN-jRzIKr4Ybnk3c_sI4vGFk519yjRa8jfg3oGwwrrpTabHdvKZF_vl4DhY9NG9Erslpz8qXPc1mT4m-ZvN9-IKu1IO8ukHv3ErN78fTu8pTuMp4x8UB_RbqHSPIQGZMPeMh0D5nkITNWPOBRpHsUSR5FxsqF7_6GxzOGztmAV-__9sn5aS7Q7HEaouB6X-OTd_UYMy0_jdy4YTDEqcqnxcaOpVHwEub_hN_M4PwaFkuS5RK4WAKX_wVXw6vfAQAA___YT8lc

# Multiple SRFs with different lengths
query T
SELECT url FROM [EXPLAIN (DISTSQL) SELECT a, generate_series(1, 2), generate_series(1, 4) FROM data WHERE a < 2 ORDER BY 1, 2, 3]
----
https://cockroachdb.github.io/distsqlplan/decode.html#eJyckkFvozAQhe_7K9DsZVdxBIYcVj5xzSUbJblVqHLxU0pFbDR2pFYR_70KVE1pA0p7w-P55r3h-UTWGaz0AZ7UHUkSlFIhqGFXwnvH53LftDTPpBJBlW2O4VwuBJWOQepEoQo1SNFOP9TYQBtwnJAgg6CruhvdcHXQ_JIbHTQJ2jbaehXNY0lFK8gdw2WqD3oPUrIVI8oXQccGDDOUyuWMivaKvTW7J5RhixCnQ2QPC9YB9x5cwf-RSqnlavdPROnb118SE12L966xbdLRba4Y3ToO4Dj7spfI05nIsxkJOuhQPkY1rIrG_2E2UJW3pydvSS-W81jGv3-Q4BX1DXzjrMdAeGxyco4XZo_-OXh35BJrdmUn0x__d1xXMPChv5X9YWm7q87gR1hOwukATj7D6SS8mIazb9ku2l-vAQAA__9Q1TXj
