# LogicTest: local local-opt fakedist fakedist-opt fakedist-metadata

# This file contains regression tests discovered by sqlsmith.


# Regression: #28836 (nulls in string_agg)

statement ok
SELECT subq_0.c3 AS c0, subq_0.c6 AS c1, subq_0.c4 AS c2, CASE WHEN (SELECT start_key FROM crdb_internal.ranges LIMIT 1 OFFSET 6) < CAST(NULLIF(pg_catalog.string_agg(CAST((SELECT start_key FROM crdb_internal.ranges LIMIT 1 OFFSET 7) AS BYTES), CAST((SELECT pg_catalog.xor_agg(tgargs) FROM pg_catalog.pg_trigger) AS BYTES)) OVER (PARTITION BY subq_0.c0 ORDER BY subq_0.c0, subq_0.c5, subq_0.c2), CAST(NULL AS BYTES)) AS BYTES) THEN subq_0.c6 ELSE subq_0.c6 END AS c3, subq_0.c2 AS c4, subq_0.c7 AS c5, CAST(COALESCE(subq_0.c7, subq_0.c7) AS INT8) AS c6 FROM (SELECT ref_0.table_name AS c0, ref_0.table_catalog AS c1, ref_0.table_type AS c2, (SELECT rolcreatedb FROM pg_catalog.pg_roles LIMIT 1 OFFSET 79) AS c3, ref_0.table_name AS c4, ref_0.version AS c5, ref_0.version AS c6, ref_0.version AS c7 FROM information_schema.tables AS ref_0 WHERE (ref_0.version IS NOT NULL) OR (pg_catalog.set_masklen(CAST(CAST(NULL AS INET) AS INET), CAST(ref_0.version AS INT8)) != (SELECT pg_catalog.max(client_addr) FROM pg_catalog.pg_stat_activity)) LIMIT 101) AS subq_0 WHERE subq_0.c7 IS NOT NULL

# Regression: make sure lookup join planNode propagates its close signal. This
# query could panic otherwise with a failure to empty all memory accounts.

statement ok
CREATE TABLE a (a INT PRIMARY KEY);

statement ok
SELECT true FROM (SELECT ref_1.a AS c0 FROM crdb_internal.cluster_queries AS ref_0 JOIN a AS ref_1 ON (ref_0.node_id = ref_1.a) WHERE (SELECT a from a limit 1 offset 1) is null);

# Regression: #34437 (union all could produce panic in distsql planning)

statement ok
CREATE TABLE table8 (col1 TIME, col2 BYTES, col4 OID, col6 NAME, col9 TIMESTAMP, PRIMARY KEY (col1));

statement ok
CREATE TABLE table5 (col0 TIME NULL, col1 OID, col3 INET, PRIMARY KEY (col1 ASC));

statement ok
INSERT INTO table8 (col1, col2, col4, col6)
VALUES ('19:06:18.321589', NULL, NULL, NULL)
UNION ALL (SELECT NULL, NULL, NULL, NULL FROM table5 AS tab_8);

# Regression: #36441 (raw indexed var can't be type checked)
query TO
WITH
    with_20394 (col_162526)
        AS (
            SELECT
                *
            FROM
                (
                    VALUES
                        (
                            'd2d225e2-e9be-4420-a645-d1b8f577511c':::UUID
                        )
                )
                    AS tab_25520 (col_162526)
            UNION ALL
                SELECT
                    *
                FROM
                    (
                        VALUES
                            (
                                '1d6eaf81-8a2c-43c5-a495-a3b102917ab1':::UUID
                            )
                    )
                        AS tab_25521 (col_162527)
        )
SELECT
    max(with_20394.col_162526::UUID)::UUID AS col_162534,
    3697877132:::OID AS col_162541
FROM
    with_20394
GROUP BY
    with_20394.col_162526
ORDER BY
    with_20394.col_162526 ASC
----
1d6eaf81-8a2c-43c5-a495-a3b102917ab1  3697877132
d2d225e2-e9be-4420-a645-d1b8f577511c  3697877132
