From d3339762f721e30f19a9427dfe69d7809d8b19a2 Mon Sep 17 00:00:00 2001 From: Bob Vawter Date: Tue, 4 Dec 2018 15:20:23 -0500 Subject: [PATCH] sql: Make INT an alias for INT8 This is the first in a series of changes to allow INT to eventually be redefined as INT4. Currently, a "naked" INT is generally treated as a 64-bit int type, but INT is separate from INT8. This change eliminates INT as a distinct type in favor of always using INT8. This is analogous to how we treat FLOAT/FLOAT8. The coltypes.Int global has been removed and we should no longer produce type objects that have a zero Width. The existing interpretation of zero-Width types as 64-bit values will continue indefinitely to preserve backwards-compatibility with existing descriptors. In general, the changes to tests are due to the widespread use of INT as an arbitary datatype. Except in a few cases where we are testing how "INT" is interpreted as a datatype, the tests have been changed to simply use INT8, to avoid another major round of text fixups as work on #26925 continues. Release note (sql change): The INT type is now treated as an alias for INT8. --- pkg/ccl/importccl/import_stmt_test.go | 166 +++---- pkg/ccl/importccl/read_import_pgdump_test.go | 4 +- .../testdata/logic_test/case_sensitive_names | 2 +- .../testdata/logic_test/partitioning | 72 ++-- .../testdata/logic_test/partitioning_index | 16 +- pkg/cli/dump_test.go | 10 +- pkg/cli/sql_util_test.go | 8 +- pkg/cli/testdata/dump/computed | 4 +- pkg/cli/testdata/dump/flags | 8 +- pkg/cli/testdata/dump/identifiers | 2 +- pkg/cli/testdata/dump/multiple | 16 +- pkg/cli/testdata/dump/primary_key | 2 +- pkg/cli/testdata/dump/reference_cycle | 16 +- pkg/cli/testdata/dump/reference_order | 32 +- pkg/cli/testdata/dump/reference_self | 16 +- pkg/cli/testdata/dump/row | 2 +- pkg/server/admin_test.go | 12 +- pkg/server/status_test.go | 2 +- pkg/server/updates_test.go | 12 +- pkg/sql/coltypes/aliases.go | 6 +- pkg/sql/coltypes/conv.go | 2 +- pkg/sql/distsqlplan/physical_plan.go | 16 +- pkg/sql/err_count_test.go | 4 +- .../testdata/logic_test/alter_column_type | 8 +- .../logictest/testdata/logic_test/alter_table | 22 +- pkg/sql/logictest/testdata/logic_test/array | Bin 18871 -> 18873 bytes .../testdata/logic_test/check_constraints | 32 +- .../logictest/testdata/logic_test/computed | 76 ++-- .../testdata/logic_test/create_statements | 8 +- .../logictest/testdata/logic_test/datetime | 2 +- pkg/sql/logictest/testdata/logic_test/default | 6 +- pkg/sql/logictest/testdata/logic_test/delete | 2 +- .../testdata/logic_test/dependencies | 24 +- pkg/sql/logictest/testdata/logic_test/family | 78 ++-- pkg/sql/logictest/testdata/logic_test/fk | 38 +- .../testdata/logic_test/information_schema | 56 +-- pkg/sql/logictest/testdata/logic_test/insert | 4 +- .../logictest/testdata/logic_test/interleaved | 24 +- .../testdata/logic_test/inverted_index | 2 +- .../testdata/logic_test/name_escapes | 12 +- .../testdata/logic_test/no_primary_key | 4 +- .../logictest/testdata/logic_test/pg_catalog | 12 +- .../testdata/logic_test/privileges_table | 4 +- .../testdata/logic_test/schema_change_in_txn | 20 +- pkg/sql/logictest/testdata/logic_test/serial | 50 +-- .../logictest/testdata/logic_test/show_source | 2 +- .../logictest/testdata/logic_test/show_trace | 12 +- .../logictest/testdata/logic_test/subquery | 4 +- pkg/sql/logictest/testdata/logic_test/system | 28 +- pkg/sql/logictest/testdata/logic_test/table | 26 +- .../testdata/logic_test/target_names | 2 +- pkg/sql/logictest/testdata/logic_test/typing | 2 +- pkg/sql/logictest/testdata/logic_test/update | 10 +- pkg/sql/logictest/testdata/logic_test/upsert | 3 +- .../testdata/planner_test/distsql_agg | 40 +- .../testdata/planner_test/distsql_auto_mode | 4 +- .../planner_test/distsql_interleaved_join | 6 +- .../testdata/planner_test/distsql_lookup_join | 10 +- .../testdata/planner_test/distsql_numtables | 8 +- .../testdata/planner_test/distsql_srfs | 10 +- .../testdata/planner_test/distsql_subquery | 6 +- .../testdata/planner_test/distsql_union | 20 +- .../logictest/testdata/planner_test/explain | 8 +- .../opt/exec/execbuilder/testdata/distsql_agg | 40 +- .../execbuilder/testdata/distsql_indexjoin | 6 +- .../testdata/distsql_interleaved_join | 6 +- .../execbuilder/testdata/distsql_numtables | 8 +- .../exec/execbuilder/testdata/distsql_union | 20 +- .../opt/exec/execbuilder/testdata/lookup_join | 6 +- pkg/sql/opt/memo/interner_test.go | 6 +- .../memo/testdata/logprops/constraints-null | 2 +- pkg/sql/opt/memo/testdata/logprops/insert | 14 +- pkg/sql/opt/memo/testdata/typing | 12 +- pkg/sql/opt/norm/custom_funcs.go | 4 +- pkg/sql/opt/norm/testdata/rules/comp | 2 +- pkg/sql/opt/norm/testdata/rules/prune_cols | 2 +- pkg/sql/opt/norm/testdata/rules/scalar | 6 +- pkg/sql/opt/norm/testdata/rules/side_effects | 4 +- pkg/sql/opt/optbuilder/testdata/aggregate | 12 +- pkg/sql/opt/optbuilder/testdata/insert | 2 +- pkg/sql/opt/optbuilder/testdata/project | 2 +- pkg/sql/opt/optbuilder/testdata/scalar | 10 +- pkg/sql/opt/optbuilder/testdata/select | 26 +- pkg/sql/opt/optbuilder/testdata/srfs | 4 +- pkg/sql/opt/xform/testdata/external/hibernate | 4 +- pkg/sql/parser/parse_test.go | 403 +++++++++-------- pkg/sql/parser/sql.y | 6 +- pkg/sql/partition_test.go | 8 +- pkg/sql/pgwire/types_test.go | 2 +- pkg/sql/schema_changer_test.go | 28 +- .../schemachange/alter_column_type_test.go | 4 +- pkg/sql/sem/tree/col_types_test.go | 82 ++-- pkg/sql/sem/tree/format_test.go | 24 +- pkg/sql/sem/tree/normalize_test.go | 14 +- pkg/sql/sem/tree/parse_array_test.go | 44 +- .../testdata/pretty/20.align-deindent.golden | 54 +-- .../tree/testdata/pretty/20.align-only.golden | 54 +-- .../sem/tree/testdata/pretty/20.ref.golden | 54 +-- .../testdata/pretty/6.align-deindent.golden | 182 ++++---- .../tree/testdata/pretty/6.align-only.golden | 182 ++++---- pkg/sql/sem/tree/testdata/pretty/6.ref.golden | 112 ++--- .../pretty/comparison.align-deindent.golden | 34 +- .../pretty/comparison.align-only.golden | 34 +- .../testdata/pretty/comparison.ref.golden | 36 +- ...ate_interleaved_drop.align-deindent.golden | 22 +- .../create_interleaved_drop.align-only.golden | 22 +- .../pretty/create_interleaved_drop.ref.golden | 22 +- ...reate_partition_list.align-deindent.golden | 38 +- .../create_partition_list.align-only.golden | 38 +- .../pretty/create_partition_list.ref.golden | 38 +- ...eate_partition_range.align-deindent.golden | 56 +-- .../create_partition_range.align-only.golden | 56 +-- .../pretty/create_partition_range.ref.golden | 48 +-- .../create_subpartition.align-deindent.golden | 100 ++--- .../create_subpartition.align-only.golden | 100 ++--- .../pretty/create_subpartition.ref.golden | 56 +-- .../pretty/create_table.align-deindent.golden | 407 ++++++++++-------- .../pretty/create_table.align-only.golden | 407 ++++++++++-------- .../testdata/pretty/create_table.ref.golden | 398 +++++++++-------- .../pretty/import4.align-deindent.golden | 24 +- .../testdata/pretty/import4.align-only.golden | 24 +- .../tree/testdata/pretty/import4.ref.golden | 24 +- pkg/sql/sem/tree/type_check_internal_test.go | 4 +- pkg/sql/sem/tree/type_check_test.go | 127 +++--- pkg/sql/serial.go | 9 +- pkg/sql/show_create_test.go | 2 +- pkg/sql/show_test.go | 78 ++-- pkg/sql/sqlbase/column_type_properties.go | 8 +- pkg/sql/sqlbase/system.go | 50 ++- pkg/sql/table_test.go | 6 +- 130 files changed, 2492 insertions(+), 2342 deletions(-) diff --git a/pkg/ccl/importccl/import_stmt_test.go b/pkg/ccl/importccl/import_stmt_test.go index 4c312f01197b..a1c2c30e0b18 100644 --- a/pkg/ccl/importccl/import_stmt_test.go +++ b/pkg/ccl/importccl/import_stmt_test.go @@ -72,8 +72,8 @@ func TestImportData(t *testing.T) { { name: "duplicate unique index key", create: ` - a int primary key, - i int, + a int8 primary key, + i int8, unique index idx_f (i) `, typ: "CSV", @@ -87,7 +87,7 @@ func TestImportData(t *testing.T) { { name: "duplicate PK", create: ` - i int primary key + i int8 primary key `, typ: "CSV", data: `1 @@ -114,7 +114,7 @@ d { name: "duplicate PK at sst boundary", create: ` - i int primary key, + i int8 primary key, s string `, with: `WITH sstsize = '10B'`, @@ -126,10 +126,10 @@ d { name: "verify no splits mid row", create: ` - i int primary key, + i int8 primary key, s string, - b int, - c int, + b int8, + c int8, index (s), index (i, s), family (i, b), @@ -168,7 +168,7 @@ d }, { name: "oversample", - create: `i int`, + create: `i int8`, with: `WITH oversample = '100'`, typ: "CSV", data: "1", @@ -183,8 +183,8 @@ d }, }, { - name: "CR in int, 2 cols", - create: `a int, b int`, + name: "CR in int8, 2 cols", + create: `a int8, b int8`, typ: "CSV", data: "1,2\r\n3,4\n5,6", query: map[string][][]string{ @@ -192,8 +192,8 @@ d }, }, { - name: "CR in int, 1 col", - create: `a int`, + name: "CR in int8, 1 col", + create: `a int8`, typ: "CSV", data: "1\r\n3\n5", query: map[string][][]string{ @@ -213,14 +213,14 @@ d // MySQL OUTFILE { name: "unexpected number of columns", - create: `i int`, + create: `i int8`, typ: "MYSQLOUTFILE", data: "1\t2", err: "row 1: too many columns, expected 1", }, { name: "unmatched field enclosure", - create: `i int`, + create: `i int8`, with: `WITH fields_enclosed_by = '"'`, typ: "MYSQLOUTFILE", data: "\"1", @@ -228,7 +228,7 @@ d }, { name: "unmatched literal", - create: `i int`, + create: `i int8`, with: `WITH fields_escaped_by = '\'`, typ: "MYSQLOUTFILE", data: `\`, @@ -315,7 +315,7 @@ d }, { name: "normal", - create: `i int, s string`, + create: `i int8, s string`, typ: "PGCOPY", data: "1\tSTR\n2\t\\N\n\\N\t\\t", query: map[string][][]string{ @@ -324,7 +324,7 @@ d }, { name: "comma delim", - create: `i int, s string`, + create: `i int8, s string`, typ: "PGCOPY", with: `WITH delimiter = ','`, data: "1,STR\n2,\\N\n\\N,\\,", @@ -334,14 +334,14 @@ d }, { name: "size out of range", - create: `i int`, + create: `i int8`, typ: "PGCOPY", with: `WITH max_row_size = '10GB'`, err: "max_row_size out of range", }, { name: "line too long", - create: `i int`, + create: `i int8`, typ: "PGCOPY", data: "123456", with: `WITH max_row_size = '5B'`, @@ -350,14 +350,14 @@ d { name: "not enough values", typ: "PGCOPY", - create: "a INT, b INT", + create: "a INT8, b INT8", data: `1`, err: "expected 2 values, got 1", }, { name: "too many values", typ: "PGCOPY", - create: "a INT, b INT", + create: "a INT8, b INT8", data: "1\t2\t3", err: "expected 2 values, got 3", }, @@ -367,7 +367,7 @@ d name: "mismatch cols", typ: "PGDUMP", data: ` - CREATE TABLE t (i int); + CREATE TABLE t (i int8); COPY t (s) FROM stdin; 0 \. @@ -378,7 +378,7 @@ d name: "missing COPY done", typ: "PGDUMP", data: ` - CREATE TABLE t (i int); + CREATE TABLE t (i int8); COPY t (i) FROM stdin; 0 `, @@ -388,7 +388,7 @@ d name: "semicolons and comments", typ: "PGDUMP", data: ` - CREATE TABLE t (i int); + CREATE TABLE t (i int8); ;;; -- nothing ; ; @@ -407,7 +407,7 @@ d { name: "line too long", typ: "PGDUMP", - data: "CREATE TABLE t (i INT);", + data: "CREATE TABLE t (i INT8);", with: `WITH max_row_size = '5B'`, err: "line too long", }, @@ -415,7 +415,7 @@ d name: "not enough values", typ: "PGDUMP", data: ` -CREATE TABLE t (a INT, b INT); +CREATE TABLE t (a INT8, b INT8); COPY t (a, b) FROM stdin; 1 @@ -427,7 +427,7 @@ COPY t (a, b) FROM stdin; name: "too many values", typ: "PGDUMP", data: ` -CREATE TABLE t (a INT, b INT); +CREATE TABLE t (a INT8, b INT8); COPY t (a, b) FROM stdin; 1 2 3 @@ -439,7 +439,7 @@ COPY t (a, b) FROM stdin; name: "too many cols", typ: "PGDUMP", data: ` -CREATE TABLE t (a INT, b INT); +CREATE TABLE t (a INT8, b INT8); COPY t (a, b, c) FROM stdin; 1 2 3 @@ -493,8 +493,8 @@ COPY t (a, b, c) FROM stdin; ORDER BY descriptor_name `: {{ `CREATE TABLE a ( - i INT NOT NULL, - k INT NULL, + i INT8 NOT NULL, + k INT8 NULL, CONSTRAINT a_pkey PRIMARY KEY (i ASC), CONSTRAINT a_k_fkey FOREIGN KEY (k) REFERENCES a (i), INDEX a_auto_index_a_k_fkey (k ASC), @@ -502,7 +502,7 @@ COPY t (a, b, c) FROM stdin; FAMILY "primary" (i, k) )`}, { `CREATE TABLE b ( - j INT NOT NULL, + j INT8 NOT NULL, CONSTRAINT b_pkey PRIMARY KEY (j ASC), CONSTRAINT b_j_fkey FOREIGN KEY (j) REFERENCES a (i), FAMILY "primary" (j) @@ -551,7 +551,7 @@ COPY t (a, b, c) FROM stdin; name: "sequence", typ: "PGDUMP", data: ` - CREATE TABLE t (a INT); + CREATE TABLE t (a INT8); CREATE SEQUENCE public.i_seq START WITH 1 INCREMENT BY 1 @@ -570,7 +570,7 @@ COPY t (a, b, c) FROM stdin; { name: "non-public schema", typ: "PGDUMP", - data: "create table s.t (i INT)", + data: "create table s.t (i INT8)", err: `non-public schemas unsupported: s`, }, { @@ -597,7 +597,7 @@ COPY t (a, b, c) FROM stdin; $_$; ALTER FUNCTION public.isnumeric(text) OWNER TO roland; - CREATE TABLE t (i INT); + CREATE TABLE t (i INT8); `, query: map[string][][]string{ `SHOW TABLES`: {{"t"}}, @@ -624,7 +624,7 @@ COPY t (a, b, c) FROM stdin; }, { name: "sequences", - create: `i int default nextval('s')`, + create: `i int8 default nextval('s')`, typ: "CSV", err: `"s" not found`, }, @@ -640,7 +640,7 @@ COPY t (a, b, c) FROM stdin; // Create and drop a table to make sure a descriptor ID gets used to verify // ID rewrites happen correctly. Useful when running just a single test. - sqlDB.Exec(t, `CREATE TABLE blah (i int)`) + sqlDB.Exec(t, `CREATE TABLE blah (i int8)`) sqlDB.Exec(t, `DROP TABLE blah`) for i, tc := range tests { @@ -679,8 +679,8 @@ const ( )` testPgdumpCreateWeather = `CREATE TABLE weather ( city VARCHAR(80) NULL, - temp_lo INT NULL, - temp_hi INT NULL, + temp_lo INT8 NULL, + temp_hi INT8 NULL, prcp FLOAT4 NULL, date DATE NULL, CONSTRAINT weather_city_fkey FOREIGN KEY (city) REFERENCES cities (city), @@ -696,8 +696,8 @@ ALTER TABLE public.cities OWNER TO postgres; CREATE TABLE public.weather ( city character varying(80), - temp_lo integer, - temp_hi integer, + temp_lo int8, + temp_hi int8, prcp real, date date ); @@ -721,12 +721,12 @@ ALTER TABLE ONLY public.weather testPgdumpFkCircular = ` CREATE TABLE public.a ( - i integer NOT NULL, - k integer + i int8 NOT NULL, + k int8 ); CREATE TABLE public.b ( - j integer NOT NULL + j int8 NOT NULL ); COPY public.a (i, k) FROM stdin; @@ -886,7 +886,7 @@ func TestImportCSVStmt(t *testing.T) { tablePath := filepath.Join(dir, "table") if err := ioutil.WriteFile(tablePath, []byte(` CREATE TABLE t ( - a int primary key, + a int8 primary key, b string, index (b), index (a, b) @@ -957,7 +957,7 @@ func TestImportCSVStmt(t *testing.T) { }, { "schema-in-query", - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s)`, + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s)`, nil, files, ``, @@ -965,7 +965,7 @@ func TestImportCSVStmt(t *testing.T) { }, { "schema-in-query-opts", - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH delimiter = '|', comment = '#', nullif='', skip = '2'`, + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH delimiter = '|', comment = '#', nullif='', skip = '2'`, nil, filesWithOpts, ` WITH comment = '#', delimiter = '|', "nullif" = '', skip = '2'`, @@ -982,7 +982,7 @@ func TestImportCSVStmt(t *testing.T) { }, { "schema-in-query-transform-only", - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH delimiter = '|', comment = '#', nullif='', skip = '2', transform = $1`, + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH delimiter = '|', comment = '#', nullif='', skip = '2', transform = $1`, nil, filesWithOpts, ` WITH comment = '#', delimiter = '|', "nullif" = '', skip = '2', transform = 'nodelocal:///5'`, @@ -1071,7 +1071,7 @@ func TestImportCSVStmt(t *testing.T) { // NB: successes above, failures below, because we check the i-th job. { "bad-opt-name", - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH foo = 'bar'`, + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH foo = 'bar'`, nil, files, ``, @@ -1079,7 +1079,7 @@ func TestImportCSVStmt(t *testing.T) { }, { "bad-opt-no-arg", - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH transform`, + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH transform`, nil, files, ``, @@ -1087,7 +1087,7 @@ func TestImportCSVStmt(t *testing.T) { }, { "bad-computed-column", - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING AS ('hello') STORED, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH skip = '2', transform = $1`, + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING AS ('hello') STORED, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH skip = '2', transform = $1`, nil, filesWithOpts, ``, @@ -1170,7 +1170,7 @@ func TestImportCSVStmt(t *testing.T) { } else { jobPrefix += `""."".` } - jobPrefix += `t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s)` + jobPrefix += `t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s)` if err := jobutils.VerifySystemJob(t, sqlDB, baseNumJobs+testNum, jobspb.TypeImport, jobs.StatusSucceeded, jobs.Record{ Username: security.RootUser, @@ -1251,7 +1251,7 @@ func TestImportCSVStmt(t *testing.T) { // Verify unique_rowid is replaced for tables without primary keys. t.Run("unique_rowid", func(t *testing.T) { sqlDB.Exec(t, "CREATE DATABASE pk") - sqlDB.Exec(t, fmt.Sprintf(`IMPORT TABLE pk.t (a INT, b STRING) CSV DATA (%s)`, strings.Join(files, ", "))) + sqlDB.Exec(t, fmt.Sprintf(`IMPORT TABLE pk.t (a INT8, b STRING) CSV DATA (%s)`, strings.Join(files, ", "))) // Verify the rowids are being generated as expected. sqlDB.CheckQueryResults(t, `SELECT count(*), sum(rowid) FROM pk.t`, @@ -1272,7 +1272,7 @@ func TestImportCSVStmt(t *testing.T) { // Specify wrong number of columns. sqlDB.ExpectErr( t, "expected 1 fields, got 2", - fmt.Sprintf(`IMPORT TABLE t (a INT PRIMARY KEY) CSV DATA (%s)`, files[0]), + fmt.Sprintf(`IMPORT TABLE t (a INT8 PRIMARY KEY) CSV DATA (%s)`, files[0]), ) // Specify wrong table name; still shouldn't leave behind a checkpoint file. @@ -1282,13 +1282,13 @@ func TestImportCSVStmt(t *testing.T) { ) // Expect it to succeed with correct columns. - sqlDB.Exec(t, fmt.Sprintf(`IMPORT TABLE t (a INT PRIMARY KEY, b STRING) CSV DATA (%s)`, files[0])) + sqlDB.Exec(t, fmt.Sprintf(`IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING) CSV DATA (%s)`, files[0])) // A second attempt should fail fast. A "slow fail" is the error message // "restoring table desc and namespace entries: table already exists". sqlDB.ExpectErr( t, `relation "t" already exists`, - fmt.Sprintf(`IMPORT TABLE t (a INT PRIMARY KEY, b STRING) CSV DATA (%s)`, files[0]), + fmt.Sprintf(`IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING) CSV DATA (%s)`, files[0]), ) }) @@ -1307,11 +1307,11 @@ func TestImportCSVStmt(t *testing.T) { const ( query = `IMPORT TABLE t ( - a SERIAL, - b INT DEFAULT unique_rowid(), + a SERIAL8, + b INT8 DEFAULT unique_rowid(), c STRING DEFAULT 's', - d SERIAL, - e INT DEFAULT unique_rowid(), + d SERIAL8, + e INT8 DEFAULT unique_rowid(), f STRING DEFAULT 's', PRIMARY KEY (a, b, c) ) CSV DATA ($1)` @@ -1321,7 +1321,7 @@ func TestImportCSVStmt(t *testing.T) { data = ",5,e,7,," t.Run(data, func(t *testing.T) { sqlDB.ExpectErr( - t, `row 1: parse "a" as INT: could not parse ""`, + t, `row 1: parse "a" as INT8: could not parse ""`, query, srv.URL, ) sqlDB.ExpectErr( @@ -1383,7 +1383,7 @@ func BenchmarkImport(b *testing.B) { sqlDB.Exec(b, fmt.Sprintf( - `IMPORT TABLE t (a INT PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) + `IMPORT TABLE t (a INT8 PRIMARY KEY, b STRING, INDEX (b), INDEX (a, b)) CSV DATA (%s) WITH transform = $1`, strings.Join(files, ","), ), @@ -1412,10 +1412,10 @@ func BenchmarkConvertRecord(b *testing.B) { b.SetBytes(120) // Raw input size. With 8 indexes, expect more on output side. stmt, err := parser.ParseOne(`CREATE TABLE lineitem ( - l_orderkey INTEGER NOT NULL, - l_partkey INTEGER NOT NULL, - l_suppkey INTEGER NOT NULL, - l_linenumber INTEGER NOT NULL, + l_orderkey INT8 NOT NULL, + l_partkey INT8 NOT NULL, + l_suppkey INT8 NOT NULL, + l_linenumber INT8 NOT NULL, l_quantity DECIMAL(15,2) NOT NULL, l_extendedprice DECIMAL(15,2) NOT NULL, l_discount DECIMAL(15,2) NOT NULL, @@ -1559,7 +1559,7 @@ func TestImportControlJob(t *testing.T) { } csvURLs := strings.Join(urls, ", ") - query := fmt.Sprintf(`IMPORT TABLE cancelimport.t (i INT PRIMARY KEY) CSV DATA (%s)`, csvURLs) + query := fmt.Sprintf(`IMPORT TABLE cancelimport.t (i INT8 PRIMARY KEY) CSV DATA (%s)`, csvURLs) if _, err := jobutils.RunJob( t, sqlDB, &allowResponse, []string{"cancel"}, query, @@ -1597,7 +1597,7 @@ func TestImportControlJob(t *testing.T) { urls[i] = fmt.Sprintf("'%s/%d'", srv.URL, i) } csvURLs := strings.Join(urls, ", ") - query := fmt.Sprintf(`IMPORT TABLE pauseimport.t (i INT PRIMARY KEY) CSV DATA (%s) WITH sstsize = '50B'`, csvURLs) + query := fmt.Sprintf(`IMPORT TABLE pauseimport.t (i INT8 PRIMARY KEY) CSV DATA (%s) WITH sstsize = '50B'`, csvURLs) jobID, err := jobutils.RunJob( t, sqlDB, &allowResponse, []string{"PAUSE"}, query, @@ -1654,7 +1654,7 @@ func TestImportWorkerFailure(t *testing.T) { urls[i] = fmt.Sprintf("'%s/%d'", srv.URL, i) } csvURLs := strings.Join(urls, ", ") - query := fmt.Sprintf(`IMPORT TABLE t (i INT PRIMARY KEY) CSV DATA (%s) WITH sstsize = '1B'`, csvURLs) + query := fmt.Sprintf(`IMPORT TABLE t (i INT8 PRIMARY KEY) CSV DATA (%s) WITH sstsize = '1B'`, csvURLs) errCh := make(chan error) go func() { @@ -1743,7 +1743,7 @@ func TestImportLivenessWithRestart(t *testing.T) { })) defer srv.Close() - const query = `IMPORT TABLE liveness.t (i INT PRIMARY KEY) CSV DATA ($1) WITH sstsize = '500B'` + const query = `IMPORT TABLE liveness.t (i INT8 PRIMARY KEY) CSV DATA ($1) WITH sstsize = '500B'` // Start an IMPORT and wait until it's done one addsstable. allowResponse = make(chan struct{}) @@ -1874,7 +1874,7 @@ func TestImportLivenessWithLeniency(t *testing.T) { })) defer srv.Close() - const query = `IMPORT TABLE liveness.t (i INT PRIMARY KEY) CSV DATA ($1) WITH sstsize = '500B'` + const query = `IMPORT TABLE liveness.t (i INT8 PRIMARY KEY) CSV DATA ($1) WITH sstsize = '500B'` // Start an IMPORT and wait until it's done one addsstable. allowResponse = make(chan struct{}) @@ -1949,9 +1949,9 @@ func TestImportMVCCChecksums(t *testing.T) { defer srv.Close() sqlDB.Exec(t, `IMPORT TABLE d.t ( - a INT PRIMARY KEY, - b INT, - c INT, + a INT8 PRIMARY KEY, + b INT8, + c INT8, INDEX (b) STORING (c) ) CSV DATA ($1)`, srv.URL) sqlDB.Exec(t, `UPDATE d.t SET c = 2 WHERE a = 1`) @@ -1988,7 +1988,7 @@ func TestImportMysql(t *testing.T) { query string args []interface{} }{ - {`read data only`, expectSimple, `IMPORT TABLE simple (i INT PRIMARY KEY, s text, b bytea) MYSQLDUMP DATA ($1)`, simple}, + {`read data only`, expectSimple, `IMPORT TABLE simple (i INT8 PRIMARY KEY, s text, b bytea) MYSQLDUMP DATA ($1)`, simple}, {`single table dump`, expectSimple, `IMPORT TABLE simple FROM MYSQLDUMP ($1)`, simple}, {`second table dump`, expectSecond, `IMPORT TABLE second FROM MYSQLDUMP ($1) WITH skip_foreign_keys`, second}, {`simple from multi`, expectSimple, `IMPORT TABLE simple FROM MYSQLDUMP ($1)`, multitable}, @@ -2106,7 +2106,7 @@ func TestImportMysqlOutfile(t *testing.T) { t.Run(cfg.name, func(t *testing.T) { var opts []interface{} - cmd := fmt.Sprintf(`IMPORT TABLE test%d (i INT PRIMARY KEY, s text, b bytea) MYSQLOUTFILE DATA ($1)`, i) + cmd := fmt.Sprintf(`IMPORT TABLE test%d (i INT8 PRIMARY KEY, s text, b bytea) MYSQLOUTFILE DATA ($1)`, i) opts = append(opts, fmt.Sprintf("nodelocal://%s", strings.TrimPrefix(cfg.filename, baseDir))) var flags []string @@ -2167,7 +2167,7 @@ func TestImportPgCopy(t *testing.T) { t.Run(cfg.name, func(t *testing.T) { var opts []interface{} - cmd := fmt.Sprintf(`IMPORT TABLE test%d (i INT PRIMARY KEY, s text, b bytea) PGCOPY DATA ($1)`, i) + cmd := fmt.Sprintf(`IMPORT TABLE test%d (i INT8 PRIMARY KEY, s text, b bytea) PGCOPY DATA ($1)`, i) opts = append(opts, fmt.Sprintf("nodelocal://%s", strings.TrimPrefix(cfg.filename, baseDir))) var flags []string @@ -2246,7 +2246,7 @@ func TestImportPgDump(t *testing.T) { `read data only`, expectSimple, `IMPORT TABLE simple ( - i INTEGER, + i INT8, s text, b bytea, CONSTRAINT simple_pkey PRIMARY KEY (i), @@ -2269,7 +2269,7 @@ func TestImportPgDump(t *testing.T) { // Verify table schema because PKs and indexes are at the bottom of pg_dump. sqlDB.CheckQueryResults(t, `SHOW CREATE TABLE simple`, [][]string{{ "simple", `CREATE TABLE simple ( - i INT NOT NULL, + i INT8 NOT NULL, s STRING NULL, b BYTES NULL, CONSTRAINT simple_pkey PRIMARY KEY (i ASC), @@ -2311,7 +2311,7 @@ func TestImportPgDump(t *testing.T) { // Verify table schema because PKs and indexes are at the bottom of pg_dump. sqlDB.CheckQueryResults(t, `SHOW CREATE TABLE second`, [][]string{{ "second", `CREATE TABLE second ( - i INT NOT NULL, + i INT8 NOT NULL, s STRING NULL, CONSTRAINT second_pkey PRIMARY KEY (i ASC), FAMILY "primary" (i, s) @@ -2337,8 +2337,8 @@ func TestImportPgDump(t *testing.T) { if c.expected == expectAll { sqlDB.CheckQueryResults(t, `SHOW CREATE TABLE seqtable`, [][]string{{ "seqtable", `CREATE TABLE seqtable ( - a INT NULL DEFAULT nextval('public.a_seq':::STRING), - b INT NULL, + a INT8 NULL DEFAULT nextval('public.a_seq':::STRING), + b INT8 NULL, FAMILY "primary" (a, b, rowid) )`, }}) @@ -2394,7 +2394,7 @@ func TestImportCockroachDump(t *testing.T) { }) sqlDB.CheckQueryResults(t, "SHOW CREATE TABLE t", [][]string{ {"t", `CREATE TABLE t ( - i INT NOT NULL, + i INT8 NOT NULL, t STRING NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), INDEX t_t_idx (t ASC), @@ -2403,7 +2403,7 @@ func TestImportCockroachDump(t *testing.T) { }) sqlDB.CheckQueryResults(t, "SHOW CREATE TABLE a", [][]string{ {"a", `CREATE TABLE a ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), CONSTRAINT fk_i_ref_t FOREIGN KEY (i) REFERENCES t (i), FAMILY "primary" (i) diff --git a/pkg/ccl/importccl/read_import_pgdump_test.go b/pkg/ccl/importccl/read_import_pgdump_test.go index 076723608b7f..e7e0e124c073 100644 --- a/pkg/ccl/importccl/read_import_pgdump_test.go +++ b/pkg/ccl/importccl/read_import_pgdump_test.go @@ -59,7 +59,7 @@ func TestPostgreStreamCopy(t *testing.T) { const sql = ` CREATE TABLE public.second ( - i integer NOT NULL, + i int8 NOT NULL, s text ); @@ -123,7 +123,7 @@ COPY public.t (s) FROM stdin; } fmt.Fprintf(&sb, "%s;\n", s) } - const expect = `CREATE TABLE public.second (i INT NOT NULL, s STRING); + const expect = `CREATE TABLE public.second (i INT8 NOT NULL, s STRING); COPY public.second (i, s) FROM STDIN; "0" "0"; "1" "1"; diff --git a/pkg/ccl/logictestccl/testdata/logic_test/case_sensitive_names b/pkg/ccl/logictestccl/testdata/logic_test/case_sensitive_names index 71b305db1eda..0c3ecbe3d12e 100644 --- a/pkg/ccl/logictestccl/testdata/logic_test/case_sensitive_names +++ b/pkg/ccl/logictestccl/testdata/logic_test/case_sensitive_names @@ -11,7 +11,7 @@ query TT SHOW CREATE TABLE p ---- p CREATE TABLE p ( - a INT NOT NULL, + a INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), FAMILY "primary" (a) ) PARTITION BY LIST (a) ( diff --git a/pkg/ccl/logictestccl/testdata/logic_test/partitioning b/pkg/ccl/logictestccl/testdata/logic_test/partitioning index 9ebff7b195d3..c7074bdcb518 100644 --- a/pkg/ccl/logictestccl/testdata/logic_test/partitioning +++ b/pkg/ccl/logictestccl/testdata/logic_test/partitioning @@ -380,9 +380,9 @@ query TT SHOW CREATE TABLE ok1 ---- ok1 CREATE TABLE ok1 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a) ( @@ -400,9 +400,9 @@ query TT SHOW CREATE TABLE ok2 ---- ok2 CREATE TABLE ok2 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a) ( @@ -420,9 +420,9 @@ query TT SHOW CREATE TABLE ok3 ---- ok3 CREATE TABLE ok3 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a) ( @@ -442,9 +442,9 @@ query TT SHOW CREATE TABLE ok4 ---- ok4 CREATE TABLE ok4 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a, b) ( @@ -470,9 +470,9 @@ query TT SHOW CREATE TABLE ok5 ---- ok5 CREATE TABLE ok5 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a) ( @@ -496,9 +496,9 @@ query TT SHOW CREATE TABLE ok6 ---- ok6 CREATE TABLE ok6 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY RANGE (a) ( @@ -515,9 +515,9 @@ query TT SHOW CREATE TABLE ok7 ---- ok7 CREATE TABLE ok7 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY RANGE (a) ( @@ -535,9 +535,9 @@ query TT SHOW CREATE TABLE ok8 ---- ok8 CREATE TABLE ok8 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY RANGE (a) ( @@ -558,9 +558,9 @@ query TT SHOW CREATE TABLE ok9 ---- ok9 CREATE TABLE ok9 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY RANGE (a, b) ( @@ -583,9 +583,9 @@ query TT SHOW CREATE TABLE ok10 ---- ok10 CREATE TABLE ok10 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY RANGE (a, b) ( @@ -613,9 +613,9 @@ query TT SHOW CREATE TABLE ok11 ---- ok11 CREATE TABLE ok11 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NOT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC, c ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a) ( @@ -642,9 +642,9 @@ query TT SHOW CREATE TABLE ok12 ---- ok12 CREATE TABLE ok12 ( - a INT NOT NULL, - b INT NOT NULL, - c INT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, + c INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b, c) ) PARTITION BY LIST (a) ( diff --git a/pkg/ccl/logictestccl/testdata/logic_test/partitioning_index b/pkg/ccl/logictestccl/testdata/logic_test/partitioning_index index d5f20eb6afec..f899f6a19d07 100644 --- a/pkg/ccl/logictestccl/testdata/logic_test/partitioning_index +++ b/pkg/ccl/logictestccl/testdata/logic_test/partitioning_index @@ -13,8 +13,8 @@ query TT SHOW CREATE TABLE ok1 ---- ok1 CREATE TABLE ok1 ( - a INT NOT NULL, - b INT NULL, + a INT8 NOT NULL, + b INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), INDEX ok1_b_idx (b ASC) PARTITION BY LIST (b) ( PARTITION p1 VALUES IN ((1)), @@ -40,8 +40,8 @@ query TT SHOW CREATE TABLE ok2 ---- ok2 CREATE TABLE ok2 ( - a INT NOT NULL, - b INT NULL, + a INT8 NOT NULL, + b INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), UNIQUE INDEX ok2_b_key (b ASC) PARTITION BY LIST (b) ( PARTITION p1 VALUES IN ((1)) @@ -61,8 +61,8 @@ query TT SHOW CREATE TABLE ok3 ---- ok3 CREATE TABLE ok3 ( - a INT NOT NULL, - b INT NULL, + a INT8 NOT NULL, + b INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), UNIQUE INDEX ok3_b_key (b ASC) PARTITION BY LIST (b) ( PARTITION p1 VALUES IN ((1)) @@ -102,8 +102,8 @@ query TT SHOW CREATE TABLE indexes ---- indexes CREATE TABLE indexes ( - a INT NOT NULL, - b INT NULL, + a INT8 NOT NULL, + b INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), INDEX i1 (b ASC) PARTITION BY LIST (b) ( PARTITION p1 VALUES IN ((1)) diff --git a/pkg/cli/dump_test.go b/pkg/cli/dump_test.go index 8526d81e4156..f35a6e62b74c 100644 --- a/pkg/cli/dump_test.go +++ b/pkg/cli/dump_test.go @@ -376,7 +376,7 @@ func TestDumpAsOf(t *testing.T) { const create = ` CREATE DATABASE d; - CREATE TABLE d.t (i int); + CREATE TABLE d.t (i int8); INSERT INTO d.t VALUES (1); SELECT now(); ` @@ -397,7 +397,7 @@ func TestDumpAsOf(t *testing.T) { const want1 = `dump d t CREATE TABLE t ( - i INT NULL, + i INT8 NULL, FAMILY "primary" (i, rowid) ); @@ -409,7 +409,7 @@ INSERT INTO t (i) VALUES } c.RunWithArgs([]string{"sql", "-e", ` - ALTER TABLE d.t ADD COLUMN j int DEFAULT 2; + ALTER TABLE d.t ADD COLUMN j int8 DEFAULT 2; INSERT INTO d.t VALUES (3, 4); `}) @@ -419,8 +419,8 @@ INSERT INTO t (i) VALUES } const want2 = `dump d t CREATE TABLE t ( - i INT NULL, - j INT NULL DEFAULT 2:::INT, + i INT8 NULL, + j INT8 NULL DEFAULT 2:::INT8, FAMILY "primary" (i, rowid, j) ); diff --git a/pkg/cli/sql_util_test.go b/pkg/cli/sql_util_test.go index eb1aa8f6caa0..356c138a2643 100644 --- a/pkg/cli/sql_util_test.go +++ b/pkg/cli/sql_util_test.go @@ -135,9 +135,9 @@ SET } expectedRows := [][]string{ - {`parentID`, `INT`, `false`, `NULL`, ``, `{primary}`, `false`}, + {`parentID`, `INT8`, `false`, `NULL`, ``, `{primary}`, `false`}, {`name`, `STRING`, `false`, `NULL`, ``, `{primary}`, `false`}, - {`id`, `INT`, `true`, `NULL`, ``, `{}`, `false`}, + {`id`, `INT8`, `true`, `NULL`, ``, `{}`, `false`}, } if !reflect.DeepEqual(expectedRows, rows) { t.Fatalf("expected:\n%v\ngot:\n%v", expectedRows, rows) @@ -151,9 +151,9 @@ SET expected = ` column_name | data_type | is_nullable | column_default | generation_expression | indices | is_hidden +-------------+-----------+-------------+----------------+-----------------------+-----------+-----------+ - parentID | INT | false | NULL | | {primary} | false + parentID | INT8 | false | NULL | | {primary} | false name | STRING | false | NULL | | {primary} | false - id | INT | true | NULL | | {} | false + id | INT8 | true | NULL | | {} | false (3 rows) ` diff --git a/pkg/cli/testdata/dump/computed b/pkg/cli/testdata/dump/computed index 0763b291727a..b669f6f75d8c 100644 --- a/pkg/cli/testdata/dump/computed +++ b/pkg/cli/testdata/dump/computed @@ -13,8 +13,8 @@ dump d t ---- ---- CREATE TABLE t ( - a INT NOT NULL, - b INT NULL AS (a + 1) STORED, + a INT8 NOT NULL, + b INT8 NULL AS (a + 1) STORED, CONSTRAINT "primary" PRIMARY KEY (a ASC), FAMILY "primary" (a, b) ); diff --git a/pkg/cli/testdata/dump/flags b/pkg/cli/testdata/dump/flags index b728501b5ed1..820266ce68a3 100644 --- a/pkg/cli/testdata/dump/flags +++ b/pkg/cli/testdata/dump/flags @@ -9,8 +9,8 @@ dump t f --dump-mode=both ---- ---- CREATE TABLE f ( - x INT NULL, - y INT NULL, + x INT8 NULL, + y INT8 NULL, FAMILY "primary" (x, y, rowid) ); @@ -22,8 +22,8 @@ INSERT INTO f (x, y) VALUES dump t f --dump-mode=schema ---- CREATE TABLE f ( - x INT NULL, - y INT NULL, + x INT8 NULL, + y INT8 NULL, FAMILY "primary" (x, y, rowid) ); diff --git a/pkg/cli/testdata/dump/identifiers b/pkg/cli/testdata/dump/identifiers index c2192ddef9ad..e511aa4387a4 100644 --- a/pkg/cli/testdata/dump/identifiers +++ b/pkg/cli/testdata/dump/identifiers @@ -12,7 +12,7 @@ dump d ---- ---- CREATE TABLE ";" ( - ";" INT NULL, + ";" INT8 NULL, INDEX ";_;_idx" (";" ASC), FAMILY "primary" (";", rowid) ); diff --git a/pkg/cli/testdata/dump/multiple b/pkg/cli/testdata/dump/multiple index c8b1939fdc9f..ee9c2c75bc31 100644 --- a/pkg/cli/testdata/dump/multiple +++ b/pkg/cli/testdata/dump/multiple @@ -11,14 +11,14 @@ dump t f g ---- ---- CREATE TABLE f ( - x INT NULL, - y INT NULL, + x INT8 NULL, + y INT8 NULL, FAMILY "primary" (x, y, rowid) ); CREATE TABLE g ( - x INT NULL, - y INT NULL, + x INT8 NULL, + y INT8 NULL, FAMILY "primary" (x, y, rowid) ); @@ -34,14 +34,14 @@ dump t ---- ---- CREATE TABLE f ( - x INT NULL, - y INT NULL, + x INT8 NULL, + y INT8 NULL, FAMILY "primary" (x, y, rowid) ); CREATE TABLE g ( - x INT NULL, - y INT NULL, + x INT8 NULL, + y INT8 NULL, FAMILY "primary" (x, y, rowid) ); diff --git a/pkg/cli/testdata/dump/primary_key b/pkg/cli/testdata/dump/primary_key index 0c9eeddfbf7b..7bb86a123ca4 100644 --- a/pkg/cli/testdata/dump/primary_key +++ b/pkg/cli/testdata/dump/primary_key @@ -14,7 +14,7 @@ dump d t ---- ---- CREATE TABLE t ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT pk_name PRIMARY KEY (i ASC), FAMILY "primary" (i) ); diff --git a/pkg/cli/testdata/dump/reference_cycle b/pkg/cli/testdata/dump/reference_cycle index 4f5c1bc3d56f..d4c286eb0d10 100644 --- a/pkg/cli/testdata/dump/reference_cycle +++ b/pkg/cli/testdata/dump/reference_cycle @@ -31,16 +31,16 @@ dump d ---- ---- CREATE TABLE loop_b ( - id INT NOT NULL, - a_id INT NULL, + id INT8 NOT NULL, + a_id INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX loop_b_auto_index_fk_a_id_ref_loop_a (a_id ASC), FAMILY "primary" (id, a_id) ); CREATE TABLE loop_a ( - id INT NOT NULL, - b_id INT NULL, + id INT8 NOT NULL, + b_id INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX loop_a_b_id_idx (b_id ASC), FAMILY "primary" (id, b_id) @@ -69,16 +69,16 @@ dump d --dump-mode=schema ---- ---- CREATE TABLE loop_b ( - id INT NOT NULL, - a_id INT NULL, + id INT8 NOT NULL, + a_id INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX loop_b_auto_index_fk_a_id_ref_loop_a (a_id ASC), FAMILY "primary" (id, a_id) ); CREATE TABLE loop_a ( - id INT NOT NULL, - b_id INT NULL, + id INT8 NOT NULL, + b_id INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX loop_a_b_id_idx (b_id ASC), FAMILY "primary" (id, b_id) diff --git a/pkg/cli/testdata/dump/reference_order b/pkg/cli/testdata/dump/reference_order index 419681a3e4ad..06bb336d3f86 100644 --- a/pkg/cli/testdata/dump/reference_order +++ b/pkg/cli/testdata/dump/reference_order @@ -36,41 +36,41 @@ dump d1 ---- ---- CREATE TABLE b ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), FAMILY "primary" (i) ); CREATE TABLE a ( - i INT NULL, + i INT8 NULL, INDEX a_auto_index_fk_i_ref_b (i ASC), FAMILY "primary" (i, rowid) ); CREATE TABLE e ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), FAMILY "primary" (i) ); CREATE TABLE g ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), FAMILY "primary" (i) ); CREATE TABLE f ( - i INT NOT NULL, - g INT NULL, + i INT8 NOT NULL, + g INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), INDEX f_auto_index_fk_g_ref_g (g ASC), FAMILY "primary" (i, g) ); CREATE TABLE d ( - i INT NOT NULL, - e INT NULL, - f INT NULL, + i INT8 NOT NULL, + e INT8 NULL, + f INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), INDEX d_auto_index_fk_e_ref_e (e ASC), INDEX d_auto_index_fk_f_ref_f (f ASC), @@ -78,7 +78,7 @@ CREATE TABLE d ( ); CREATE TABLE c ( - i INT NULL, + i INT8 NULL, INDEX c_auto_index_fk_i_ref_d (i ASC), FAMILY "primary" (i, rowid) ); @@ -86,8 +86,8 @@ CREATE TABLE c ( CREATE SEQUENCE s MINVALUE 1 MAXVALUE 9223372036854775807 INCREMENT 1 START 1; CREATE TABLE s_tbl ( - id INT NOT NULL DEFAULT nextval('s':::STRING), - v INT NULL, + id INT8 NOT NULL DEFAULT nextval('s':::STRING), + v INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), FAMILY "primary" (id, v) ); @@ -142,15 +142,15 @@ noroundtrip ---- ---- CREATE TABLE e ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), FAMILY "primary" (i) ); CREATE TABLE d ( - i INT NOT NULL, - e INT NULL, - f INT NULL, + i INT8 NOT NULL, + e INT8 NULL, + f INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), INDEX d_auto_index_fk_e_ref_e (e ASC), INDEX d_auto_index_fk_f_ref_f (f ASC), diff --git a/pkg/cli/testdata/dump/reference_self b/pkg/cli/testdata/dump/reference_self index 991b44947e16..4e48731fb520 100644 --- a/pkg/cli/testdata/dump/reference_self +++ b/pkg/cli/testdata/dump/reference_self @@ -21,8 +21,8 @@ dump d t ---- ---- CREATE TABLE t ( - id INT NOT NULL, - next_id INT NULL, + id INT8 NOT NULL, + next_id INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX t_auto_index_fk_next_id_ref_t (next_id ASC), FAMILY "primary" (id, next_id) @@ -49,8 +49,8 @@ dump d t ---- ---- CREATE TABLE t ( - id INT NOT NULL, - next_id INT NULL, + id INT8 NOT NULL, + next_id INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX t_auto_index_fk_next_id_ref_t (next_id ASC), FAMILY "primary" (id, next_id) @@ -78,8 +78,8 @@ dump d table ---- ---- CREATE TABLE "table" ( - id INT NOT NULL, - "'" INT NULL, + id INT8 NOT NULL, + "'" INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX t_auto_index_fk_next_id_ref_t ("'" ASC), FAMILY "primary" (id, "'") @@ -101,8 +101,8 @@ dump d --dump-mode=schema ---- ---- CREATE TABLE "table" ( - id INT NOT NULL, - "'" INT NULL, + id INT8 NOT NULL, + "'" INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), INDEX t_auto_index_fk_next_id_ref_t ("'" ASC), FAMILY "primary" (id, "'") diff --git a/pkg/cli/testdata/dump/row b/pkg/cli/testdata/dump/row index 09047806e05f..1d28271d90a1 100644 --- a/pkg/cli/testdata/dump/row +++ b/pkg/cli/testdata/dump/row @@ -59,7 +59,7 @@ dump d t ---- ---- CREATE TABLE t ( - i INT NULL, + i INT8 NULL, f FLOAT8 NULL, s STRING NULL, b BYTES NULL, diff --git a/pkg/server/admin_test.go b/pkg/server/admin_test.go index 928dd741f681..c8b8aada0b1d 100644 --- a/pkg/server/admin_test.go +++ b/pkg/server/admin_test.go @@ -509,9 +509,9 @@ func TestAdminAPITableDetails(t *testing.T) { setupQueries := []string{ fmt.Sprintf("CREATE DATABASE %s", escDBName), fmt.Sprintf(`CREATE TABLE %s.%s ( - nulls_allowed INT, - nulls_not_allowed INT NOT NULL DEFAULT 1000, - default2 INT DEFAULT 2, + nulls_allowed INT8, + nulls_not_allowed INT8 NOT NULL DEFAULT 1000, + default2 INT8 DEFAULT 2, string_default STRING DEFAULT 'default_string' )`, escDBName, escTblName), fmt.Sprintf("CREATE USER readonly"), @@ -536,9 +536,9 @@ func TestAdminAPITableDetails(t *testing.T) { // Verify columns. expColumns := []serverpb.TableDetailsResponse_Column{ - {Name: "nulls_allowed", Type: "INT", Nullable: true, DefaultValue: ""}, - {Name: "nulls_not_allowed", Type: "INT", Nullable: false, DefaultValue: "1000:::INT"}, - {Name: "default2", Type: "INT", Nullable: true, DefaultValue: "2:::INT"}, + {Name: "nulls_allowed", Type: "INT8", Nullable: true, DefaultValue: ""}, + {Name: "nulls_not_allowed", Type: "INT8", Nullable: false, DefaultValue: "1000:::INT8"}, + {Name: "default2", Type: "INT8", Nullable: true, DefaultValue: "2:::INT8"}, {Name: "string_default", Type: "STRING", Nullable: true, DefaultValue: "'default_string':::STRING"}, {Name: "rowid", Type: "INT", Nullable: false, DefaultValue: "unique_rowid()", Hidden: true}, } diff --git a/pkg/server/status_test.go b/pkg/server/status_test.go index f1fbf65fba79..e5274376f920 100644 --- a/pkg/server/status_test.go +++ b/pkg/server/status_test.go @@ -943,7 +943,7 @@ func TestStatusAPIStatements(t *testing.T) { }{ {stmt: `CREATE DATABASE roachblog`}, {stmt: `SET database = roachblog`}, - {stmt: `CREATE TABLE posts (id INT PRIMARY KEY, body STRING)`}, + {stmt: `CREATE TABLE posts (id INT8 PRIMARY KEY, body STRING)`}, { stmt: `INSERT INTO posts VALUES (1, 'foo')`, fingerprinted: `INSERT INTO posts VALUES (_, _)`, diff --git a/pkg/server/updates_test.go b/pkg/server/updates_test.go index 31ab55ce7083..dc8c7f4f1aea 100644 --- a/pkg/server/updates_test.go +++ b/pkg/server/updates_test.go @@ -263,7 +263,7 @@ func TestReportUsage(t *testing.T) { } if _, err := db.Exec( - fmt.Sprintf(`CREATE TABLE %[1]s.%[1]s (%[1]s INT CONSTRAINT %[1]s CHECK (%[1]s > 1))`, elemName), + fmt.Sprintf(`CREATE TABLE %[1]s.%[1]s (%[1]s INT8 CONSTRAINT %[1]s CHECK (%[1]s > 1))`, elemName), ); err != nil { t.Fatal(err) } @@ -333,7 +333,7 @@ func TestReportUsage(t *testing.T) { ) { t.Fatal(err) } - if _, err := db.Exec(`CREATE TABLE somestring.foo (a INT PRIMARY KEY, b INT, INDEX (b) INTERLEAVE IN PARENT foo (b))`); !testutils.IsError( + if _, err := db.Exec(`CREATE TABLE somestring.foo (a INT8 PRIMARY KEY, b INT8, INDEX (b) INTERLEAVE IN PARENT foo (b))`); !testutils.IsError( err, "unimplemented: use CREATE INDEX to make interleaved indexes", ) { t.Fatal(err) @@ -654,7 +654,7 @@ func TestReportUsage(t *testing.T) { `[false,false,false] ALTER DATABASE _ CONFIGURE ZONE = _`, `[false,false,false] ALTER TABLE _ CONFIGURE ZONE = _`, `[false,false,false] CREATE DATABASE _`, - `[false,false,false] CREATE TABLE _ (_ INT, CONSTRAINT _ CHECK (_ > _))`, + `[false,false,false] CREATE TABLE _ (_ INT8, CONSTRAINT _ CHECK (_ > _))`, `[false,false,false] SET CLUSTER SETTING "cluster.organization" = _`, `[false,false,false] SET CLUSTER SETTING "diagnostics.reporting.send_crash_reports" = _`, `[false,false,false] SET CLUSTER SETTING "server.time_until_store_dead" = _`, @@ -662,7 +662,7 @@ func TestReportUsage(t *testing.T) { `[false,false,false] SET application_name = DEFAULT`, `[false,false,false] SET application_name = _`, `[false,false,false] UPDATE _ SET _ = _ + _`, - `[false,false,true] CREATE TABLE _ (_ INT PRIMARY KEY, _ INT, INDEX (_) INTERLEAVE IN PARENT _ (_))`, + `[false,false,true] CREATE TABLE _ (_ INT8 PRIMARY KEY, _ INT8, INDEX (_) INTERLEAVE IN PARENT _ (_))`, `[true,false,false] INSERT INTO _ SELECT unnest(ARRAY[_, _, __more2__])`, `[true,false,false] INSERT INTO _ VALUES (_), (__more2__)`, `[true,false,false] INSERT INTO _ VALUES (length($1::STRING)), (__more1__)`, @@ -704,8 +704,8 @@ func TestReportUsage(t *testing.T) { `ALTER DATABASE _ CONFIGURE ZONE = _`, `ALTER TABLE _ CONFIGURE ZONE = _`, `CREATE DATABASE _`, - `CREATE TABLE _ (_ INT, CONSTRAINT _ CHECK (_ > _))`, - `CREATE TABLE _ (_ INT PRIMARY KEY, _ INT, INDEX (_) INTERLEAVE IN PARENT _ (_))`, + `CREATE TABLE _ (_ INT8, CONSTRAINT _ CHECK (_ > _))`, + `CREATE TABLE _ (_ INT8 PRIMARY KEY, _ INT8, INDEX (_) INTERLEAVE IN PARENT _ (_))`, `INSERT INTO _ VALUES (length($1::STRING)), (__more1__)`, `INSERT INTO _ VALUES (_), (__more2__)`, `INSERT INTO _ SELECT unnest(ARRAY[_, _, __more2__])`, diff --git a/pkg/sql/coltypes/aliases.go b/pkg/sql/coltypes/aliases.go index d4132045bca9..35bd7ab3b641 100644 --- a/pkg/sql/coltypes/aliases.go +++ b/pkg/sql/coltypes/aliases.go @@ -31,8 +31,6 @@ var ( // VarBit is an immutable T instance. VarBit = &TBitArray{Width: 0, Variable: true} - // Int is an immutable T instance. - Int = &TInt{} // Int2 is an immutable T instance. Int2 = &TInt{Width: 16} // Int4 is an immutable T instance. @@ -40,8 +38,6 @@ var ( // Int8 is an immutable T instance. Int8 = &TInt{Width: 64} - // Serial is an immutable T instance. - Serial = &TSerial{TInt: Int} // Serial2 is an immutable T instance. Serial2 = &TSerial{TInt: Int2} // Serial4 is an immutable T instance. @@ -87,7 +83,7 @@ var ( Bytes = &TBytes{} // Int2vector is an immutable T instance. - Int2vector = &TVector{Name: "INT2VECTOR", ParamType: Int} + Int2vector = &TVector{Name: "INT2VECTOR", ParamType: Int8} // UUID is an immutable T instance. UUID = &TUUID{} diff --git a/pkg/sql/coltypes/conv.go b/pkg/sql/coltypes/conv.go index b68882731010..78d8f39816e4 100644 --- a/pkg/sql/coltypes/conv.go +++ b/pkg/sql/coltypes/conv.go @@ -73,7 +73,7 @@ func DatumTypeToColumnType(t types.T) (T, error) { case types.BitArray: return VarBit, nil case types.Int: - return Int, nil + return Int8, nil case types.Float: return Float8, nil case types.Decimal: diff --git a/pkg/sql/distsqlplan/physical_plan.go b/pkg/sql/distsqlplan/physical_plan.go index df45f2df063d..69daa34f5cc5 100644 --- a/pkg/sql/distsqlplan/physical_plan.go +++ b/pkg/sql/distsqlplan/physical_plan.go @@ -900,11 +900,23 @@ func MergeResultTypes(left, right []sqlbase.ColumnType) ([]sqlbase.ColumnType, e // equivalentType checks whether a column type is equivalent to // another for the purpose of UNION. This excludes its VisibleType -// type alias, which doesn't effect the merging of values. +// type alias, which doesn't effect the merging of values. There is +// also special handling for "naked" int types of no defined size. func equivalentTypes(c, other *sqlbase.ColumnType) bool { + // Convert a "naked" INT type to INT8. The 64-bit value is for + // historical compatibility before all INTs were assigned an + // explicit width at parse time. + lhs := *c + if lhs.SemanticType == sqlbase.ColumnType_INT && lhs.Width == 0 { + lhs.Width = 64 + } + rhs := *other + if rhs.SemanticType == sqlbase.ColumnType_INT && rhs.Width == 0 { + rhs.Width = 64 + } rhs.VisibleType = c.VisibleType - return c.Equal(rhs) + return lhs.Equal(rhs) } // AddJoinStage adds join processors at each of the specified nodes, and wires diff --git a/pkg/sql/err_count_test.go b/pkg/sql/err_count_test.go index 6ce69474f988..6ed29358d5e9 100644 --- a/pkg/sql/err_count_test.go +++ b/pkg/sql/err_count_test.go @@ -69,7 +69,7 @@ func TestUnimplementedCounts(t *testing.T) { s, db, _ := serverutils.StartServer(t, params) defer s.Stopper().Stop(context.TODO()) - if _, err := db.Exec("CREATE TABLE t(x INT)"); err != nil { + if _, err := db.Exec("CREATE TABLE t(x INT8)"); err != nil { t.Fatal(err) } @@ -77,7 +77,7 @@ func TestUnimplementedCounts(t *testing.T) { t.Fatal("expected error, got no error") } - if telemetry.GetFeatureCounts()["unimplemented.#9851.INT->STRING"] == 0 { + if telemetry.GetFeatureCounts()["unimplemented.#9851.INT8->STRING"] == 0 { t.Fatal("expected unimplemented telemetry, got nothing") } } diff --git a/pkg/sql/logictest/testdata/logic_test/alter_column_type b/pkg/sql/logictest/testdata/logic_test/alter_column_type index 48f2b538e201..0edcefd62d97 100644 --- a/pkg/sql/logictest/testdata/logic_test/alter_column_type +++ b/pkg/sql/logictest/testdata/logic_test/alter_column_type @@ -74,8 +74,8 @@ show create table t ---- table_name create_statement t CREATE TABLE t ( - a INT NOT NULL, - i INT NULL, + a INT8 NOT NULL, + i INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), INDEX idx2 (i ASC), FAMILY "primary" (a, i) @@ -109,7 +109,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM t ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT true NULL · {} false +a INT8 true NULL · {} false rowid INT false unique_rowid() · {primary} true statement ok @@ -119,7 +119,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM t ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT true NULL · {} false +a INT8 true NULL · {} false rowid INT false unique_rowid() · {primary} true statement ok diff --git a/pkg/sql/logictest/testdata/logic_test/alter_table b/pkg/sql/logictest/testdata/logic_test/alter_table index 9753e7cf61c6..7ff787ae7777 100644 --- a/pkg/sql/logictest/testdata/logic_test/alter_table +++ b/pkg/sql/logictest/testdata/logic_test/alter_table @@ -22,9 +22,9 @@ query TTBTTTB colnames SHOW COLUMNS FROM t ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false NULL · {primary,t_f_idx} false -f INT true NULL · {t_f_idx} false -b INT true NULL · {} false +a INT8 false NULL · {primary,t_f_idx} false +f INT8 true NULL · {t_f_idx} false +b INT8 true NULL · {} false statement ok ALTER TABLE t ADD CONSTRAINT foo UNIQUE (b) @@ -405,7 +405,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM tt ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false NULL · {primary,tt_s_key,tt_t_key} false +a INT8 false NULL · {primary,tt_s_key,tt_t_key} false q DECIMAL false NULL · {} false r DECIMAL true NULL · {} false s DECIMAL false NULL · {tt_s_key} false @@ -599,8 +599,8 @@ query TTBTTTB colnames SHOW COLUMNS FROM privs ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false NULL · {primary} false -b INT true NULL · {} false +a INT8 false NULL · {primary} false +b INT8 true NULL · {} false statement ok GRANT CREATE ON privs TO testuser @@ -617,9 +617,9 @@ query TTBTTTB colnames SHOW COLUMNS FROM privs ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false NULL · {primary,foo} false -b INT true NULL · {foo} false -c INT true NULL · {} false +a INT8 false NULL · {primary,foo} false +b INT8 true NULL · {foo} false +c INT8 true NULL · {} false statement error pgcode 42P01 relation "nonexistent" does not exist ALTER TABLE nonexistent SPLIT AT VALUES (42) @@ -711,8 +711,8 @@ query TT show create table decomputed_column ---- decomputed_column CREATE TABLE decomputed_column ( - a INT NOT NULL, - b INT NULL, + a INT8 NOT NULL, + b INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), FAMILY "primary" (a, b) ) diff --git a/pkg/sql/logictest/testdata/logic_test/array b/pkg/sql/logictest/testdata/logic_test/array index e3eae0aa8f6cd33d2cb9141b09dec5928e31db00..e5442a743c830c9c6e9f5cf3742072c247927e21 100644 GIT binary patch delta 31 ncmdl!nQ`Z2#togaj24q8C|XUn(H7i%MRpG}qs8V4is~8wzE2AP delta 31 ncmdlvnQ{AM#togao4aJ$StfVMT20QAW1Fn0WVcyBX{9; 0), - CONSTRAINT check_x_y CHECK ((x + y) > 0), - CONSTRAINT check_y_z CHECK ((y + z) > 0), - CONSTRAINT check_y_z1 CHECK ((y + z) = 0), - CONSTRAINT named_constraint CHECK (z = 1) - ) + x INT8 NULL, + y INT8 NULL, + z INT8 NULL, + FAMILY "primary" (x, y, z, rowid), + CONSTRAINT check_x CHECK (x > 0), + CONSTRAINT check_x_y CHECK ((x + y) > 0), + CONSTRAINT check_y_z CHECK ((y + z) > 0), + CONSTRAINT check_y_z1 CHECK ((y + z) = 0), + CONSTRAINT named_constraint CHECK (z = 1) +) # Check that table references are dequalified in their stored representation. @@ -256,12 +256,12 @@ query TT SHOW CREATE TABLE t8 ---- t8 CREATE TABLE t8 ( - a INT NULL, - FAMILY "primary" (a, rowid), - CONSTRAINT check_a CHECK (a > 0), - CONSTRAINT check_a1 CHECK (a > 0), - CONSTRAINT check_a2 CHECK (a > 0) - ) + a INT8 NULL, + FAMILY "primary" (a, rowid), + CONSTRAINT check_a CHECK (a > 0), + CONSTRAINT check_a1 CHECK (a > 0), + CONSTRAINT check_a2 CHECK (a > 0) +) statement ok CREATE DATABASE test2 diff --git a/pkg/sql/logictest/testdata/logic_test/computed b/pkg/sql/logictest/testdata/logic_test/computed index 20573ad25426..eff1fde614a3 100644 --- a/pkg/sql/logictest/testdata/logic_test/computed +++ b/pkg/sql/logictest/testdata/logic_test/computed @@ -10,12 +10,12 @@ CREATE TABLE with_no_column_refs ( query TT SHOW CREATE TABLE with_no_column_refs ---- -with_no_column_refs CREATE TABLE with_no_column_refs ( - a INT NULL, - b INT NULL, - c INT NULL AS (3) STORED, - FAMILY "primary" (a, b, c, rowid) - ) +with_no_column_refs CREATE TABLE with_no_column_refs ( + a INT8 NULL, + b INT8 NULL, + c INT8 NULL AS (3) STORED, + FAMILY "primary" (a, b, c, rowid) +) statement ok CREATE TABLE extra_parens ( @@ -27,12 +27,12 @@ CREATE TABLE extra_parens ( query TT SHOW CREATE TABLE extra_parens ---- -extra_parens CREATE TABLE extra_parens ( - a INT NULL, - b INT NULL, - c INT NULL AS ((3)) STORED, - FAMILY "primary" (a, b, c, rowid) - ) +extra_parens CREATE TABLE extra_parens ( + a INT8 NULL, + b INT8 NULL, + c INT8 NULL AS ((3)) STORED, + FAMILY "primary" (a, b, c, rowid) +) statement error cannot write directly to computed column "c" @@ -79,22 +79,22 @@ CREATE TABLE x ( query TT SHOW CREATE TABLE x ---- -x CREATE TABLE x ( - a INT NULL DEFAULT 3:::INT, - b INT NULL DEFAULT 7:::INT, - c INT NULL AS (a) STORED, - d INT NULL AS (a + b) STORED, - FAMILY "primary" (a, b, c, d, rowid) - ) +x CREATE TABLE x ( + a INT8 NULL DEFAULT 3:::INT8, + b INT8 NULL DEFAULT 7:::INT8, + c INT8 NULL AS (a) STORED, + d INT8 NULL AS (a + b) STORED, + FAMILY "primary" (a, b, c, d, rowid) +) query TTBTTTB colnames SHOW COLUMNS FROM x ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT true 3:::INT · {} false -b INT true 7:::INT · {} false -c INT true NULL a {} false -d INT true NULL a + b {} false +a INT8 true 3:::INT8 · {} false +b INT8 true 7:::INT8 · {} false +c INT8 true NULL a {} false +d INT8 true NULL a + b {} false rowid INT false unique_rowid() · {primary} true statement error cannot write directly to computed column "c" @@ -597,11 +597,11 @@ CREATE TABLE x ( query TT SHOW CREATE TABLE x ---- -x CREATE TABLE x ( - a INT NULL, - b INT NULL AS (a) STORED, - FAMILY "primary" (a, b, rowid) - ) +x CREATE TABLE x ( + a INT8 NULL, + b INT8 NULL AS (a) STORED, + FAMILY "primary" (a, b, rowid) +) statement ok DROP TABLE x @@ -619,11 +619,11 @@ ALTER TABLE x RENAME COLUMN a TO c query TT SHOW CREATE TABLE x ---- -x CREATE TABLE x ( - c INT NULL, - b INT NULL AS (c) STORED, - FAMILY "primary" (c, b, rowid) - ) +x CREATE TABLE x ( + c INT8 NULL, + b INT8 NULL AS (c) STORED, + FAMILY "primary" (c, b, rowid) +) statement ok DROP TABLE x @@ -658,10 +658,10 @@ query TT SHOW CREATE TABLE x ---- x CREATE TABLE x ( - a INT NULL, - b INT NULL AS (a * 2) STORED, - c INT NOT NULL AS (a + 4) STORED, - FAMILY "primary" (a, b, rowid, c) + a INT8 NULL, + b INT8 NULL AS (a * 2) STORED, + c INT8 NOT NULL AS (a + 4) STORED, + FAMILY "primary" (a, b, rowid, c) ) statement ok @@ -742,5 +742,5 @@ CREATE TABLE x ( b INT AS (a+1) STORED ) -query error value type decimal doesn't match type INT of column "a" +query error value type decimal doesn't match type INT8 of column "a" INSERT INTO x VALUES(1.4) diff --git a/pkg/sql/logictest/testdata/logic_test/create_statements b/pkg/sql/logictest/testdata/logic_test/create_statements index cde5f909a2f5..4813aad6a6c8 100644 --- a/pkg/sql/logictest/testdata/logic_test/create_statements +++ b/pkg/sql/logictest/testdata/logic_test/create_statements @@ -11,17 +11,17 @@ SELECT create_statement, create_nofks, alter_statements, validate_statements FRO ---- create_statement create_nofks alter_statements validate_statements CREATE TABLE t ( - a INT NULL, + a INT8 NULL, CONSTRAINT fk_a_ref_t FOREIGN KEY (a) REFERENCES t (rowid), INDEX t_auto_index_fk_a_ref_t (a ASC), FAMILY "primary" (a, rowid) ) CREATE TABLE t ( - a INT NULL, + a INT8 NULL, INDEX t_auto_index_fk_a_ref_t (a ASC), FAMILY "primary" (a, rowid) ) {"ALTER TABLE t ADD CONSTRAINT fk_a_ref_t FOREIGN KEY (a) REFERENCES t (rowid)"} {"ALTER TABLE t VALIDATE CONSTRAINT fk_a_ref_t"} CREATE TABLE v ( - "'" INT NULL, + "'" INT8 NULL, s STRING NULL, CONSTRAINT fk_s_ref_v FOREIGN KEY (s) REFERENCES v (s), UNIQUE INDEX v_s_key (s ASC), @@ -29,7 +29,7 @@ CREATE TABLE v ( INDEX "v_auto_index_fk_'_ref_t" ("'" ASC), FAMILY "primary" ("'", s, rowid) ) CREATE TABLE v ( - "'" INT NULL, + "'" INT8 NULL, s STRING NULL, UNIQUE INDEX v_s_key (s ASC), INDEX "v_auto_index_fk_'_ref_t" ("'" ASC), diff --git a/pkg/sql/logictest/testdata/logic_test/datetime b/pkg/sql/logictest/testdata/logic_test/datetime index 7de1fb8ec335..0be2f0bc3bf8 100644 --- a/pkg/sql/logictest/testdata/logic_test/datetime +++ b/pkg/sql/logictest/testdata/logic_test/datetime @@ -921,7 +921,7 @@ CREATE TABLE tz ( query TTBTTTB SHOW COLUMNS FROM tz ---- -a INT false NULL · {primary} false +a INT8 false NULL · {primary} false b TIMESTAMP true NULL · {} false c TIMESTAMPTZ true NULL · {} false d TIMESTAMPTZ true NULL · {} false diff --git a/pkg/sql/logictest/testdata/logic_test/default b/pkg/sql/logictest/testdata/logic_test/default index e7348bfa0eb3..0f048be315e2 100644 --- a/pkg/sql/logictest/testdata/logic_test/default +++ b/pkg/sql/logictest/testdata/logic_test/default @@ -35,7 +35,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM t ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false 42:::INT · {primary} false +a INT8 false 42:::INT8 · {primary} false b TIMESTAMP true now():::TIMESTAMP · {} false c FLOAT8 true random() · {} false @@ -117,6 +117,6 @@ query TTBTTTB colnames SHOW COLUMNS FROM v ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false NULL · {primary} false +a INT8 false NULL · {primary} false b TIMESTAMP true NULL · {} false -c INT true NULL · {} false +c INT8 true NULL · {} false diff --git a/pkg/sql/logictest/testdata/logic_test/delete b/pkg/sql/logictest/testdata/logic_test/delete index 546889ed4ea5..d62af8674bcd 100644 --- a/pkg/sql/logictest/testdata/logic_test/delete +++ b/pkg/sql/logictest/testdata/logic_test/delete @@ -197,7 +197,7 @@ query T SELECT create_statement FROM [SHOW CREATE t29494] ---- CREATE TABLE t29494 ( - x INT NOT NULL, + x INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (x ASC), FAMILY "primary" (x) ) diff --git a/pkg/sql/logictest/testdata/logic_test/dependencies b/pkg/sql/logictest/testdata/logic_test/dependencies index 850f5203364d..1fcdf5679cfd 100644 --- a/pkg/sql/logictest/testdata/logic_test/dependencies +++ b/pkg/sql/logictest/testdata/logic_test/dependencies @@ -18,21 +18,21 @@ query ITITTBTB colnames SELECT * FROM crdb_internal.table_columns WHERE descriptor_name LIKE 'test_%' ORDER BY descriptor_id, column_id ---- descriptor_id descriptor_name column_id column_name column_type nullable default_expr hidden -53 test_kv 1 k semantic_type:INT width:0 precision:0 visible_type:NONE false NULL false -53 test_kv 2 v semantic_type:INT width:0 precision:0 visible_type:NONE true NULL false +53 test_kv 1 k semantic_type:INT width:64 precision:0 visible_type:BIGINT false NULL false +53 test_kv 2 v semantic_type:INT width:64 precision:0 visible_type:BIGINT true NULL false 53 test_kv 3 w semantic_type:DECIMAL width:0 precision:0 visible_type:NONE true NULL false -54 test_kvr1 1 k semantic_type:INT width:0 precision:0 visible_type:NONE false NULL false -55 test_kvr2 1 k semantic_type:INT width:0 precision:0 visible_type:NONE true NULL false -55 test_kvr2 2 v semantic_type:INT width:0 precision:0 visible_type:NONE true NULL false +54 test_kvr1 1 k semantic_type:INT width:64 precision:0 visible_type:BIGINT false NULL false +55 test_kvr2 1 k semantic_type:INT width:64 precision:0 visible_type:BIGINT true NULL false +55 test_kvr2 2 v semantic_type:INT width:64 precision:0 visible_type:BIGINT true NULL false 55 test_kvr2 3 rowid semantic_type:INT width:0 precision:0 visible_type:NONE false unique_rowid() true -56 test_kvr3 1 k semantic_type:INT width:0 precision:0 visible_type:NONE true NULL false -56 test_kvr3 2 v semantic_type:INT width:0 precision:0 visible_type:NONE true NULL false +56 test_kvr3 1 k semantic_type:INT width:64 precision:0 visible_type:BIGINT true NULL false +56 test_kvr3 2 v semantic_type:INT width:64 precision:0 visible_type:BIGINT true NULL false 56 test_kvr3 3 rowid semantic_type:INT width:0 precision:0 visible_type:NONE false unique_rowid() true -57 test_kvi1 1 k semantic_type:INT width:0 precision:0 visible_type:NONE false NULL false -58 test_kvi2 1 k semantic_type:INT width:0 precision:0 visible_type:NONE false NULL false -58 test_kvi2 2 v semantic_type:INT width:0 precision:0 visible_type:NONE true NULL false -59 test_v1 1 v semantic_type:INT width:0 precision:0 visible_type:NONE false NULL false -60 test_v2 1 v semantic_type:INT width:0 precision:0 visible_type:NONE false NULL false +57 test_kvi1 1 k semantic_type:INT width:64 precision:0 visible_type:BIGINT false NULL false +58 test_kvi2 1 k semantic_type:INT width:64 precision:0 visible_type:BIGINT false NULL false +58 test_kvi2 2 v semantic_type:INT width:64 precision:0 visible_type:BIGINT true NULL false +59 test_v1 1 v semantic_type:INT width:64 precision:0 visible_type:BIGINT false NULL false +60 test_v2 1 v semantic_type:INT width:64 precision:0 visible_type:BIGINT false NULL false query ITITTB colnames SELECT * FROM crdb_internal.table_indexes WHERE descriptor_name LIKE 'test_%' ORDER BY descriptor_id, index_id diff --git a/pkg/sql/logictest/testdata/logic_test/family b/pkg/sql/logictest/testdata/logic_test/family index a2f7814d53f3..768ad347d3e8 100644 --- a/pkg/sql/logictest/testdata/logic_test/family +++ b/pkg/sql/logictest/testdata/logic_test/family @@ -16,14 +16,14 @@ query TT SHOW CREATE TABLE abcd ---- abcd CREATE TABLE abcd ( - a INT NOT NULL, - b INT NULL, - c INT NULL, - d INT NULL, + a INT8 NOT NULL, + b INT8 NULL, + c INT8 NULL, + d INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), FAMILY f1 (a, b), FAMILY fam_1_c_d (c, d) - ) +) statement ok CREATE INDEX d_idx ON abcd(d) @@ -150,16 +150,16 @@ query TT SHOW CREATE TABLE abcd ---- abcd CREATE TABLE abcd ( - a INT NOT NULL, - b INT NULL, - c INT NULL, - d INT NULL, + a INT8 NOT NULL, + b INT8 NULL, + c INT8 NULL, + d INT8 NULL, e STRING NULL, f DECIMAL NULL, - g INT NULL, - h INT NULL, - i INT NULL, - j INT NULL, + g INT8 NULL, + h INT8 NULL, + i INT8 NULL, + j INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), INDEX d_idx (d ASC), FAMILY f1 (a, b, e, f), @@ -167,7 +167,7 @@ abcd CREATE TABLE abcd ( FAMILY fam_2_g (g), FAMILY f_h (h, i), FAMILY f_j (j) - ) +) statement ok ALTER TABLE abcd DROP c, DROP d, DROP e, DROP h, DROP i, DROP j @@ -176,14 +176,14 @@ query TT SHOW CREATE TABLE abcd ---- abcd CREATE TABLE abcd ( - a INT NOT NULL, - b INT NULL, + a INT8 NOT NULL, + b INT8 NULL, f DECIMAL NULL, - g INT NULL, + g INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC), FAMILY f1 (a, b, f), FAMILY fam_2_g (g) - ) +) statement ok CREATE TABLE f1 (a INT PRIMARY KEY, b STRING, c STRING) @@ -192,12 +192,12 @@ query TT SHOW CREATE TABLE f1 ---- f1 CREATE TABLE f1 ( - a INT NOT NULL, - b STRING NULL, - c STRING NULL, - CONSTRAINT "primary" PRIMARY KEY (a ASC), - FAMILY "primary" (a, b, c) - ) + a INT8 NOT NULL, + b STRING NULL, + c STRING NULL, + CONSTRAINT "primary" PRIMARY KEY (a ASC), + FAMILY "primary" (a, b, c) +) statement ok CREATE TABLE assign_at_create (a INT PRIMARY KEY FAMILY pri, b INT FAMILY foo, c INT CREATE FAMILY) @@ -206,14 +206,14 @@ query TT SHOW CREATE TABLE assign_at_create ---- assign_at_create CREATE TABLE assign_at_create ( - a INT NOT NULL, - b INT NULL, - c INT NULL, - CONSTRAINT "primary" PRIMARY KEY (a ASC), - FAMILY pri (a), - FAMILY foo (b), - FAMILY fam_2_c (c) - ) + a INT8 NOT NULL, + b INT8 NULL, + c INT8 NULL, + CONSTRAINT "primary" PRIMARY KEY (a ASC), + FAMILY pri (a), + FAMILY foo (b), + FAMILY fam_2_c (c) +) # Check the the diff-column-id storage statement ok @@ -243,11 +243,11 @@ ALTER TABLE rename_col RENAME c TO e query TT SHOW CREATE TABLE rename_col ---- -rename_col CREATE TABLE rename_col ( - a INT NOT NULL, - d INT NULL, - e STRING NULL, - CONSTRAINT "primary" PRIMARY KEY (a ASC), - FAMILY fam_0_a_b (a, d), - FAMILY fam_1_c (e) +rename_col CREATE TABLE rename_col ( + a INT8 NOT NULL, + d INT8 NULL, + e STRING NULL, + CONSTRAINT "primary" PRIMARY KEY (a ASC), + FAMILY fam_0_a_b (a, d), + FAMILY fam_1_c (e) ) diff --git a/pkg/sql/logictest/testdata/logic_test/fk b/pkg/sql/logictest/testdata/logic_test/fk index 9527ce0f33fe..ce1cac60644b 100644 --- a/pkg/sql/logictest/testdata/logic_test/fk +++ b/pkg/sql/logictest/testdata/logic_test/fk @@ -238,8 +238,8 @@ SHOW CREATE TABLE delivery ---- delivery CREATE TABLE delivery ( ts TIMESTAMP NULL DEFAULT now():::TIMESTAMP, - "order" INT NULL, - shipment INT NULL, + "order" INT8 NULL, + shipment INT8 NULL, item STRING NULL, CONSTRAINT fk_item_ref_products FOREIGN KEY (item) REFERENCES products (upc), INDEX delivery_item_idx (item ASC), @@ -591,12 +591,12 @@ query TT SHOW CREATE TABLE refpairs ---- refpairs CREATE TABLE refpairs ( - a INT NULL, - b STRING NULL, - c INT NULL, - CONSTRAINT fk_a_ref_pairs FOREIGN KEY (a, b) REFERENCES pairs (src, dest) ON UPDATE RESTRICT, - INDEX refpairs_a_b_c_idx (a ASC, b ASC, c ASC), - FAMILY "primary" (a, b, c, rowid) + a INT8 NULL, + b STRING NULL, + c INT8 NULL, + CONSTRAINT fk_a_ref_pairs FOREIGN KEY (a, b) REFERENCES pairs (src, dest) ON UPDATE RESTRICT, + INDEX refpairs_a_b_c_idx (a ASC, b ASC, c ASC), + FAMILY "primary" (a, b, c, rowid) ) statement error pgcode 23503 foreign key violation: value \[100 'two'\] not found in pairs@pairs_src_dest_key \[src dest\] @@ -792,13 +792,13 @@ query TT SHOW CREATE TABLE refers ---- refers CREATE TABLE refers ( - a INT NULL, - b INT NULL, - INDEX another_idx (b ASC), - CONSTRAINT fk_a_ref_referee FOREIGN KEY (a) REFERENCES referee (id), - INDEX refers_auto_index_fk_a_ref_referee (a ASC), - INDEX foo (a ASC), - FAMILY "primary" (a, b, rowid) + a INT8 NULL, + b INT8 NULL, + INDEX another_idx (b ASC), + CONSTRAINT fk_a_ref_referee FOREIGN KEY (a) REFERENCES referee (id), + INDEX refers_auto_index_fk_a_ref_referee (a ASC), + INDEX foo (a ASC), + FAMILY "primary" (a, b, rowid) ) statement ok @@ -875,10 +875,10 @@ query TT SHOW CREATE TABLE pkref_b ---- pkref_b CREATE TABLE pkref_b ( - b INT NOT NULL, - CONSTRAINT "primary" PRIMARY KEY (b ASC), - CONSTRAINT fk_b_ref_pkref_a FOREIGN KEY (b) REFERENCES pkref_a (a) ON DELETE RESTRICT, - FAMILY "primary" (b) + b INT8 NOT NULL, + CONSTRAINT "primary" PRIMARY KEY (b ASC), + CONSTRAINT fk_b_ref_pkref_a FOREIGN KEY (b) REFERENCES pkref_a (a) ON DELETE RESTRICT, + FAMILY "primary" (b) ) subtest 20042 diff --git a/pkg/sql/logictest/testdata/logic_test/information_schema b/pkg/sql/logictest/testdata/logic_test/information_schema index c995d82c219a..9b4c365332f3 100644 --- a/pkg/sql/logictest/testdata/logic_test/information_schema +++ b/pkg/sql/logictest/testdata/logic_test/information_schema @@ -151,7 +151,7 @@ information_schema.tables CREATE TABLE tables ( table_name STRING NOT NULL, table_type STRING NOT NULL, is_insertable_into STRING NOT NULL, - version INT NULL + version INT8 NULL ) query TTBTTTB colnames @@ -163,7 +163,7 @@ table_schema STRING false NULL · table_name STRING false NULL · {} false table_type STRING false NULL · {} false is_insertable_into STRING false NULL · {} false -version INT true NULL · {} false +version INT8 true NULL · {} false query TTBITTBB colnames SHOW INDEXES FROM information_schema.tables @@ -814,7 +814,7 @@ FROM information_schema.columns WHERE table_schema = 'public' AND table_name = 'with_defaults' ---- table_name column_name column_default -with_defaults a 9:::INT +with_defaults a 9:::INT8 with_defaults b 'default':::STRING with_defaults c NULL with_defaults d NULL @@ -868,7 +868,7 @@ FROM information_schema.columns WHERE table_schema = 'public' AND table_name = 'data_types' ---- table_name column_name data_type crdb_sql_type -data_types a integer INT +data_types a bigint INT8 data_types a2 smallint INT2 data_types a4 integer INT4 data_types a8 bigint INT8 @@ -907,7 +907,7 @@ FROM information_schema.columns WHERE table_schema = 'public' AND table_name = 'char_len' ---- table_name column_name character_maximum_length character_octet_length -char_len a NULL NULL +char_len a 64 NULL char_len b 16 NULL char_len c 32 NULL char_len d NULL NULL @@ -1752,18 +1752,18 @@ udt_catalog STRING true NULL udt_schema STRING true NULL · {} false udt_name STRING true NULL · {} false data_type STRING true NULL · {} false -character_maximum_length INT true NULL · {} false -character_octet_length INT true NULL · {} false +character_maximum_length INT8 true NULL · {} false +character_octet_length INT8 true NULL · {} false character_set_catalog STRING true NULL · {} false character_set_schema STRING true NULL · {} false character_set_name STRING true NULL · {} false collation_catalog STRING true NULL · {} false collation_schema STRING true NULL · {} false collation_name STRING true NULL · {} false -numeric_precision INT true NULL · {} false -numeric_precision_radix INT true NULL · {} false -numeric_scale INT true NULL · {} false -datetime_precision INT true NULL · {} false +numeric_precision INT8 true NULL · {} false +numeric_precision_radix INT8 true NULL · {} false +numeric_scale INT8 true NULL · {} false +datetime_precision INT8 true NULL · {} false interval_type STRING true NULL · {} false interval_precision STRING true NULL · {} false type_udt_catalog STRING true NULL · {} false @@ -1771,7 +1771,7 @@ type_udt_schema STRING true NULL type_udt_name STRING true NULL · {} false scope_catalog STRING true NULL · {} false scope_name STRING true NULL · {} false -maximum_cardinality INT true NULL · {} false +maximum_cardinality INT8 true NULL · {} false dtd_identifier STRING true NULL · {} false routine_body STRING true NULL · {} false routine_definition STRING true NULL · {} false @@ -1783,7 +1783,7 @@ sql_data_access STRING true NULL is_null_call STRING true NULL · {} false sql_path STRING true NULL · {} false schema_level_routine STRING true NULL · {} false -max_dynamic_result_sets INT true NULL · {} false +max_dynamic_result_sets INT8 true NULL · {} false is_user_defined_cast STRING true NULL · {} false is_implicitly_invocable STRING true NULL · {} false security_type STRING true NULL · {} false @@ -1797,7 +1797,7 @@ new_savepoint_level STRING true NULL is_udt_dependent STRING true NULL · {} false result_cast_from_data_type STRING true NULL · {} false result_cast_as_locator STRING true NULL · {} false -result_cast_char_max_length INT true NULL · {} false +result_cast_char_max_length INT8 true NULL · {} false result_cast_char_octet_length STRING true NULL · {} false result_cast_char_set_catalog STRING true NULL · {} false result_cast_char_set_schema STRING true NULL · {} false @@ -1805,19 +1805,19 @@ result_cast_char_set_name STRING true NULL result_cast_collation_catalog STRING true NULL · {} false result_cast_collation_schema STRING true NULL · {} false result_cast_collation_name STRING true NULL · {} false -result_cast_numeric_precision INT true NULL · {} false -result_cast_numeric_precision_radix INT true NULL · {} false -result_cast_numeric_scale INT true NULL · {} false +result_cast_numeric_precision INT8 true NULL · {} false +result_cast_numeric_precision_radix INT8 true NULL · {} false +result_cast_numeric_scale INT8 true NULL · {} false result_cast_datetime_precision STRING true NULL · {} false result_cast_interval_type STRING true NULL · {} false -result_cast_interval_precision INT true NULL · {} false +result_cast_interval_precision INT8 true NULL · {} false result_cast_type_udt_catalog STRING true NULL · {} false result_cast_type_udt_schema STRING true NULL · {} false result_cast_type_udt_name STRING true NULL · {} false result_cast_scope_catalog STRING true NULL · {} false result_cast_scope_schema STRING true NULL · {} false result_cast_scope_name STRING true NULL · {} false -result_cast_maximum_cardinality INT true NULL · {} false +result_cast_maximum_cardinality INT8 true NULL · {} false result_cast_dtd_identifier STRING true NULL · {} false query TTTTTTTTTTTTTTIITTTTTTIIIITTTTTTTITTTTTTTTTTTITTTTTTTTTTTTTITTTTTTTIIITTITTTTTTIT colnames @@ -1833,33 +1833,33 @@ column_name data_type is_nullable column_default generation_exp specific_catalog STRING true NULL · {} false specific_schema STRING true NULL · {} false specific_name STRING true NULL · {} false -ordinal_position INT true NULL · {} false +ordinal_position INT8 true NULL · {} false parameter_mode STRING true NULL · {} false is_result STRING true NULL · {} false as_locator STRING true NULL · {} false parameter_name STRING true NULL · {} false data_type STRING true NULL · {} false -character_maximum_length INT true NULL · {} false -character_octet_length INT true NULL · {} false +character_maximum_length INT8 true NULL · {} false +character_octet_length INT8 true NULL · {} false character_set_catalog STRING true NULL · {} false character_set_schema STRING true NULL · {} false character_set_name STRING true NULL · {} false collation_catalog STRING true NULL · {} false collation_schema STRING true NULL · {} false collation_name STRING true NULL · {} false -numeric_precision INT true NULL · {} false -numeric_precision_radix INT true NULL · {} false -numeric_scale INT true NULL · {} false -datetime_precision INT true NULL · {} false +numeric_precision INT8 true NULL · {} false +numeric_precision_radix INT8 true NULL · {} false +numeric_scale INT8 true NULL · {} false +datetime_precision INT8 true NULL · {} false interval_type STRING true NULL · {} false -interval_precision INT true NULL · {} false +interval_precision INT8 true NULL · {} false udt_catalog STRING true NULL · {} false udt_schema STRING true NULL · {} false udt_name STRING true NULL · {} false scope_catalog STRING true NULL · {} false scope_schema STRING true NULL · {} false scope_name STRING true NULL · {} false -maximum_cardinality INT true NULL · {} false +maximum_cardinality INT8 true NULL · {} false dtd_identifier STRING true NULL · {} false parameter_default STRING true NULL · {} false diff --git a/pkg/sql/logictest/testdata/logic_test/insert b/pkg/sql/logictest/testdata/logic_test/insert index fe1db26a6afb..7f063ab0f2d1 100644 --- a/pkg/sql/logictest/testdata/logic_test/insert +++ b/pkg/sql/logictest/testdata/logic_test/insert @@ -535,7 +535,7 @@ subtest regression_26742 statement ok CREATE TABLE ct(x INT, derived INT AS (x+1) STORED) -statement error value type string doesn't match type INT of column "x" +statement error value type string doesn't match type INT8 of column "x" INSERT INTO ct(x) SELECT c FROM sw subtest contraint_check_validation_ordering @@ -598,7 +598,7 @@ query T SELECT create_statement FROM [SHOW CREATE t29494] ---- CREATE TABLE t29494 ( - x INT NULL, + x INT8 NULL, FAMILY "primary" (x, rowid) ) diff --git a/pkg/sql/logictest/testdata/logic_test/interleaved b/pkg/sql/logictest/testdata/logic_test/interleaved index 00e24c201762..1bac8fff6a23 100644 --- a/pkg/sql/logictest/testdata/logic_test/interleaved +++ b/pkg/sql/logictest/testdata/logic_test/interleaved @@ -199,17 +199,17 @@ CREATE UNIQUE INDEX ON all_interleaves (d, c) INTERLEAVE IN PARENT p1_1 (d) query TT SHOW CREATE TABLE all_interleaves ---- -all_interleaves CREATE TABLE all_interleaves ( - b INT NOT NULL, - c INT NULL, - d INT NULL, - CONSTRAINT "primary" PRIMARY KEY (b ASC), - INDEX all_interleaves_c_idx (c ASC), - UNIQUE INDEX all_interleaves_d_key (d ASC), - INDEX all_interleaves_c_d_idx (c ASC, d ASC) INTERLEAVE IN PARENT p1_1 (c), - UNIQUE INDEX all_interleaves_d_c_key (d ASC, c ASC) INTERLEAVE IN PARENT p1_1 (d), - FAMILY "primary" (b, c, d) - ) INTERLEAVE IN PARENT p1_1 (b) +all_interleaves CREATE TABLE all_interleaves ( + b INT8 NOT NULL, + c INT8 NULL, + d INT8 NULL, + CONSTRAINT "primary" PRIMARY KEY (b ASC), + INDEX all_interleaves_c_idx (c ASC), + UNIQUE INDEX all_interleaves_d_key (d ASC), + INDEX all_interleaves_c_d_idx (c ASC, d ASC) INTERLEAVE IN PARENT p1_1 (c), + UNIQUE INDEX all_interleaves_d_c_key (d ASC, c ASC) INTERLEAVE IN PARENT p1_1 (d), + FAMILY "primary" (b, c, d) +) INTERLEAVE IN PARENT p1_1 (b) statement error pgcode 42P01 relation "missing" does not exist CREATE TABLE err (f FLOAT PRIMARY KEY) INTERLEAVE IN PARENT missing (f) @@ -306,7 +306,7 @@ query TT SHOW CREATE TABLE interdb ---- interdb CREATE TABLE interdb ( - x INT NOT NULL, + x INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (x ASC), FAMILY "primary" (x) ) INTERLEAVE IN PARENT other.public.foo (x) diff --git a/pkg/sql/logictest/testdata/logic_test/inverted_index b/pkg/sql/logictest/testdata/logic_test/inverted_index index ae7b0fa1ec93..eaae6ce3c287 100644 --- a/pkg/sql/logictest/testdata/logic_test/inverted_index +++ b/pkg/sql/logictest/testdata/logic_test/inverted_index @@ -37,7 +37,7 @@ query TT SHOW CREATE TABLE c ---- c CREATE TABLE c ( - id INT NOT NULL, + id INT8 NOT NULL, foo JSONB NULL, bar JSONB NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), diff --git a/pkg/sql/logictest/testdata/logic_test/name_escapes b/pkg/sql/logictest/testdata/logic_test/name_escapes index 52c077ffb9d2..3821aa5ab0c3 100644 --- a/pkg/sql/logictest/testdata/logic_test/name_escapes +++ b/pkg/sql/logictest/testdata/logic_test/name_escapes @@ -23,11 +23,11 @@ query TT SHOW CREATE TABLE ";--notbetter" ---- ";--notbetter" CREATE TABLE ";--notbetter" ( - x INT NOT NULL, - y INT NULL, + x INT8 NOT NULL, + y INT8 NULL, "welp INT); -- concerning much DROP USER dumpty; -CREATE TABLE unused (x " INT NULL, +CREATE TABLE unused (x " INT8 NULL, CONSTRAINT "getmeoutofhere PRIMARY KEY (x ASC)); -- saveme! DROP USER madhatter; CREATE TABLE unused4(x INT, CONSTRAINT woo " PRIMARY KEY (x ASC), @@ -58,8 +58,8 @@ query TT SHOW CREATE TABLE ";--dontask" ---- ";--dontask" CREATE TABLE ";--dontask" ( - a INT NULL, - b INT NULL, - c INT NULL, + a INT8 NULL, + b INT8 NULL, + c INT8 NULL, FAMILY "primary" (a, b, c, rowid) ) diff --git a/pkg/sql/logictest/testdata/logic_test/no_primary_key b/pkg/sql/logictest/testdata/logic_test/no_primary_key index 81a3412ca9f2..4dff85bdcec3 100644 --- a/pkg/sql/logictest/testdata/logic_test/no_primary_key +++ b/pkg/sql/logictest/testdata/logic_test/no_primary_key @@ -62,8 +62,8 @@ SELECT rowid FROM t WHERE a = 10 query TTBTTTB SHOW COLUMNS FROM t ---- -a INT true NULL · {} false -b INT true NULL · {} false +a INT8 true NULL · {} false +b INT8 true NULL · {} false rowid INT false unique_rowid() · {primary} true c STRING true NULL · {} false diff --git a/pkg/sql/logictest/testdata/logic_test/pg_catalog b/pkg/sql/logictest/testdata/logic_test/pg_catalog index 437829cf61d4..df7134a40332 100644 --- a/pkg/sql/logictest/testdata/logic_test/pg_catalog +++ b/pkg/sql/logictest/testdata/logic_test/pg_catalog @@ -509,7 +509,7 @@ JOIN pg_catalog.pg_namespace n ON c.relnamespace = n.oid WHERE n.nspname = 'public' ---- oid relname adrelid adnum adbin adsrc -1371742922 t1 4183203597 4 12:::INT 12:::INT +1371742922 t1 4183203597 4 12:::INT8 12:::INT8 3294137148 t2 192646233 2 unique_rowid() unique_rowid() 1821466931 t3 226054345 3 'FOO':::STRING 'FOO':::STRING 437430594 t3 226054345 4 unique_rowid() unique_rowid() @@ -1294,13 +1294,13 @@ SHOW COLUMNS FROM pg_catalog.pg_stat_activity column_name data_type is_nullable column_default generation_expression indices is_hidden datid OID true NULL · {} false datname NAME true NULL · {} false -pid INT true NULL · {} false +pid INT8 true NULL · {} false usesysid OID true NULL · {} false username NAME true NULL · {} false application_name STRING true NULL · {} false client_addr INET true NULL · {} false client_hostname STRING true NULL · {} false -client_port INT true NULL · {} false +client_port INT8 true NULL · {} false backend_start TIMESTAMPTZ true NULL · {} false xact_start TIMESTAMPTZ true NULL · {} false query_start TIMESTAMPTZ true NULL · {} false @@ -1308,8 +1308,8 @@ state_change TIMESTAMPTZ true NULL · wait_event_type STRING true NULL · {} false wait_event STRING true NULL · {} false state STRING true NULL · {} false -backend_xid INT true NULL · {} false -backend_xmin INT true NULL · {} false +backend_xid INT8 true NULL · {} false +backend_xmin INT8 true NULL · {} false query STRING true NULL · {} false @@ -1512,7 +1512,7 @@ JOIN pg_catalog.pg_class c ON def.adrelid = c.oid JOIN pg_catalog.pg_namespace n ON c.relnamespace = n.oid WHERE n.nspname = 'public' ---- -1371742922 t1 12:::INT +1371742922 t1 12:::INT8 3294137148 t2 unique_rowid() 1821466931 t3 'FOO':::STRING 437430594 t3 unique_rowid() diff --git a/pkg/sql/logictest/testdata/logic_test/privileges_table b/pkg/sql/logictest/testdata/logic_test/privileges_table index 720c8b990655..6583458d3595 100644 --- a/pkg/sql/logictest/testdata/logic_test/privileges_table +++ b/pkg/sql/logictest/testdata/logic_test/privileges_table @@ -116,8 +116,8 @@ user testuser query TTBTTTB SHOW COLUMNS FROM t ---- -k INT false NULL · {primary} false -v INT true NULL · {} false +k INT8 false NULL · {primary} false +v INT8 true NULL · {} false statement error user testuser does not have GRANT privilege on relation t GRANT ALL ON t TO bar diff --git a/pkg/sql/logictest/testdata/logic_test/schema_change_in_txn b/pkg/sql/logictest/testdata/logic_test/schema_change_in_txn index a70388e99c78..766b517c2ac1 100644 --- a/pkg/sql/logictest/testdata/logic_test/schema_change_in_txn +++ b/pkg/sql/logictest/testdata/logic_test/schema_change_in_txn @@ -263,13 +263,13 @@ query TT SHOW CREATE TABLE b ---- b CREATE TABLE b ( - parent_id INT NULL, - d INT NULL DEFAULT 23:::INT, - CONSTRAINT fk_parent_id_ref_parent FOREIGN KEY (parent_id) REFERENCES parent (id), - INDEX b_auto_index_fk_parent_id_ref_parent (parent_id ASC), - INDEX foo (parent_id ASC), - UNIQUE INDEX bar (parent_id ASC), - FAMILY "primary" (parent_id, rowid, d) + parent_id INT8 NULL, + d INT8 NULL DEFAULT 23:::INT8, + CONSTRAINT fk_parent_id_ref_parent FOREIGN KEY (parent_id) REFERENCES parent (id), + INDEX b_auto_index_fk_parent_id_ref_parent (parent_id ASC), + INDEX foo (parent_id ASC), + UNIQUE INDEX bar (parent_id ASC), + FAMILY "primary" (parent_id, rowid, d) ) # table b is not visible to the transaction #17949 @@ -721,7 +721,7 @@ SELECT status, FROM [SHOW JOBS] ORDER BY job_id DESC LIMIT 2 ---- running waiting for GC TTL ROLL BACK JOB -failed NULL ALTER TABLE test.public.customers ADD COLUMN i INT DEFAULT 5;ALTER TABLE test.public.customers ADD COLUMN j INT DEFAULT 4;ALTER TABLE test.public.customers ADD COLUMN l INT DEFAULT 3;ALTER TABLE test.public.customers ADD COLUMN m CHAR;ALTER TABLE test.public.customers ADD COLUMN n CHAR DEFAULT 'a';CREATE INDEX j_idx ON test.public.customers (j);CREATE INDEX l_idx ON test.public.customers (l);CREATE INDEX m_idx ON test.public.customers (m);CREATE UNIQUE INDEX i_idx ON test.public.customers (i);CREATE UNIQUE INDEX n_idx ON test.public.customers (n) +failed NULL ALTER TABLE test.public.customers ADD COLUMN i INT8 DEFAULT 5;ALTER TABLE test.public.customers ADD COLUMN j INT8 DEFAULT 4;ALTER TABLE test.public.customers ADD COLUMN l INT8 DEFAULT 3;ALTER TABLE test.public.customers ADD COLUMN m CHAR;ALTER TABLE test.public.customers ADD COLUMN n CHAR DEFAULT 'a';CREATE INDEX j_idx ON test.public.customers (j);CREATE INDEX l_idx ON test.public.customers (l);CREATE INDEX m_idx ON test.public.customers (m);CREATE UNIQUE INDEX i_idx ON test.public.customers (i);CREATE UNIQUE INDEX n_idx ON test.public.customers (n) subtest add_multiple_computed_elements @@ -750,7 +750,7 @@ z 5 4 15 19 query TT SELECT status, description FROM [SHOW JOBS] ORDER BY job_id DESC LIMIT 1 ---- -succeeded ALTER TABLE test.public.customers ADD COLUMN i INT DEFAULT 5;ALTER TABLE test.public.customers ADD COLUMN j INT AS (i - 1) STORED;ALTER TABLE test.public.customers ADD COLUMN d INT DEFAULT 15, ADD COLUMN e INT AS (d + j) STORED +succeeded ALTER TABLE test.public.customers ADD COLUMN i INT8 DEFAULT 5;ALTER TABLE test.public.customers ADD COLUMN j INT8 AS (i - 1) STORED;ALTER TABLE test.public.customers ADD COLUMN d INT8 DEFAULT 15, ADD COLUMN e INT8 AS (d + j) STORED # VALIDATE CONSTRAINT will not hang when executed in the same txn as # a schema change in the same txn #32118 @@ -761,7 +761,7 @@ CREATE TABLE products (sku STRING PRIMARY KEY, upc STRING UNIQUE, vendor STRING) statement ok CREATE TABLE orders2 ( - id INT PRIMARY KEY, + id INT8 PRIMARY KEY, product STRING DEFAULT 'sprockets', INDEX (product) ) diff --git a/pkg/sql/logictest/testdata/logic_test/serial b/pkg/sql/logictest/testdata/logic_test/serial index b7e0d2605e89..581e311c96c6 100644 --- a/pkg/sql/logictest/testdata/logic_test/serial +++ b/pkg/sql/logictest/testdata/logic_test/serial @@ -14,9 +14,9 @@ query TT SHOW CREATE TABLE serial ---- serial CREATE TABLE serial ( - a INT NOT NULL DEFAULT unique_rowid(), - b INT NULL DEFAULT 7:::INT, - c INT NOT NULL DEFAULT unique_rowid(), + a INT8 NOT NULL DEFAULT unique_rowid(), + b INT8 NULL DEFAULT 7:::INT8, + c INT8 NOT NULL DEFAULT unique_rowid(), CONSTRAINT "primary" PRIMARY KEY (a ASC), UNIQUE INDEX serial_c_key (c ASC), FAMILY "primary" (a, b, c) @@ -49,9 +49,9 @@ query TT SHOW CREATE TABLE smallbig ---- smallbig CREATE TABLE smallbig ( - a INT NOT NULL DEFAULT unique_rowid(), - b INT NOT NULL DEFAULT unique_rowid(), - c INT NULL, + a INT8 NOT NULL DEFAULT unique_rowid(), + b INT8 NOT NULL DEFAULT unique_rowid(), + c INT8 NULL, FAMILY "primary" (a, b, c, rowid) ) @@ -67,10 +67,10 @@ query TT SHOW CREATE TABLE serials ---- serials CREATE TABLE serials ( - a INT NOT NULL DEFAULT unique_rowid(), - b INT NOT NULL DEFAULT unique_rowid(), - c INT NOT NULL DEFAULT unique_rowid(), - d INT NULL, + a INT8 NOT NULL DEFAULT unique_rowid(), + b INT8 NOT NULL DEFAULT unique_rowid(), + c INT8 NOT NULL DEFAULT unique_rowid(), + d INT8 NULL, FAMILY "primary" (a, b, c, d, rowid) ) @@ -107,9 +107,9 @@ query TT SHOW CREATE TABLE serial ---- serial CREATE TABLE serial ( - a INT NOT NULL DEFAULT nextval('serial_a_seq':::STRING), - b INT NULL DEFAULT 7:::INT, - c INT NOT NULL DEFAULT nextval('serial_c_seq2':::STRING), + a INT8 NOT NULL DEFAULT nextval('serial_a_seq':::STRING), + b INT8 NULL DEFAULT 7:::INT8, + c INT8 NOT NULL DEFAULT nextval('serial_c_seq2':::STRING), CONSTRAINT "primary" PRIMARY KEY (a ASC), UNIQUE INDEX serial_c_key (c ASC), FAMILY "primary" (a, b, c) @@ -147,9 +147,9 @@ query TT SHOW CREATE TABLE smallbig ---- smallbig CREATE TABLE smallbig ( - a INT NOT NULL DEFAULT nextval('smallbig_a_seq':::STRING), - b INT NOT NULL DEFAULT nextval('smallbig_b_seq':::STRING), - c INT NULL, + a INT8 NOT NULL DEFAULT nextval('smallbig_a_seq':::STRING), + b INT8 NOT NULL DEFAULT nextval('smallbig_b_seq':::STRING), + c INT8 NULL, FAMILY "primary" (a, b, c, rowid) ) @@ -165,10 +165,10 @@ query TT SHOW CREATE TABLE serials ---- serials CREATE TABLE serials ( - a INT NOT NULL DEFAULT nextval('serials_a_seq':::STRING), - b INT NOT NULL DEFAULT nextval('serials_b_seq':::STRING), - c INT NOT NULL DEFAULT nextval('serials_c_seq':::STRING), - d INT NULL, + a INT8 NOT NULL DEFAULT nextval('serials_a_seq':::STRING), + b INT8 NOT NULL DEFAULT nextval('serials_b_seq':::STRING), + c INT8 NOT NULL DEFAULT nextval('serials_c_seq':::STRING), + d INT8 NULL, FAMILY "primary" (a, b, c, d, rowid) ) @@ -201,9 +201,9 @@ query TT SHOW CREATE TABLE serial ---- serial CREATE TABLE serial ( - a INT NOT NULL DEFAULT nextval('serial_a_seq1':::STRING), - b INT NULL DEFAULT 7:::INT, - c INT NOT NULL DEFAULT nextval('serial_c_seq3':::STRING), + a INT8 NOT NULL DEFAULT nextval('serial_a_seq1':::STRING), + b INT8 NULL DEFAULT 7:::INT8, + c INT8 NOT NULL DEFAULT nextval('serial_c_seq3':::STRING), CONSTRAINT "primary" PRIMARY KEY (a ASC), UNIQUE INDEX serial_c_key (c ASC), FAMILY "primary" (a, b, c) @@ -243,7 +243,7 @@ SHOW CREATE TABLE smallbig smallbig CREATE TABLE smallbig ( a INT2 NOT NULL DEFAULT nextval('smallbig_a_seq1':::STRING), b INT8 NOT NULL DEFAULT nextval('smallbig_b_seq1':::STRING), - c INT NULL, + c INT8 NULL, FAMILY "primary" (a, b, c, rowid) ) @@ -262,7 +262,7 @@ serials CREATE TABLE serials ( a INT2 NOT NULL DEFAULT nextval('serials_a_seq1':::STRING), b INT4 NOT NULL DEFAULT nextval('serials_b_seq1':::STRING), c INT8 NOT NULL DEFAULT nextval('serials_c_seq1':::STRING), - d INT NULL, + d INT8 NULL, FAMILY "primary" (a, b, c, d, rowid) ) diff --git a/pkg/sql/logictest/testdata/logic_test/show_source b/pkg/sql/logictest/testdata/logic_test/show_source index d7bcd08751fd..c6183e321e7f 100644 --- a/pkg/sql/logictest/testdata/logic_test/show_source +++ b/pkg/sql/logictest/testdata/logic_test/show_source @@ -248,7 +248,7 @@ SELECT * FROM [SHOW CREATE TABLE system.descriptor] ---- table_name create_statement system.public.descriptor CREATE TABLE descriptor ( - id INT NOT NULL, + id INT8 NOT NULL, descriptor BYTES NULL, CONSTRAINT "primary" PRIMARY KEY (id ASC), FAMILY "primary" (id), diff --git a/pkg/sql/logictest/testdata/logic_test/show_trace b/pkg/sql/logictest/testdata/logic_test/show_trace index e01cd1439828..e373ae4f4378 100644 --- a/pkg/sql/logictest/testdata/logic_test/show_trace +++ b/pkg/sql/logictest/testdata/logic_test/show_trace @@ -81,7 +81,7 @@ dist sender send r1: sending batch 1 Get to (n1,s1):1 dist sender send querying next range at /System/"desc-idgen" dist sender send r1: sending batch 1 Inc to (n1,s1):1 sql txn CPut /Table/2/1/53/"kv"/3/1 -> 54 -sql txn CPut /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:2 privileges: users: > next_mutation_id:1 format_version:3 state:PUBLIC view_query:"" drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > +sql txn CPut /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:2 privileges: users: > next_mutation_id:1 format_version:3 state:PUBLIC view_query:"" drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > dist sender send querying next range at /Table/SystemConfigSpan/Start dist sender send r1: sending batch 2 CPut, 1 BeginTxn to (n1,s1):1 dist sender send querying next range at /Table/3/1/53/2/1 @@ -118,7 +118,7 @@ dist sender send querying next range at /Table/3/1/54/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 dist sender send querying next range at /Table/3/1/53/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 -sql txn Put /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:3 privileges: users: > mutations: interleave:<> partitioning: type:FORWARD > state:DELETE_ONLY direction:ADD mutation_id:1 rollback:false > next_mutation_id:2 format_version:3 state:PUBLIC view_query:"" mutationJobs:<...> drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > +sql txn Put /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:3 privileges: users: > mutations: interleave:<> partitioning: type:FORWARD > state:DELETE_ONLY direction:ADD mutation_id:1 rollback:false > next_mutation_id:2 format_version:3 state:PUBLIC view_query:"" mutationJobs:<...> drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > dist sender send querying next range at /Table/3/1/54/2/1 dist sender send r1: sending batch 1 Put to (n1,s1):1 sql txn rows affected: 0 @@ -245,7 +245,7 @@ dist sender send r1: sending batch 1 Get to (n1,s1):1 dist sender send querying next range at /System/"desc-idgen" dist sender send r1: sending batch 1 Inc to (n1,s1):1 sql txn CPut /Table/2/1/53/"kv2"/3/1 -> 55 -sql txn CPut /Table/3/1/55/2/1 -> table: columns: nullable:true hidden:false > columns: nullable:true hidden:false > columns: nullable:false default_expr:"unique_rowid()" hidden:true > next_column_id:4 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:2 privileges: users: > next_mutation_id:1 format_version:3 state:PUBLIC view_query:"" drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > +sql txn CPut /Table/3/1/55/2/1 -> table: columns: nullable:true hidden:false > columns: nullable:true hidden:false > columns: nullable:false default_expr:"unique_rowid()" hidden:true > next_column_id:4 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:2 privileges: users: > next_mutation_id:1 format_version:3 state:PUBLIC view_query:"" drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > dist sender send querying next range at /Table/SystemConfigSpan/Start dist sender send r1: sending batch 2 CPut, 1 BeginTxn to (n1,s1):1 dist sender send querying next range at /Table/3/1/53/2/1 @@ -337,7 +337,7 @@ dist sender send querying next range at /Table/3/1/53/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 dist sender send querying next range at /Table/5/1/0/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 -sql txn Put /Table/3/1/55/2/1 -> table: columns: nullable:true hidden:false > columns: nullable:true hidden:false > columns: nullable:false default_expr:"unique_rowid()" hidden:true > next_column_id:4 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:2 privileges: users: > next_mutation_id:1 format_version:3 state:DROP draining_names: view_query:"" drop_time:... replacement_of: > audit_mode:DISABLED drop_job_id:... > +sql txn Put /Table/3/1/55/2/1 -> table: columns: nullable:true hidden:false > columns: nullable:true hidden:false > columns: nullable:false default_expr:"unique_rowid()" hidden:true > next_column_id:4 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:2 privileges: users: > next_mutation_id:1 format_version:3 state:DROP draining_names: view_query:"" drop_time:... replacement_of: > audit_mode:DISABLED drop_job_id:... > dist sender send querying next range at /Table/3/1/55/2/1 dist sender send r1: sending batch 1 Put to (n1,s1):1 sql txn rows affected: 0 @@ -408,7 +408,7 @@ dist sender send querying next range at /Table/5/1/0/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 dist sender send querying next range at /Table/3/1/53/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 -sql txn Put /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:3 privileges: users: > mutations: interleave:<> partitioning: type:FORWARD > state:DELETE_AND_WRITE_ONLY direction:DROP mutation_id:2 rollback:false > next_mutation_id:3 format_version:3 state:PUBLIC view_query:"" mutationJobs:<...> drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > +sql txn Put /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:3 privileges: users: > mutations: interleave:<> partitioning: type:FORWARD > state:DELETE_AND_WRITE_ONLY direction:DROP mutation_id:2 rollback:false > next_mutation_id:3 format_version:3 state:PUBLIC view_query:"" mutationJobs:<...> drop_time:0 replacement_of: > audit_mode:DISABLED drop_job_id:0 > dist sender send querying next range at /Table/3/1/54/2/1 dist sender send r1: sending batch 1 Put to (n1,s1):1 sql txn rows affected: 0 @@ -446,7 +446,7 @@ dist sender send querying next range at /Table/3/1/53/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 dist sender send querying next range at /Table/5/1/0/2/1 dist sender send r1: sending batch 1 Get to (n1,s1):1 -sql txn Put /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:3 privileges: users: > next_mutation_id:3 format_version:3 state:DROP draining_names: view_query:"" drop_time:... replacement_of: > audit_mode:DISABLED drop_job_id:... gc_mutations: > +sql txn Put /Table/3/1/54/2/1 -> table: columns: nullable:false hidden:false > columns: nullable:true hidden:false > next_column_id:3 families: next_family_id:1 primary_index: interleave:<> partitioning: type:FORWARD > next_index_id:3 privileges: users: > next_mutation_id:3 format_version:3 state:DROP draining_names: view_query:"" drop_time:... replacement_of: > audit_mode:DISABLED drop_job_id:... gc_mutations: > dist sender send querying next range at /Table/3/1/54/2/1 dist sender send r1: sending batch 1 Put to (n1,s1):1 sql txn rows affected: 0 diff --git a/pkg/sql/logictest/testdata/logic_test/subquery b/pkg/sql/logictest/testdata/logic_test/subquery index 98d01b3d8f94..264bcfddd1f8 100644 --- a/pkg/sql/logictest/testdata/logic_test/subquery +++ b/pkg/sql/logictest/testdata/logic_test/subquery @@ -201,7 +201,7 @@ SELECT * FROM abc WHERE a = 7 ---- 7 8 9 -statement error value type tuple{int, int, int} doesn't match type INT of column "a" +statement error value type tuple{int, int, int} doesn't match type INT8 of column "a" INSERT INTO abc VALUES ((SELECT (10, 11, 12))) statement error subquery must return only one column, found 3 @@ -234,7 +234,7 @@ SELECT * FROM xyz 7 8 10 10 11 12 -statement error value type tuple{int, int} doesn't match type INT of column "z" +statement error value type tuple{int, int} doesn't match type INT8 of column "z" UPDATE xyz SET z = (SELECT (10, 11)) WHERE x = 7 statement error pgcode 42601 subquery must return 2 columns, found 1 diff --git a/pkg/sql/logictest/testdata/logic_test/system b/pkg/sql/logictest/testdata/logic_test/system index 03d6c5152c59..456f07d8d836 100644 --- a/pkg/sql/logictest/testdata/logic_test/system +++ b/pkg/sql/logictest/testdata/logic_test/system @@ -83,14 +83,14 @@ SELECT length(descriptor) * (id - 1) FROM system.descriptor WHERE id = 1 query TTBTTTB SHOW COLUMNS FROM system.namespace ---- -parentID INT false NULL · {primary} false +parentID INT8 false NULL · {primary} false name STRING false NULL · {primary} false -id INT true NULL · {} false +id INT8 true NULL · {} false query TTBTTTB SHOW COLUMNS FROM system.descriptor ---- -id INT false NULL · {primary} false +id INT8 false NULL · {primary} false descriptor BYTES true NULL · {} false query TTBTTTB @@ -103,15 +103,15 @@ isRole BOOL false false · {} false query TTBTTTB SHOW COLUMNS FROM system.zones ---- -id INT false NULL · {primary} false +id INT8 false NULL · {primary} false config BYTES true NULL · {} false query TTBTTTB SHOW COLUMNS FROM system.lease ---- -descID INT false NULL · {primary} false -version INT false NULL · {primary} false -nodeID INT false NULL · {primary} false +descID INT8 false NULL · {primary} false +version INT8 false NULL · {primary} false +nodeID INT8 false NULL · {primary} false expiration TIMESTAMP false NULL · {primary} false query TTBTTTB @@ -119,8 +119,8 @@ SHOW COLUMNS FROM system.eventlog ---- timestamp TIMESTAMP false NULL · {primary} false eventType STRING false NULL · {} false -targetID INT false NULL · {} false -reportingID INT false NULL · {} false +targetID INT8 false NULL · {} false +reportingID INT8 false NULL · {} false info STRING true NULL · {} false uniqueID BYTES false uuid_v4() · {primary} false @@ -128,12 +128,12 @@ query TTBTTTB SHOW COLUMNS FROM system.rangelog ---- timestamp TIMESTAMP false NULL · {primary} false -rangeID INT false NULL · {} false -storeID INT false NULL · {} false +rangeID INT8 false NULL · {} false +storeID INT8 false NULL · {} false eventType STRING false NULL · {} false -otherRangeID INT true NULL · {} false +otherRangeID INT8 true NULL · {} false info STRING true NULL · {} false -uniqueID INT false unique_rowid() · {primary} false +uniqueID INT8 false unique_rowid() · {primary} false query TTBTTTB SHOW COLUMNS FROM system.ui @@ -145,7 +145,7 @@ lastUpdated TIMESTAMP false NULL · {} false query TTBTTTB SHOW COLUMNS FROM system.jobs ---- -id INT false unique_rowid() · {primary,jobs_status_created_idx} false +id INT8 false unique_rowid() · {primary,jobs_status_created_idx} false status STRING false NULL · {jobs_status_created_idx} false created TIMESTAMP false now():::TIMESTAMP · {jobs_status_created_idx} false payload BYTES false NULL · {} false diff --git a/pkg/sql/logictest/testdata/logic_test/table b/pkg/sql/logictest/testdata/logic_test/table index 8e26016add72..cc02f3eae60e 100644 --- a/pkg/sql/logictest/testdata/logic_test/table +++ b/pkg/sql/logictest/testdata/logic_test/table @@ -88,7 +88,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM d ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -id INT false NULL · {primary} false +id INT8 false NULL · {primary} false statement ok CREATE TABLE e ( @@ -99,7 +99,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM e ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -id INT false NULL · {primary} false +id INT8 false NULL · {primary} false statement ok CREATE TABLE f ( @@ -113,9 +113,9 @@ query TTBTTTB colnames SHOW COLUMNS FROM f ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -a INT false NULL · {primary} false -b INT false NULL · {primary} false -c INT false NULL · {primary} false +a INT8 false NULL · {primary} false +b INT8 false NULL · {primary} false +c INT8 false NULL · {primary} false query TT SHOW TABLES FROM test WITH COMMENT @@ -163,7 +163,7 @@ query TTBTTTB colnames SHOW COLUMNS FROM test.users ---- column_name data_type is_nullable column_default generation_expression indices is_hidden -id INT false NULL · {primary,foo,bar} false +id INT8 false NULL · {primary,foo,bar} false name VARCHAR false NULL · {foo,bar} false title VARCHAR true NULL · {} false nickname STRING true NULL · {} false @@ -193,7 +193,7 @@ query TT SHOW CREATE TABLE test.users ---- test.public.users CREATE TABLE users ( - id INT NOT NULL, + id INT8 NOT NULL, name VARCHAR NOT NULL, title VARCHAR NULL, nickname STRING NULL, @@ -249,7 +249,7 @@ query TT SHOW CREATE TABLE test.named_constraints ---- test.public.named_constraints CREATE TABLE named_constraints ( - id INT NOT NULL, + id INT8 NOT NULL, name VARCHAR NOT NULL, title VARCHAR NULL DEFAULT 'VP of Something':::STRING, nickname STRING NULL, @@ -365,7 +365,7 @@ SHOW COLUMNS FROM alltypes ---- column_name data_type is_nullable column_default generation_expression indices is_hidden cbigint INT8 true NULL · {} false -cbigserial INT false unique_rowid() · {} false +cbigserial INT8 false unique_rowid() · {} false cblob BYTES true NULL · {} false cbool BOOL true NULL · {} false cbit BIT true NULL · {} false @@ -387,12 +387,12 @@ cdoubleprecision FLOAT8 true NULL · cfloat FLOAT8 true NULL · {} false cfloat4 FLOAT4 true NULL · {} false cfloat8 FLOAT8 true NULL · {} false -cint INT true NULL · {} false +cint INT8 true NULL · {} false cint2 INT2 true NULL · {} false cint4 INT4 true NULL · {} false cint64 INT8 true NULL · {} false cint8 INT8 true NULL · {} false -cinteger INT true NULL · {} false +cinteger INT8 true NULL · {} false cinterval INTERVAL true NULL · {} false cjson JSONB true NULL · {} false cnumeric DECIMAL true NULL · {} false @@ -400,9 +400,9 @@ cnumeric1 DECIMAL(1) true NULL · cnumeric21 DECIMAL(2,1) true NULL · {} false cqchar "char" true NULL · {} false creal FLOAT4 true NULL · {} false -cserial INT false unique_rowid() · {} false +cserial INT8 false unique_rowid() · {} false csmallint INT2 true NULL · {} false -csmallserial INT false unique_rowid() · {} false +csmallserial INT8 false unique_rowid() · {} false cstring STRING true NULL · {} false cstring12 STRING(12) true NULL · {} false ctext STRING true NULL · {} false diff --git a/pkg/sql/logictest/testdata/logic_test/target_names b/pkg/sql/logictest/testdata/logic_test/target_names index 8e0da24952d1..af9a1be41794 100644 --- a/pkg/sql/logictest/testdata/logic_test/target_names +++ b/pkg/sql/logictest/testdata/logic_test/target_names @@ -35,7 +35,7 @@ SELECT 123, '123', 123.0, TRUE, FALSE, NULL query IITI colnames SELECT t::INT, '123'::INT, t:::STRING, '123':::INT FROM t ---- -t int t int +t int8 t int8 # Field access gets the field name. query T colnames diff --git a/pkg/sql/logictest/testdata/logic_test/typing b/pkg/sql/logictest/testdata/logic_test/typing index 370e073d9589..d62828397613 100644 --- a/pkg/sql/logictest/testdata/logic_test/typing +++ b/pkg/sql/logictest/testdata/logic_test/typing @@ -16,7 +16,7 @@ SELECT * FROM f statement ok CREATE TABLE i (x INT) -statement error value type decimal doesn't match type INT of column "x" +statement error value type decimal doesn't match type INT8 of column "x" INSERT INTO i(x) VALUES (4.5) statement ok diff --git a/pkg/sql/logictest/testdata/logic_test/update b/pkg/sql/logictest/testdata/logic_test/update index ab249aeea55a..98a528264111 100644 --- a/pkg/sql/logictest/testdata/logic_test/update +++ b/pkg/sql/logictest/testdata/logic_test/update @@ -6,16 +6,16 @@ CREATE TABLE kv ( v INT ) -statement error value type tuple{int, int} doesn't match type INT of column "v" +statement error value type tuple{int, int} doesn't match type INT8 of column "v" UPDATE kv SET v = (SELECT (10, 11)) -statement error value type decimal doesn't match type INT of column "v" +statement error value type decimal doesn't match type INT8 of column "v" UPDATE kv SET v = 3.2 -statement error value type decimal doesn't match type INT of column "v" +statement error value type decimal doesn't match type INT8 of column "v" UPDATE kv SET (k, v) = (3, 3.2) -statement error value type decimal doesn't match type INT of column "v" +statement error value type decimal doesn't match type INT8 of column "v" UPDATE kv SET (k, v) = (SELECT 3, 3.2) statement count 4 @@ -449,7 +449,7 @@ query T SELECT create_statement FROM [SHOW CREATE t29494] ---- CREATE TABLE t29494 ( - x INT NOT NULL, + x INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (x ASC), FAMILY "primary" (x) ) diff --git a/pkg/sql/logictest/testdata/logic_test/upsert b/pkg/sql/logictest/testdata/logic_test/upsert index ec3295eac475..b941911a5471 100644 --- a/pkg/sql/logictest/testdata/logic_test/upsert +++ b/pkg/sql/logictest/testdata/logic_test/upsert @@ -632,7 +632,7 @@ query T SELECT create_statement FROM [SHOW CREATE t29494] ---- CREATE TABLE t29494 ( - x INT NULL, + x INT8 NULL, FAMILY "primary" (x, rowid) ) @@ -727,4 +727,3 @@ INSERT INTO t32762(x,y) VALUES (1,2) ON CONFLICT (x,y) DO UPDATE SET x = t32762. statement ok INSERT INTO t32762(x,y) VALUES (1,2) ON CONFLICT (x,y) DO UPDATE SET x = t32762.x - diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_agg b/pkg/sql/logictest/testdata/planner_test/distsql_agg index 725df527e4bb..73295e34814d 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_agg +++ b/pkg/sql/logictest/testdata/planner_test/distsql_agg @@ -40,7 +40,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslE1vozAQhu_7K1bvaVeyFA query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum((a-1)*1000 + (b-1)*100 + (c::INT-1)*10 + (d-1)) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlMGOmzAQhu99impObOtqbSDZrE-s2h6QummVpqeKg4tHCCnByDZSq4h3r4BIgSgxVPTCzXj455_5xpoTFEriVhzRAP8JDAj4QCAAAiEQWEFCoNQqRWOUbn7pBLH8DZwSyIuyss11QiBVGoGfwOb2gMBhL34dcIdCon6kQECiFfmhtSl1fhT6TySFFUBgh4VEzd96nudF7APjnMfb_cM7Rik9n997XuQPIudjGwnacz98iUZhe__p88f49eXLAyQ1AVXZS93GigyBs5pM7-0lyzRmwir9uBq29v3Hqxex-zb-XZtL9qpQWqJGOUid1O5CGP23SoJBJWz6MNnShjnSW4_hes4w_ekI_aUhHOmth_BpDsJgOsJgaQhHeush3MxBGE5HGC4N4UhvPYTP_2sr37DZoSlVYfBqO9_OTJutjTLDbsUbVekUv2mVtjbd59dW115INLaLsu4jLrpQU2BfzJxifyBm12Lf7TxiHTjVoVsczql75RSv3c7rOc5PTvHG7byZ4_zsnhUdeSbuR3btndRv_gYAAP__6cMa6A== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlMGOmzAQhu99impObOtqbSBZ1idWbQ9I3W2Vbk8VBxePEFKCkW2kVhHvXgGKAlFiqOiFG8P49z_zjTVHKJXEF3FAA_wnMCDgA4EACIRAYAMpgUqrDI1Ruj3SCxL5GzglUJRVbdvfKYFMaQR-BFvYPQKHV_FrjzsUEvU9BQISrSj2nU2li4PQf2IprAACOywlav7W8zwvZh8Y5zx5eY3u3jFK6Sl473mxP86dvrtc0AejE4MDcdhlPn3-mDw_fbmDtCGgansu31iRI3DWkPktPuW5xlxYpe834w6__3j2Ynbbxr9pc769LpWWqFGOrk4bdyGM_lslwagSNn-mbKUznWhxgHK7ZKb-fJL-SklOtDgg-bCEZDCfZLBSkhMtDkhGS0iG80mGKyU50eKA5OP_2thXbHZoKlUavNjc12-m7UZHmWO__o2qdYbftMo6mz782um6HxKN7bOsD5KyT7UFDsXMKfZHYnYp9t3OE9aBUx26xeGSujdO8dbtvF3i_OAUR27naInzo3tWdOKZuB_ZpXfavPkbAAD__5y5IpA= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), count(a), max(a) FROM data] @@ -55,7 +55,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNuLozAUxt_3r1jO0y4bqI query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum((a-1)*1000) + sum((b-1)*100) + sum((c::INT-1)*10) + sum(d-1) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVc1qGzEQvvcpwpy8tUpWP3YcnRTaHgxNWtz0VPagWsNicFZGkqEl-N2LVzTeNbF2qXFgb7Mz_vz9aGCeobIGH_QTepA_gQIBBgQ4EBBAYAIFgY2zS_Teuv1PImBufoPMCayqzTbs2wWBpXUI8hnCKqwRJDzqX2tcoDbornMgYDDo1bqm2bjVk3Z_lNFBA4EFVgadvBop-oFKKecPj9l7mud5rMnVSLHW4NDnddUc_pspUXc_ff44v7_7AsWOgN2Gg1wfdIkg6Y70t3RXlg5LHay7nrQdff9xP1I0AxIr9lLxl0pkJ0WwkyIO3NvKOoMOTYu42KVl0vx_dDaeZKToWLFsrHg2VuKkA95yQPtvBh3IZnRYakQ-vdxmsP65soHk2mGpkevN5XLl_XPlA8m1w1Ij19nlchX9cxUDybXDUiPX27e5EK-IWKDf2Mrj0aV4_Z_z_QVBU2I8N95u3RK_ObusaeLn1xpXNwz6EKc0fsyrONoLbIJpEsxaYHoMZmnmDmqeRIs0WJyje5IET9PM03OYb5LgWZp5dg7zbfqt8o41SS_ZMXexe_c3AAD__2A6QFI= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVU9r2zAUv-9TlHeKF41af5KmOqlsOwTWbmTdafigRQ8TSK0gKbBR8t1HrJHaoZHNQgq-Pen5598fPXjPUFmDD_oJPcifQIEAAwIcCAggMIGCwMbZJXpv3f6TCJib3yBzAqtqsw3764LA0joE-QxhFdYIEh71rzUuUBt01zkQMBj0al3TbNzqSbs_yuiggcACK4NOXo0U_UCllPOHx1n2nuZ5_u9ArkaKtVuNDo9lq39oK1Hff_r8cX5_9wWKHQG7DS-qfdAlgqQ70t_ZXVk6LHWw7nrSNvb9x_1I0QxIrNih4odKZCdFsJMiXri3lXUGHZoWcbFLy6T5_-hsvMxI0bFi2VjxbKzESQe85YD2HxA6rAHpcNZIfnq5AWH942XDirfDWSPem8vFy_vHy4cVb4ezRryzy8Ur-scrhhVvh7NGvLdvsz1eEbFAv7GVx6Mt8vqf8_12QVNiXEXebt0Svzm7rGni8WuNqy8M-hC7NB7mVWztBTbBNAlmLTA9BrM0cwc1T6JFGizO0T1Jgqdp5uk5zDdJ8CzNPDuH-Tb9VnnHmKSH7Ji72L37GwAA__8QDEf6 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), min(b), max(c), count(d) FROM data] @@ -67,52 +67,52 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lMuLqzAUxvf3zzgrC4EatS query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT avg(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lEGLozAUx-_7KZZ3ammgJtpOJ6cse-phOkunPS2yZM1DhI6RJMIug999UA-jpUah9Va1f3-_vy-8D8i1woN8Rwv8N1AgwIBACAQiILCBmEBhdILWalP_pQ3s1T_gAYEsL0pX344JJNog8A9wmbsgcDjJvxc8olRo1gEQUOhkdmkwhcnepfkvlHQSCBwxV2j498VC0JVgy5UIOd8fTsuViCCuCOjSfXGskykCpxWZ7vIjTQ2m0mmz3vRV3s4vC0GXQODn6_lwan4PIdkg8otU5tooNKh6mLjyS9FgyOrt_PJnX3uxZedLCboWbNAz7HnS6WOic49pxKXzRbaPGhObXp_NXX_EpVP_6VH1w-n1w7nrj7h06u8eVT-aXj-au_6IS6f-8xw76gbyiLbQucWrXXX7zUG9w1Cl2C48q0uT4C-jkwbTXr42ueaGQuvap7S92Ofto1qwG6beMOuF6XWY-ckj6NCbjvzh6B7vjTe89ZO395CfvOGdn7y7h_zsn1Uwckz8h-yaHVffPgMAAP__6hnVzw== +https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lEGLozAUx-_7KZZ3ammgJtpOJ6cse-phOkunPS2yZM1DhI6RJMIug999UA-jpUah9Va1f3-_vy-8D8i1woN8Rwv8N1AgwIBACAQiILCBmEBhdILWalP_pQ3s1T_gAYEsL0pX344JJNog8A9wmbsgcDjJvxc8olRo1gEQUOhkdmkwhcnepfkvlHQSCBwxV2j498VC0JVgy5UIOd8fTrvlSkQQVwR06b5A1skUgdOKTJf5kaYGU-m0WW_6Lm_nl4WgSyDw8_V8ODW_h5BsEPlFKnNtFBpUPUxc-aVoMGT1dn75s6-92LLzqQRdCzboGfY86fQ50dnnNCLT-STbR82JTe_PZu8_ItPp__So_uH0_uHs_UdkOv13j-ofTe8fzd5_RKbT_3mOPXUDeURb6Nzi1b66_eag3mOoUmyXntWlSfCX0UmDaS9fm1xzQ6F17VPaXuzz9lEt2A1Tb5j1wvQ6zPzkEXToTUf-cHSP98Yb3vrJ23vIT97wzk_e3UN-9s8qGDkm_kN2zY6rb58BAAD__w0a1uc= # VARIANCE/STDDEV have three local (sqrdiff, sum, and count) and one final stage aggregations. # We calculate and render the variance/stddev at the end. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), round(stddev(b), 1) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE5amgYMbdIm2V6KKWo0mEDWCpIMLUv-e7F8WDusZUOc3iyNn76nN2JeodAKV_IFLfCfQIEAAwIxEEiAwBQyAiej92itNtUvtSBVf4BHBA7FqXTVdkZgrw0CfwV3cEcEDjv5-4gblArNfQQEFDp5OHrMyRxepPkrlHQSCKxLx-8EJYJBdiagS_d2qnUyR-D0TIaTn_LcYC6dNvfTNnj7_HUi6EcgsP2-WaTL5UQwv6r2_den9fNq57-7rLBOK28OykIbhQZVC5-dw2Zp1OV2ma6evvza7haLzz8mghERE5FUhQ0WCo1P787oslBVlXLO09Wu-wpx6wp0eB_puH3sITeimd26j2x4CGzcEHrIjRAebh1CPDyEeNwQesiNEOa3DiEZHkIybgg95EYIj_9zrL1jZYP2pAuLF-Pt_ZOjauyhyrGekVaXZo_fjN57TL1ce53fUGhdXaX1Ii3qUmWwKaZBMWuJ6aWYhck96DioTsLi5Brf06B4FibPriE_BMXzMHl-Dfkx3Kuo55mEH9klOzt_-BcAAP__ZTPiDA== +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE5amgYMbdIm2V6KKWo0mEDWCpIMLUv-e7F8WDusZUOc3iyNn76nN2JeodAKV_IFLfCfQIEAAwIxEEiAwBQyAiej92itNtUvtSBVf4BHBA7FqXTVdkZgrw0CfwV3cEcEDjv5-4gblArNfQQEFDp5OHrMyRxepPkrlHQSCKxLx-8EJYJBdiagS_d2qnUyR-D0TIaTn_LcYC6dNvfTNnj7_HUi6EcgsP2-WaTL5UQwv6r2_den9fNq57-7rLBOK28OykIbhQZVC5-dw2Zp1OV2ma6evvza7haLzz8mghERE5FUhQ0WCo1P787oslBVlXLO09Vu3n2HuHUHOryRdNxG9pAb2cxu3Ug2PAQ2bgg95EYID7cOIR4eQjxuCD3kRgjzW4eQDA8hGTeEHnIjhMf_OdfesbJBe9KFxYv59v7JUTX3UOVYD0mrS7PHb0bvPaZerr3Obyi0rq7SepEWdaky2BTToJi1xPRSzMLkHnQcVCdhcXKN72lQPAuTZ9eQH4LieZg8v4b8GO5V1PNMwo_skp2dP_wLAAD__4qs4kQ= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), round(variance(b), 1) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE4K2wYMrdN6s70UU9RoMIGsFSQZWpb892L5sE5IZEOc3iyNn76nN2LeoNIKM_mKFvhPoECAAYEYCCRAYAoFgb3RG7RWm-aXVpCqP8AjAttqX7tmuyCw0QaBv4Hbuh0Ch7X8vcMcpUJzHwEBhU5udx6zN9tXaf4KJZ0EAqva8TtBiWBQHAjo2r2fap0sETg9kOHkRVkaLKXT5n56DH5--ToR9CMQeP6ef0qXy4lgftXs-6-n1Uu29t-XrLCLVt4d1JU2Cg2qI3xxCJul0SW3yzRbfPn1Y5Gni-zp80QwImIikqaUY6XQ-PzujK4r1VQp5zzN1pcvER9dgg7vJB23kz3kTjizW3eSDQ-BjRtCD7kTwsOtQ4iHhxCPG0IPuRPC_NYhJMNDSMYNoYfcCeHxfw62M1ZytHtdWTwZcOdPjprBh6rEdkpaXZsNfjN64zHtcuV1fkOhdW2Vtou0akuNwa6YBsXsSExPxSxM7kHHQXUSFifX-J4GxbMweXYN-SEonofJ82vIj-FeRT3PJPzITtnF4cO_AAAA__8b0-KL +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE4K2wYMrdN6s70UU9RoMIGsFSQZWpb892L5sE5IZEOc3iyNn76nN2LeoNIKM_mKFvhPoECAAYEYCCRAYAoFgb3RG7RWm-aXVpCqP8AjAttqX7tmuyCw0QaBv4Hbuh0Ch7X8vcMcpUJzHwEBhU5udx6zN9tXaf4KJZ0EAqva8TtBiWBQHAjo2r2fap0sETg9kOHkRVkaLKXT5n56DH5--ToR9CMQeP6ef0qXy4lgftXs-6-n1Uu29t-XrLCLVt4d1JU2Cg2qI3xxCJul0SW3yzRbfPn1Y5Gni-zp80QwImIikqaUY6XQ-PzujK4r1VQp5zzN1vPLt4iPbkGHt5KO28oecied2a1byYaHwMYNoYfcCeHh1iHEw0OIxw2hh9wJYX7rEJLhISTjhtBD7oTw-D8n2xkrOdq9riyeTLjzJ0fN5ENVYjsmra7NBr8ZvfGYdrnyOr-h0Lq2SttFWrWlxmBXTINidiSmp2IWJveg46A6CYuTa3xPg-JZmDy7hvwQFM_D5Pk15Mdwr6KeZxJ-ZKfs4vDhXwAAAP__Qcviww== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT stddev(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcqywKGLd2SdDfDDC06mEBqBUmGjeJ3H7YHtU0jG4LubCt__o_viPMKuVa4lS9ogf8ECgQYEIiAQAwEFpASuBh9RGu1qX7SBBL1B_icwCm_FK76nBI4aoPAX8Gd3BmBw0H-PuMOpUJzNwcCCp08neuaizm9SPNXKOkkENhhrtDwj5OJoDPBpjMRcZ5sD9OZiCEtCejCvfVYJzMETksynuUxywxm0mlzt-ii7L_v1slmMxF0CgT2z1__P316et4e6udrAOwqwFtvkWuj0KDqlKalH5H2dG2S7eOXX_vDev35x0RQIhgR0XWwqANGx0-Jhp7SAEtLwTLMlNh4GSy0jAGWloz7MDKi8TKi0DIGWFoyVmFkxONlxKFlDLC0ZDyEX2bvAOzQXnRusbfU3v_nebXsUGXYbEarC3PEb0Yf65rm9anO1R8UWtec0uYlyZujCrAdpt4w64RpP8z8zQPVkTcd-8PxLdwLb3jpb17e0nzvDa_8zatbmh_8s5oPXBP_Jet3p-WHfwEAAP__suLiQQ== +https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcqywKGLd2SdDfDDC06mEBqBUmGjeJ3H7YHtU0jG4LubCt__o_viPMKuVa4lS9ogf8ECgQYEIiAQAwEFpASuBh9RGu1qX7SBBL1B_icwCm_FK76nBI4aoPAX8Gd3BmBw0H-PuMOpUJzNwcCCp08neuaizm9SPNXKOkkENhhrtDwj5OJoDPBpjMRcZ5sD6vpTMSQlgR04d6KrJMZAqclGQ_zmGUGM-m0uVt0Wfbfd-tks5kIOgUC--ev_58-PT1vD_XzNQB2FeCtt8i1UWhQdUrT0o9Ie742yfbxy6_9Yb3-_GMiKBGMiOg6WNQBo-PHRIOPaQCm5WAZZkxsvA0W3MYATMvGfRgb0XgbUXAbAzAtG6swNuLxNuLgNgZgWjYewi-0dwB2aC86t9hbbO__87xaeKgybLaj1YU54jejj3VN8_pU5-oPCq1rTmnzkuTNUQXYDlNvmHXCtB9m_uaB6sibjv3h-BbuhTe89Dcvb2m-94ZX_ubVLc0P_lnNB66J_5L1u9Pyw78AAAD__xHJ41k= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT variance(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcK3QKGzd3cdDfDDC06mEBqBUmBjZJ3H7YHtU0iG4LubCt__o_viPMGpVaYyle0wH8CBQIMCERAIAYCC8gJHI3eobXaVD9pAon6A3xOYF8eT676nBPYaYPA38Dt3QGBw1b-PmCGUqG5mwMBhU7uD3XN0exfpfkrlHQSCGRYKjT842Qi6Eyw6UxEnCfpdjoTMeRnAvrk3nuskwUCp2cynmVdFAYL6bS5W3RRnr9nn5LNZiLoFAg8v3z9__T49JJu6-drAOwqwHvvqdRGoUHVKc3PfkTa07VJ0vWXXz_WWbJOHz9PBCWCERFdR4s6aHT8nGjoOQ2wtCQsw8yJjZfBQssYYGnJuA8jIxovIwotY4ClJWMVRkY8XkYcWsYAS0vGQ_h1dgEgQ3vUpcXeWrv8z_Nq3aEqsNmNVp_MDr8ZvatrmtenOld_UGhdc0qbl6RsjirAdph6w6wTpv0w8zcPVEfedOwPx7dwL7zhpb95eUvzvTe88jevbml-8M9qPnBN_Jes352fP_wLAAD__2mq4sA= +https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcK3QKGzd3cdDfDDC06mEBqBUmBjZJ3H7YHtU0iG4LubCt__o_viPMGpVaYyle0wH8CBQIMCERAIAYCC8gJHI3eobXaVD9pAon6A3xOYF8eT676nBPYaYPA38Dt3QGBw1b-PmCGUqG5mwMBhU7uD3XN0exfpfkrlHQSCGRYKjT842Qi6Eyw6UxEnCfpdjWdiRjyMwF9cu9F1skCgdMzGQ-zLgqDhXTa3C26LM_fs0_JZjMRdAoEnl--_n96fHpJt_XzNQB2FeC991Rqo9Cg6pTmZz8i7fnaJOn6y68f6yxZp4-fJ4ISwYiIrqNFHTQ6flA0-KAGYFoWlmEGxcbbYMFtDMC0bNyHsRGNtxEFtzEA07KxCmMjHm8jDm5jAKZl4yH8SrsAkKE96tJib7Vd_ud5tfJQFdjsR6tPZoffjN7VNc3rU52rPyi0rjmlzUtSNkcVYDtMvWHWCdN-mPmbB6ojbzr2h-NbuBfe8NLfvLyl-d4bXvmbV7c0P_hnNR-4Jv5L1u_Ozx_-BQAA___K7uPY # Test various combinations of aggregation functions and verify that the # aggregation processors are set up correctly. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), avg(b), sum(c), avg(d), stddev(a), variance(b), sum(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVU2L4kAQve-vCHVSpsB0J37lVDKOENhxdv2YyyJD1i5EcNLSibDL4H9fkjhrdNdOQBC8VXf1q_fqdUF9QKwVj6N3TiD4AQIQJCB4gOADQhsWCFujl5wk2mRPCkCofkHgIqzj7S7NrhcIS20Ygg9I1-mGIYBZ9HPDE44Um5YLCIrTaL3JabZm_R6Z36SiNAKECceKTeCQQIckOuShQz46jQaJB5LNB_KCIBzPmg_kw2KPoHfpkTdJoxVDIPZYX9tgtTK8ilJtWu1TadP5c4NEE7CIZBY9vszHs0Oc33p_I7-Uz-Pp98kwHI0ONQ4ZcZI51mk3L7YjL7Zz7GIXa6PYsDppYbG3Nyzc6o6n8-e3MFN-1umn6tKLTnYahePB17fpbDh8em1QF0kg9Y6J18EkHIwfnxrUR5JYqirc5j8D0Pr8f2q3qIMOddGhHjrUv-iWd-KWqD-Y4taDWaGt9E-dexhMWd9qeWurK7SVrO7eg9Vefau9W1tdoa1kde8erPbrW-3f2uoKbSWr-_dgdcWinnCy1XHCZxvu_5XdbPOxWnGxJhO9M0v-ZvQypymOLzkuv1CcpEVWFIcwLlKZwDJYWMHyBCzOwdLOXEHtWdG-Hexfo7ttBXfszJ1rmLtWcM_O3LuGuW__K7diTOxDds692H_5EwAA__8tCWoA +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVd-L2kAQfu9fEeZJuQGzm6gxTyPnCYGe1_rjXoocqTuI4GVlE6Hl8H8vSbwabd0IguDb7M5-833z7cB8QKIVj-J3TiH8AQIQJCB4gOADQhvmCBujF5ym2uRPSkCkfkHoIqySzTbLr-cIC20Ywg_IVtmaIYRp_HPNY44Vm5YLCIqzeLUuaDZm9R6b36TiLAaEMSeKTeiQQIckOuShQz46jQaJB5LNB_LCMBpNg-YD-TDfIehtdiBOs3jJEIodXi6uv1waXsaZNq32sbbJ7LlBoglYRjKPHl9mo-k-Lm69v5FfyRfx5Pt4EA2H-xr7jDjKHOq0m2fbkWfbOXSxTbRRbFgdtTDf2RsWbn3Hk9nzW5QrP-n0U3XlRSc_DaNR_-vbZDoYPL02qIskkIJD4rU_jvqjx6cG9ZAkVqoKt_nPBLQ-B4DaLeqgQ110KECHemfd8o7cEpdPprj5ZNaIq3xU5x4mU17utby51zXiKl5378Fr73KvvZt7XSOu4nVwD177l3vt39zrGnEVr3v34HXNsh5zutFJyidb7v-V3Xz7sVpyuSpTvTUL_mb0oqApjy8FrrhQnGZlVpSHKClTucAqWFjB8ggsTsHSzlxD7VnRvh3sX6O7bQV37Myda5i7VnBgZw6uYe7Z_8qtGRP7kJ1yz3df_gQAAP__MaBrGA== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), min(b), max(c), count(d), avg(a+b+c::INT+d), stddev(a+b), variance(c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVk2L4kAQve-vCHWKWGA6iYnmVDKOEFgzu34MC4sMWVOI4CTSibDL4H9f0gGNMnYcvOitU_2e71W9gvYD0izhKH7nHILfIADBBgQHEFxA6MICYSuzJed5JktIRQiTvxBYCOt0uyvK8gJhmUmG4AOKdbFhCGAW_9nwhOOEZccChISLeL1RMlu5fo_lP0riIgaECacJy8AggQbZaJCDBrlomCaJNtmtNjlBEEazVrusqloJUrU2ubDYI2S74mglL-IVQyD2eL3dwWoleRUXmex0T91O52OTRAsQxmFkkq1Og18mOeXp6WUezUxyy7NCdmtVdZ7-nAzD0cgk74DxahjvBOMfMH4N47cuNmlfbPLY2y7NZMKSk5PGFnv9GIT1lTlM5-O38JNJHOqqz1EYDb6_TWfD4fOrST5SD6l_vHgdTMJB9PRskrCQhEASSubShlC3Qx4a5KNBvYsjck5GJK5fW3EHa9tgt5aX97hra1-fiX0HmTTYrWXiP24mzvWZOHeQSYPdWia9x83EvT4T9w4yabBby6T_uJk0_K-YcL7N0pzPnt7Pf9kqn2ROVly933m2k0v-IbOlkqk-XxRPFRLOi-pWVB9hWl2VButkoSXbJ2RxTrb1yg3Sjpbt6snuLb67WrKnV_ZuUfa15J5euXeLcl-fldWwJvolO9de7L_9DwAA__-_bpRO +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVk2L4kAQve-vCHWKWGA6iUnMqWQcIbBmdv0YFhYZsqYQwUmkE2GXwf--JAGNMnYyeNFbp_o936t6Be0HJGnMYfTOGfi_QQCCCQgWINiA0Iclwk6mK86yVBaQihDEf8E3EDbJbp8X5SXCKpUM_gfkm3zL4MM8-rPlKUcxy54BCDHn0WZbyuzk5j2S_yiO8ggQppzELH2NBGpkokYWamSjpuskumR2umT5fhDOvU63KJfFAlUVu2TD8oCQ7vOTmSyP1gy-OGB7w8P1WvI6ylPZ65_7nS0mOokOIEyCUCezPA1_6WQVp6eXRTjXyS7OJbJfq5bn2c_pKBiPdXKOGKeGcc4w7hHj1jBu52qT5tUmT73tk1TGLDk-a2x5UI9BGF-Zw2wxeQs-mcSxXvY5DsLh97fZfDR6ftXJRfKQBqeL1-E0GIZPzzoJA0kIJFHKXNsR6vfIQY1c1Mi7OiLrbESi_eKKu1jcBsO1xJzHXVyzfSrmXaTSYLiWivu4qVjtU7HuIpUGw7VUvMdNxW6fin0XqTQYrqUyeNxUGv5fTDnbpUnGF0_w579sFE8zx2uu3vEs3csV_5DpqpSpPl9KXlmIOcurW1F9BEl1VRisk4WSbJ6RxSXZVCs3SFtKtq0m27f47ivJjlrZuUXZVZI9tbJ3i_JAnZXRsCbqJbvUXh6-_Q8AAP__dM6Wfg== # Verify that local and final aggregation is correctly shared and de-duplicated. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), stddev(a), avg(a) FILTER (WHERE a > 5), count(b), avg(b), variance(b) FILTER (WHERE b < 8), sum(b) FILTER (WHERE b < 8), stddev(b) FILTER (WHERE b > 2) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzsVk2L4kAQve-vCHVyocB0PjTm1DIqBGad3ejMZVeGrClEcNLSSWCXwf--JJk1iZN0Al48eBDt6nr1nu91Q79DJEJaBm8Ug_sTGCAYgGACggUINmwQjlJsKY6FzFoKgBf-AVdH2EfHNMnKG4StkATuOyT75EDgwjr4fSCfgpDkUAeEkJJgf8hpjnL_Fsi_PAySABB8ikKSrsYZapz9SnXdJNt1XW-5Ro0b2Scvbp2yWHQZRQE2JwSRJqWYOAl2BC47YX_B091O0i5IhBzadb2r528Dzr4CwuqHP_MWi4_Vw9Pzcv1_p-jRFt7jeu5r3KjuN1XNM8qsTTbLbqvsqNXOE-qdDRPshgl24wS71USj1cTSuzQSMiRJYc24zUltM9PbfF54y-nj62o9m81fBtxAzrBimPXx69XL_oRdW43OXeNy0MvU96bLh_mAO8gnyJl-7pp8pmMMOcs4c8ba6cwOoznkFmrcRo2PhvnXGDXuoMYnrR6aNQ9Z_5vDbuLmdAiuRDq635y2m2P0T924idQ7BFdSH99Tb0vd7J-6eROpdwiupO7cU29L3eqfunUTqXcIrqQ-uafe523UYKJP8VFEMV28kZon69nbicIdFQ-tWKRyS9-l2OY0xfIpx-WFkOKk2GXFwouKrUxgFcyUYKMGZpdgQ83cQW0q0ZYabF2j21aCR2rm0TXMYyXYUTM71zBP1FnpHcdEfcguuTenL_8CAAD__3F9IF8= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzsVk-L4k4Qvf8-RaiTPygwnT8ac2oZFQKzzm505rIrQ9YuRHDS0omwy-B3X5K4mrhJJ-DFgwfRrq5X7_leN_QnxFLQPPqgBPzvwADBAgQbEBxAcGGFsFdyTUkiVdZSAALxC3wTYRvvD2lWXiGspSLwPyHdpjsCH5bRzx2FFAlSfRMQBKXRdpfT7NX2I1K_uYjSCBBCigUp3-AMDc5-HEzTJtf3_WC-9NDgVvbJq2uvVC36rFMFVkcEeUgvepI02hD47IjdNY83G0WbKJWq71YlL16_9Dj7HxAW38JJMJudVk8vr_Pl352ix5gFz8tpaHCrvF9Xtc8ouzLZvnQ7l45K7Tyh2lkzwa2Z4NZOcBtNtBpNvHh3iKUSpEhUjFsd9TYzs8nnWTAfP78vlpPJ9K3HLeQMS4Y5p1_vQfYn3MpqcO4aXga9jcNgPH-a9riHfIScmeeu0b90jCFnGWfOWDmg2XG0-9xBg7to8EE__xqiwbNjOWr00K54yLpfHnYvl6dFcynVwePyNF0eq3vw1r0E36K5FPzwEXxT8Hb34O17Cb5Fcyl47xF8U_BO9-Cdewm-RXMp-NEj-C7vpBoTQ0r2Mk7o6r1UP9nM3lEkNlQ8uhJ5UGv6quQ6pymWLzkuLwhK0mKXFYsgLrYygWUw04KtCphdgy09cwu1rUU7erBzi25XCx7omQe3MA-1YE_P7N3CPNJnZbYcE_0hu-ZeHf_7EwAA__90uyOn query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), avg(DISTINCT a), variance(a) FILTER (WHERE a > 0) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8k8FruzAUx--_v0LeqT8I1KjdISel60Zgc8O6XjYPmXmI0BpJImwU__ehHjpLOxylO-Yln3w_PN7bQ6UkxmKHBtgrUCDgAQEfCARAYAEZgVqrHI1RunsyAFx-AHMJlFXd2K6cEciVRmB7sKXdIjBIxfsWExQS9dwFAhKtKLd9TK3LndCfoRRWAIEEK4maOSElTkjfGtf10WWM8TiFrCWgGnuIMVYUCIy25IzKwaCplJaoUY7Ss_aEbFQUGgthlZ4vxq7rl8dZSP8DgWhzP7vl65THy9QZSpso4VG8XHUvnDv-kK4SJ_TOSnsjaTq9f_TK_fOmq3hXVvGnq_hXVgmmqwR_OOAnVBI0taoMHg366Z_dbgFQFjhsi1GNzvFZq7yPGY5PPdcXJBo73NLhwKv-qhf8DtMf4ZsR7B7D3iXJ_iVwcAm8-BWctf--AgAA___gL8Aj +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8k1FrqzAUx9_vp5Dz1AuBGrWXS56UrhuBzQ3r-rL5kJmDCK2RJMJG8bsP9aGztMNRusec5Jf_j8M5e6iUxFjs0AB7AQoEPCDgA4EACCwgI1BrlaMxSndPBoDLd2AugbKqG9uVMwK50ghsD7a0WwQGqXjbYoJCop67QECiFeW2j6l1uRP6I5TCCiCQYCVRMyekxAnpa-O6PrqMMR6n_yFrCajGHnKMFQUCoy0543JQaCqlJWqUo_isPWEbFYXGQlil54ux7Pr5YRbSv0Ag2tzNbvg65fEydYbSJkp4FC9X3Qvnlt-nq8QJvbPS3kiaTm8gvXYDveku3rVd_Oku_rVdgukuwW8O-QmXBE2tKoNHw376Z7dbApQFDhtjVKNzfNIq72OG42PP9QWJxg63dDjwqr_qBb_C9Fv43wh2j2HvkmT_Eji4BF78CM7aP58BAAD__-WFwTs= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), avg(a), count(a), stddev(a), variance(a) FROM data] @@ -132,7 +132,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lF-L4jAUxd_3U8h9WiFg80 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT max(a), min(b) FROM data HAVING min(b) > 2] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyslEGLozAUx-_7KeSdZiAwJtpOJyfnsuBh2qX0sLDrIWseIlgjSYRdit99UQ_V0kahOZr4z-_98sK7QK0k7sUZDfBfQIEAAwIREIiBwAYyAo1WORqjdP_LGEjlX-AhgbJuWtsvZwRypRH4BWxpKwQOJ_GnwiMKifotBAISrSirAdPo8iz0v0QKK4DAobU8SBhJKGQdAdXa66nGigKB046sJ38WhcZCWKXfNnPwV7p_SegrEPj6_PmSsNeHQPYQeOW0tdISNcoZJOvcJdFwqSYC38vKouZBQoPfbRhGGDDOebo_rbutaFY8Xd8n6rdPC-TJpWz99ImtV2V-VRfIE9V3P6rRetXIr-oCeaK686Mar1eN_aoukCeqH_4HzR3gEU2jaoM3A-f-yWE_iFAWOE4to1qd4w-t8gEzfh6G3LAg0dhxl44faT1u9QVOw9QZZrMwvQ0zN3kBHTnTsTscP1P3xhneusnbZ8jvzvDOTd49Q_5w9ypceCbuR3bLzrpv_wMAAP__Cj_BNw== +https://cockroachdb.github.io/distsqlplan/decode.html#eJyslEGLozAUx-_7KeSdZiAwJtqOk5NzWfAwnWXoYWHXQ9Y8RLBGkgi7FL_7oh6qpY1CczTxn9_75YV3hkZJPIgTGuC_gAIBBgQiIBADgR3kBFqtCjRG6eGXKZDJv8BDAlXTdnZYzgkUSiPwM9jK1ggcjuJPjV8oJOqXEAhItKKqR0yrq5PQ_1IprAACn53lQcpISiHvCajOXk41VpQInPZkO_m9LDWWwir9sluCP7LDU0qfgcDH-8-nlD3fBbK7wAuna5SWqFEuIHnvLomGazUR-F7VFjUPUhr87sIwwoBxzrPDMdl2XdGierq9UdRvo1bIs1vZ-2kU267K_KqukGeqr35Uo-2qkV_VFfJMNfGjGm9Xjf2qrpBnqm_-J80N4BeaVjUGrybO7ZPDYRKhLHEaW0Z1usAfWhUjZvr8HHPjgkRjp106fWTNtDUUOA9TZ5gtwvQ6zNzkFXTkTMfucPxI3TtneO8m7x8hvzrDiZucPEJ-c_cqXHkm7kd2zc77b_8DAAD__xBTwW8= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT DISTINCT (a) FROM data] @@ -152,28 +152,28 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslE_LozAQh-_7KcqcthCoif query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT DISTINCT a, b FROM data WHERE (a + b + c::INT) = 27 ORDER BY a,b] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzElE-LozAYxu_7KeQ9zdDAmGj_TGDBw7LQy3QpvS0esualCNZIEmGX4ndfNGDXso2CHbyUanzye_i9IVcolcQPcUED_CdQIMCAQAQEYiCwhpRApVWGxijdfuICe_kbeEggL6vatq9TApnSCPwKNrcFAoeT-FXgEYVE_RYCAYlW5EWHqXR-EfpPIoUVQOB7XljUPHh5SWiwChL22v5GnO8_Tq_B14BtefcfCBxqy4OEkoRB2hBQtb0VMFacEThtyPSS33Jj8zKzb-thQ4cgcNASNcoxJnvIvKGU2-qesyIJW0Ha-MrRcFa7aNCOTh8bXWxsIyV7M5snjo1NF8MWEzNSshezfaKYaLqYaDExIyV7Mbsniomni4kXEzNSshfz_kk34H-YRzSVKg0OiI92DturEeUZ3XVqVK0z_KFV1mHc46HLdS8kGutWqXvYl26pLfhvmHrDbBCm92HmJ4-gI2869ofjOb3X3vDGT97MIW-94Z2fvJtDfvfPKhw5Jv5Dds9Omy9_AwAA__9hte_R +https://cockroachdb.github.io/distsqlplan/decode.html#eJzElEGLozAYhu_7K-Q7zdDAmGhbJ7DgYVnoZboMc1s8ZM1HEayRJMIuxf--aMCuZRsFO3gpxPTN8_J8IReolMQ3cUYD_CdQIMCAQAQEYiCwhYxArVWOxijd_cUFDvI38JBAUdWN7T5nBHKlEfgFbGFLBA4f4leJ7ygk6pcQCEi0oih7TK2Ls9B_UimsAALfi9Ki5sHTU0qDTZCy5-434vzw9pE8B18DtuduAQSOjeVBSknKIGsJqMZeKxgrTgictmR-zW-FsUWV25ftuKNDEDhqiRrlFJPdZV5Ryh11y9mQlG0ga33laLioXTRqR-cPjq44uImag5vdAwfH5qthK6qZqDmo2T9QTTRfTbSimomag5rkgWri-WriFdVM1BzUvH7SS_gf5juaWlUGR8R7J4fdE4nyhO5ZNarROf7QKu8xbnnsc_0Hica6XeoWh8ptdQX_DVNvmI3C9DbM_OQJdORNx_5wvKT31hve-cm7JeS9N5z4yckS8qt_VuHENfFfslt21n75GwAA__-pQPIB query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT DISTINCT a, b FROM data WHERE (a + b + c::INT) = 27 ORDER BY b,a] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzElU-L2zAQxe_9FGZOu0SQjOz8ExR8KIVcNmW7t5KDaw2LIWsFSYGWJd-92Aq4CY3Gi1N8CZHkp_fmxwO9Q200PRVv5ED9AAQBEgSkICADAXPYCThYU5JzxjafBMFG_wI1E1DVh6NvtncCSmMJ1Dv4yu8JFLwUP_f0TIUmO52BAE2-qPatzcFWb4X9nevCFyDga7X3ZFXy8JBjMkly-dj8pkptnl4ek8-JXKr2PwjYHr1KchS5hN1JgDn6LoDzxSuBwpPoH_K7sZ7sdH6ZL5cTkePkpoX8iMWXyvmqLv0UryiEMQRsrSZLmpsrvWnaeZlw1a1poumuGXwsXXaRDvtXA0erBhPyXI3FkGowFh18vGM1ZH_4cjT4TMgz_OUQ-IxFB1_eEX7aH346Gnwm5Bn-agh8xqKDn94RftYffjYafCbkGf56CHzGooOf_acX6R-mz-QOpnZ04Xjr5lnzVJF-pfC8OXO0JX2zpmxtwnLb6toNTc6HUwyLTR2OmoB_izEqlnGxjIrTCzFei9N47EXcOouq53HxPCpmnBdDhl5Gxau48yoqXsfF6yGxkekYV7J4y5CpGQ7qGTJFyxjzeNOQqRrGu3adfXf69CcAAP__T-n1cg== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzElU-L2zAQxe_9FGZOu0SQjOz8ExR8KIVcNmW7t5KDag2LIWsFSYGWJd-9OAq4CY3Gi1NyMUjy03vz44HeobGGnvQbeVA_AEGABAE5CChAwBQ2AnbOVuS9de0vUbAyv0BNBNTNbh_a7Y2AyjoC9Q6hDlsCBS_655aeSRty4wkIMBR0vT3a7Fz9pt3v0uigQcDXehvIqezhocRslJXysf3mSq2eXhaP2edMzlVcgID1PqisRFFK2BwE2H3oIvigXwkUHkT_mN-tC-TG0_OEpRyJEkdXLeRHLL7UPtRNFcZ4wSGOIWDtDDky3Fz5VdPOy8arrk2TTHfJ4GPpirN02L8ceMdyMDFP5ZgNKQdj0eHHG5ZD9scv74ifiXnCPx-Cn7Ho8Msb4s_748_viJ-JecK_GIKfsejw5zfEX_THX9wRPxPzhH85BD9j0eEv_tPL9A_TZ_I723g6c7x286R9ssi8UnzmvN27ir45Wx1t4nJ91B03DPkQTzEuVk08agP-LcakWKbFMinOz8R4Kc7TsWdp6yKpnqbF06SYcZ4NGXqeFC_SzoukeJkWL4fERqZjXMnSLUOmZjioZ8gUrWDM001DpmqY7tpl9s3h058AAAD__0bU96I= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT c, d, sum(a+c::INT) + avg(b+d) FROM data GROUP BY c, d] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUll9r4kAUxd_3U8h9aukseicT_-Rpyj4Jbbq0-rAsUlIzWKF1ZBJhS_G7LzGyRmPvNZgVfUsm-eXeuefMIZ8ws7EJo3eTQPAbEARIEOCBAAUCfBgJmDs7NkliXfZKDvTjPxC0BExn80WaLY8EjK0zEHxCOk3fDAQwiF7ezKOJYuOaLRAQmzSavq3KzN30PXIfOo7SCAQ8mllsXNDQnmhoJRoab7QXBP1wIBpa3mgFo6UAu0g3xZI0mhgIcCkOb-h2MnFmEqXWNf3tfjQKnW37Nvz1HD4MnsPh3d2VxuvSksyWnob3V9r7d6Wyqx8Pw3Cwut5udVP95aPxGiWv-wqPlpsdyS93tPnUYmZdbJyJtz62-gqxZ2zVvemn4f1zP9u2f11UETPVxFrNpva_VM-rol5ov9t5E3eUKxel7KLqHW7ekmztvLm_tr9VGw8_O3iSs8M0VPBR-0LODtZ5dvC8zw6j3vrstOs7O_Jw_8qT-JdpqKBl50L8K-v0rzxv_zLqrf3bqc-_3uH-9U7iX6ahgpbdC_GvV6d_vfP2L6Pe2r_d-vyrDvevOol_mYYKWvYuxL-qTv-q8_Yvo97av73_8--9p-CjSeZ2lpiD_qxb2fBNPDG5UolduLH56ex4VSa_fVhxq4XYJGn-FPOb_ix_lDVYhHEXxiIst2CsBneOgRGPov2j6B5NS3LgHj1wj4QVXVmRsGS09km6TcPtY4xCw4xRaJgzCkMzRmFoxigdcuBdeuDdY4zSozOhxYRCKVIqpQJNc7FA02wuMDgXDAzOCI6lYNmeu2TmTicLoznS0YKKKV4Kl0qi0zQnOk2zojM4JzqDc6LTuYpMsGIpYyqJTmcMMiGDpZSpJDpNc6LTNCs6g3OiMzgnOp2wkklYSf-07Yo-Wn77GwAA___JjMl9 +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUll9r4kAUxd_3U8h9aukseicT_-Rpyj4Jbbq0-rAsUlIzWKF1ZBJhS_G7LzGyRmPvNZgVfUsm-eXeuefMIZ8ws7EJo3eTQPAbEARIEOCBAAUCfBgJmDs7NkliXfZKDvTjPxC0BExn80WaLY8EjK0zEHxCOk3fDAQwiF7ezKOJYuOaLRAQmzSavq3KzN30PXIfOo7SCAQ8mllsXNDQnmhoJRoab7QXBP1w0BUNLW-0gtFSgF2km2pJGk0MBLgUh3d0O5k4M4lS65r-dkMahc72fRv-eg4fBs_h8O7uSuN1aUlmS0_D-yvt_btS2dWPh2E4WF1vt7qp_vLReI2S132FR8vNjuSXO9p8ajGzLjbOxFsfW32F2DO26t700_D-uZ9t278uyoiZamItZ1P7X6rnVVEvtN_tvIk7ypWLUnZR9Q43b0m2dt7cX9vfqo2HHx48zeFhOioYqX0hhwfrPDx43oeHUW99eNr1HR55uIHlaQzMdFQQs3MhBpZ1Gliet4EZ9dYG7tRnYO9wA3unMTDTUUHM7oUY2KvTwN55G5hRb23gbn0GVocbWJ3GwExHBTF7F2JgVaeB1XkbmFFvbeDe__n_3lPw0SRzO0vMQX_XrWz4Jp6YXKnELtzY_HR2vCqT3z6suNVCbJI0f4r5TX-WP8oaLMK4C2MRllswVoM7x8CIR9H-UXSPpiU5cI8euEfCiq6sSFgyWvsk3abh9jFGoWHGKDTMGYWhGaMwNGOUDjnwLj3w7jFG6dGZ0GJCoRQplVKBprlYoGk2FxicCwYGZwTHUrBsz10yc6eThdEc6WhBxRQvhUsl0WmaE52mWdEZnBOdwTnR6VxFJlixlDGVRKczBpmQwVLKVBKdpjnRaZoVncE50RmcE51OWMkkrKR_2nZFHy2__Q0AAP__iNDKlQ== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT c, d, sum(a+c::INT) + avg(b+d) FROM data GROUP BY c, d ORDER BY c, d] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUl81u4koQhff3KVCtEtFXUG2bH686uiukxLlKYDEaocjBLYKU0KhtpIki3n1kfgYTQ5U9thDsjMnpU11V31H4grmJdBB-6Bj8n4AgQIIABwS4IMCDsYCFNRMdx8amf7IRDKJf4LcFzOaLZZK-HguYGKvB_4Jklrxr8GEYvr7rJx1G2rbaICDSSTh7X9ss7OwjtJ8qCpMQBDzpeaSt31COaChXNBQ2leP7g2AoGko2lQvjlQCzTPZmcRJONfi4EsULuptOrZ6GibEt77AehUKl174LfrwEj8OXYHR_f6PwNvdKpq-eRw83yvnz5KZP_z2OguH6-bDUvfvrZ-MtjN-OGY9X-xvJkzfaH7WcGxtpq6ODw9anEHfGdt2Xfh49vAzSa3u32SliOjWxnWZLeSen55SZXmD-NYsWfptc3pRaF7eM4bOxibYtmWtbUyjZPOnhFRjgsfFlDj55e-l9m_jxEjoHJWBxTPEsmDIFZVa2cyWYYp2Y4mVjykxvi2mnPkwZwx2mubaVwVQWZ0SehRGmoMy-dK-EEVknI_KyGWGmt2WkWx8jjOGOkVzbyjDiFGfEOQsjTEGZfeldCSNOnYw4l80IM70tI736GGEMd4zk2laGEbc4I-5ZGGEKyuxL_0oYcetkxL1sRpjpbRnp18cIY7hjJNe2v_1JdMTjSccLM491oV867XTAOprqzTbEZmkn-n9rJmubzcfHtW79ItJxsvkWNx8G881XaYFZMX4XY1YsD8RYTtyrIkankrqSt2S8Jdlwh264Q4pdWuySYo8u2yPFskNbd0h1lxZ3q2wZLWYmTYu5LWPUlby5LeuRDe_TDe_TmdBmQoGOFGbPMEfXoblkzHN4lYokWs3lAq1mQ4mRV3PnFgbpaEEmW5AOF_QYOR0v3M7Q8YJMvmClgGHU3NSqRQwnr-bO7gydMsjEDNI5I5mckZVyRtI5I5mckZVyhlEzU2PU3M5w8mru7L8_dM5IJmcknTOSyRlZLmfGq39-BwAA___m0NA1 +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUl81u4koQhff3KVCtEtFXUG2bH686uiukxLlKYDEaocjBLYKU0KhtpIki3n1kfgYTQ5U9thDsjMnpU11V31H4grmJdBB-6Bj8n4AgQIIABwS4IMCDsYCFNRMdx8amf7IRDKJf4LcFzOaLZZK-HguYGKvB_4Jklrxr8GEYvr7rJx1G2rbaICDSSTh7X9ss7OwjtJ8qCpMQBDzpeaSt31COaChXNBQ2leP7g2DYEw0lm8qF8UqAWSZ7tzgJpxp8XIniFd1Np1ZPw8TYlndYkEKh0nvfBT9egsfhSzC6v79ReJt7JdNXz6OHG-X8eXLTp_8eR8Fw_XxY6t799bPxFsZvx4zHq_2N5Mkb7Y9azo2NtNXRwWHrU4g7Y7vuSz-PHl4G6bW92-wYMZ2a2I6zpbyT03PKTC8w_5pFC79NLm9KrYtbxvDZ2ETblsy1rSmUbJ708AoM8Nj4MgefvL30vk38eAmdgxKwOKd4Hk6ZijI727kSTrFOTvGyOWWmt-W0Ux-njOGO01zbynAqi0MizwMJU1FmYbpXAomsExJ52ZAw09tC0q0PEsZwB0mubWUgcYpD4pwHEqaizML0rgQSp05InMuGhJneFpJefZAwhjtIcm0rA4lbHBL3PJAwFWUWpn8lkLh1QuJeNiTM9LaQ9OuDhDHcQZJr29_-LDri8aTjhZnHutCvnXY6YB1N9WYbYrO0E_2_NZO1zebj41q3fhHpONl8i5sPg_nmq7TArBi_izErlgdiLCfuVRGjU0ldyVsy3pJsuEM33CHFLi12SbFHl-2RYtmhrTukukuLu1W2jBYzk6bF3JYx6kre3Jb1yIb36Yb36UxoM6FARwqzZ5ij69BcMuY5vEpFEq3mcoFWs6HEyKu5cwuDdLQgky1Ihwt6jJyOF25n6HhBJl-wUsAwam5q1SKGk1dzZ3eGThlkYgbpnJFMzshKOSPpnJFMzshKOcOomakxam5nOHk1d_bfHzpnJJMzks4ZyeSMLJcz49U_vwMAAP__g5rRTQ== # There should be no "by hash" routers if there is a single stream. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT c, d, sum(a+c::INT) + avg(b+d) FROM data WHERE a > 9 GROUP BY c, d] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkkFrs0AQhu_fr5A5JWQ-4mp62dPkVAKpKWlSKEXC1h1ESFzZ3UBL8L8X3UNjS217nHfmGR8dL1AbzZk6sQP5DAIQbiBHaKwp2DljuzgMrfQryBihqpuz7-IcoTCWQV7AV_7IICEz_00zTwBBs1fVsR9rEczZf0DOq5JBpi1eLRbji3fq5chbVprtPB6sh8ZWJ2XfSCuvAGHLtWYrI0oxogVGJGaUSrnKdhhRMqMFfCck_iK0LEvLpfLGzsXQhwRS9wWW2dMh2-wO2X69npCYfomSLnrY300o7ZuPtxNaTK9fQXTKGFE6pp0MtH840JZdY2rHv7pQ3OYIrEsOP4EzZ1vwvTVF_5hQbnquDzQ7H7ppKFZ1aHWC17AYhZNxOBmF409w3v57DwAA__8Wy-lU +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUksFKw0AQhu8-RZhTS0eaTSrInqYnKdRUaiuIhLJmhxBos2F3C0rJu0uyB1vFqMf5Z77Jl0xOUBvNmTqwA_kCAhBuIEdorCnYOWO7OAwt9BvIGKGqm6Pv4hyhMJZBnsBXfs8gITPXppkmgKDZq2rfj7UI5ug_IedVySDTFs8Wi-HFG_W65zUrzXYaX6yHxlYHZd9JK68AYc21ZisjSjGiGUYkJpRKucg2txhRMqEZ_GQk_mM0L0vLpfLGTsWlEAmk7hPMs-ddttrssu1yOSIx_hYlXfS4vR9R2jef7kY0G5-_g-iUMaJ0SDu50P7lQmt2jakd_-lEcZsjsC45_AXOHG3BD9YU_WNCueq5PtDsfOimoVjUodUJnsNiEE6G4WQQjr_AeXv1EQAA___Py-mM query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), sum(b), sum(c) FROM data GROUP BY d HAVING sum(a+b) > 10] @@ -211,7 +211,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslE2rozAUhvfzK4Z3NQOBGr query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT max(t.a), min(t.b), avg(t.c) FROM (VALUES (1, 2, 3), (4, 5, 6), (7, 8, 0)) AS t(a, b, c) WHERE b > 3] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkE1L9DAUhffvryhn1YHAJO0uq3bzShdTRUQE7SK0l1KIvSUfIgz979JmoSOM6C733DznCTlj5oFa80oe-hkKncDiuCfv2W1RutAM79BSYJqXGLa4E-jZEfQZYQqWoGG5NzZ7MzaSz-RRQmCgYCa7N_-fbCCns6rIXqKUJWWl1rppH9CtAhzDZ7EPZiRotYrfy-txdDSawO6oLsWn-imv1AECp6bNq2I71Y83eVUerqqLv6jvyS88e7rQXmuWaydAw0jpbz1H19Od437XpPF25_ZgIB_SVqWhmdNqe-BXWP0IF9_gbv33EQAA___td6KP +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkM1KxDAUhfc-RTmrGQhM0m4kq3ajdDFVRETQLkJ7KYXYW_IjwtB3lzYLHWFEd7nn5jtfyAkT99SYN_LQL1BoBWbHHXnPbo3Shbr_gJYC4zTHsMatQMeOoE8IY7AEDcudsdm7sZF8Jg8SAj0FM9qt-Wa0gZzOyjx7jVIWlBVa67p5vEa7CHAMX80-mIGg1SL-bq-GwdFgAruDOjcfq-ddqfYQONbNrszXU_V0uyuL_UV1_h_1A_mZJ09n2kvNcmkFqB8ofa7n6Dq6d9xtmjTebdwW9ORD2qo01FNarQ_8Dqtf4fwH3C5XnwEAAP__aQiixw== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM (VALUES (1, '222'), (2, '444')) t1(a,b) JOIN (VALUES (1, 100.0), (3, 32.0)) t2(a,b) ON t1.a = t2.a] @@ -224,12 +224,12 @@ CREATE TABLE nullables (a INT, b INT, c INT, PRIMARY KEY (a)) query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT array_agg(a) FROM (SELECT a FROM data WHERE b = 1 AND c = 1.0 AND d = 1.0 ORDER BY a)] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFFro0AQx9_vU8g8KbdcXDXHsXCgXC5ByCWH5KUUKVt3EMG4srtCS_C7F5U2tTStJS8-7ow_5_9bmD1BJQXu-BE1sFugQMADAj4QCIDAElICtZIZai1V98kAxOIBmEugqOrGdOWUQCYVAjuBKUyJwODA70tMkAtUCxcICDS8KPsxtSqOXD2GghsOBNZFaVAxy7ZDz_ptUcZYvDs4VrRbWXbod6UfLmNsvd1Hh1_OcyN4aaz-_on_RVsHCOwbw6yQQtoSkI05x9OG5wiMtuSCwjm5VAIVinHmkH6HtH3HM8pzhTk3Ui2WYyRKkujmLtps7JA6FxN5o0R0-qXSmV6qN13Bm6mCP13Bn6lCMF0hmKnCJw9MgrqWlcZR-kt_drvVRZHjsOpaNirD_0pm_ZjhuO-5viBQm6FLh0Nc9a0-4GuYfgj_HMHuW9i7ZrJ_DRxcAy-_BKftt6cAAAD__-b08nc= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFGLm0AQx9_7KWSelC6Nq6aEhYLSNEFIkyJ5KUXKnjuIYFzZXeGO4Hc_VO5yHpc7j7z4uDP-nP9vYfYMlRS45yfUwP4BBQIeEPCBQAAElpASqJXMUGupuk8GIBb3wFwCRVU3piunBDKpENgZTGFKBAZHfldiglygWrhAQKDhRdmPqVVx4uohFNxwILApSoOKWbYdetYPizLG4v1x5VjRfm3Zod_VvrmMsc3uEB1XzlMjeG6sf_2Mf0c7BwgcGsOskELaEpCNueTThucIjLbkisMlulQCFYpx6JB-hbR9QzTKc4U5N1ItlmMkSpLo7_9ou7VD6lxN5I0S0em3Sud6q950B2-uDv50B3-uDsF0h2CuDh-8MgnqWlYaR_Gv_dnt1hdFjsO6a9moDP8omfVjhuOh5_qCQG2GLh0OcdW3-oAvYfou_H0Eu69h75bJ_i1wcAu8_BSctl8eAwAA___sfPOP query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT json_agg(a) FROM (SELECT a FROM data WHERE b = 1 AND c = 1.0 AND d = 1.0 ORDER BY a)] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFGLm0AQx9_7KWSelC6Nq6aUhYLSNMGSaknzVqRs3UEE48ruCj2C3_1Quct5XO488uLjzvhz_r-F2TPUUmDCT6iB_QEKBDwg4AOBAAisISPQKJmj1lL1n4xALP4DcwmUddOavpwRyKVCYGcwpakQGBz5vwoPyAWqlQsEBBpeVsOYRpUnru5CwQ0HAtuyMqiYZduhZ321KGMsTo6OFSUbyw79vvTJZYxt92l0_OI8NILHxub7t_hntHeAQNoaZoUUso6AbM0lnja8QGC0I1cULsmlEqhQTDOH9CNk3QueUVEoLLiRarWeIj9-p8nfaLezQ-pcDeRNAtH5d0oXeqfefAVvoQr-fAV_oQrBfIVgoQpvvC8H1I2sNU7SX_uz228uigLHTdeyVTn-UjIfxozHdOCGgkBtxi4dD3E9tIaAT2H6Kvx5ArvPYe-Wyf4tcHALvH4XnHUf7gMAAP__I8nyMg== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFGLm0AQx9_7KWSelC6Nq6aEhYLSNMGSaknzVqRs3UEE48ruCi3B715UejmPy51HXnzcGX_O_7cwe4FaCkz4GTWwn0CBgAcEfCAQAIE1ZAQaJXPUWqr-kxGIxR9gLoGyblrTlzMCuVQI7AKmNBUCgxP_XeERuUC1coGAQMPLahjTqPLM1d9QcMOBwK6sDCpm2XboWZ8syhiLk9PGsaJka9mh39c-uIyx3SGNThvnfyN4aGy_fI6_RQcHCKStYVZIIesIyNZc82nDCwRGO3LD4RpdKoEKxTR0SN9D1j0jGhWFwoIbqVbrKfL1R5r8ivZ7O6TOzUDeJBCdf6l0qZfqzXfwlurgz3fwl-oQzHcIlurwyiNzRN3IWuMk_q0_u_32oihw3HYtW5XjdyXzYcx4TAduKAjUZuzS8RDXQ2sI-BimL8IfJ7D7FPbumezfAwf3wOs3wVn37l8AAAD__ygF80o= # Test that orderings on GROUP BY columns are propagated through aggregations. statement ok diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_auto_mode b/pkg/sql/logictest/testdata/planner_test/distsql_auto_mode index 58be958c8b72..b903bc401016 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_auto_mode +++ b/pkg/sql/logictest/testdata/planner_test/distsql_auto_mode @@ -12,8 +12,8 @@ CREATE TABLE kv (k INT PRIMARY KEY, v INT) query BT colnames EXPLAIN (DISTSQL) SELECT 1 ---- -automatic url -false https://cockroachdb.github.io/distsqlplan/decode.html#eJyMjzFLBDEUhHt_xTKVQsBs-0q7bU45xEZSLMlwLq7JkpeAcOx_l00KsRCunJnk-3hXxBR4mr-okHeMcAZbTp6qKR9VfzCFb4g1WOJWy1E7A58yIVeUpayE4G1eK_XRwiCwzMvaiHZ4Gu7t4D9q_NQHGJwZA7MMo4hMp1e43SDV8svVMl8Isbu53X2mbikq_7j_JzsDhgv7fZpq9nzJyTdNj8_tXysCtfR17GGKfdrdfvcTAAD__5-jaAo= +automatic url +false https://cockroachdb.github.io/distsqlplan/decode.html#eJyMjzFLxTAUhXd_RTmTQsB0kzu6dXnKQ1wkQ0kOz2JNSm4CwqP_XZoM4iA4nnOS7-NeEVPgaf6kQt4wwhlsOXmqpnxU_cEUviDWYIlbLUftDHzKhFxRlrISgtd5rdR7C4PAMi9rI9rhcbi1g3-v8UPvYHBmDMwyjCIynV4e4HaDVMsPWMt8IcTu5v_yM3VLUflL_jfZGTBc2A_UVLPnc06-aXp8av9aEailr2MPU-zT7vab7wAAAP__8hZoQg== # Check the JSON column is still there, albeit hidden. query T colnames diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_interleaved_join b/pkg/sql/logictest/testdata/planner_test/distsql_interleaved_join index c5132d87f369..d449d7d6b889 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_interleaved_join +++ b/pkg/sql/logictest/testdata/planner_test/distsql_interleaved_join @@ -236,7 +236,7 @@ SELECT url FROM [EXPLAIN (DISTSQL) OR pid1 >= 31 AND pid1 <= 33 ] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE9r3DAQxe_9FGJOu3RKLDlpqWBBhVJwKd5iemt9ENbEETiSkeTSEvzdi-0u8Yb0Xwohh71ZevPjDX6juQHnDZX6miLIz8ABQQDCBdQIffANxejDJC2FhfkGMkOwrh_SdF0jND4QyBtINnUEEgqXKHSkv1JF2lB4762jcJYBgqGkbTc7faDLBJOHvdbhu-p1IJcm-0lg72yXKEi22SjOvgxZljc7xnMpZVF-2rJ9tVJox_jrg_KmfMvWjOA_le1CraD8IAFCZdurdTtt0M40V7Yz4qA-ek_LfwOEji7TRvHn212YGpk_AWE_JMkURyVQnaO6QPUS1SuoRwQ_pNt8YtItgeQj_iLD2-gG54OhQOYoq3q8J-XSv_D9WX6n8H5rcWTNHzQ-_DQ-T2h8xIMyFKcMn1CGf1jjFcXeu0h_9cKzaUWQaWnZJ9EPoaGPwTezzXLcz9x8YSimReXLoXCzNDe4hvlv4fMjOLsLi_9xzv8JrsdnPwIAAP__gf0kvQ== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE9r3DAQxe_9FGJOu3RKLDnpH8GCCqXgUrzF9Nb6IKyJI3AkI8mlJfi7F9sk8Yb0X3pIDnuz9ObHG_xGcwXOGyr1JUWQX4ADggCEM6gR-uAbitGHSVoKC_MdZIZgXT-k6bpGaHwgkFeQbOoIJBQuUehIf6OKtKHwwVtH4SQDBENJ2252-kjnCSYPe6nDD9XrQC5N9pPA3tsuUZBss1GcfR2yLG92jOdSyqL8_HrL9tVKoh3jb26kt-U7tqYEv5a2C7fC8hsNECrbXqxbaoN2prmwnRHX6qP0tfw_QOjoPG0Uf77dhamZ-RMQ9kOSTHFUAtUpqjNUL1G9gnpE8EO6zSkm3RJIPuIvsryNcHA-GApkDjKrx3vSLv0L35_kdwrvtxYH1vxBY8SPY_QEx0g8KEtxzPIJZvmH9V5R7L2L9FcvPptWBpmWlv0S_RAa-hR8M9ssx_3MzReGYlpUvhwKN0tzg2uY_xY-PYCzu7D4H-f8n-B6fPYzAAD__4MtKf0= query T SELECT url FROM [EXPLAIN (DISTSQL) @@ -246,7 +246,7 @@ SELECT url FROM [EXPLAIN (DISTSQL) OR pid1 >= 31 AND pid1 <= 33 ] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE-L2zAQxe_9FGJOCZ2ylr1LqSCgQim4FKeY3lofhDXrFXglI8mlZfF3L7Yb4oT0Xwolh9wsvfnxBr_RPIF1mgr1SAHEJ-CAkALCHVQInXc1heD8KM2Fuf4KIkEwtuvjeF0h1M4TiCeIJrYEAnIbybekvlBJSpN_54wlf5MAgqaoTDs5vaf7CKOHeVT-m2y8srp-MK0e7UeRvTVtJC_YaiU5-9wnSVZvGM-EEHnxcc225UKhDeOvdsrr4g1bMin_oaxnagFlOwkQStM8LFvqlCcb-U757_3M_w0QWrqPK8mfrzd-bGT6BIRtHwWTHGWKMkN5i_IO5UuoBgTXx30-IaqGQPABf5LhPrreOq_Jkz7IqhpOpFy4F667yY4KT1unB9b8rPHh1_G5oPFJz8owvWZ4QRn-Zo2XFDpnA_3RC0_GFUG6oXmfBNf7mj54V08283E7cdOFphBnlc-H3E7S1OAS5r-Ebw_g5BhO_8U5-yu4Gp59DwAA__8zXSS0 +https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE-L2zAQxe_9FGJOCZ2ylr1LW0FAhVJwKU4xvbU-CGvWK_BKRpJLy-LvXmyzGyek_9JDc8jN0psfb_AbzQNYp6lQ9xRAfAYOCCkg3ECF0HlXUwjOj9JcmOtvIBIEY7s-jtcVQu08gXiAaGJLICC3kXxL6iuVpDT5985Y8lcJIGiKyrST0we6jTB6mHvlv8vGK6vrO9Pq0X4U2TvTRvKCrVaSsy99kmT1hvFMCJEXn16t2bZcSLRh_PWT9KZ4y5ZUyh-l9cwtsOxJA4TSNHfLtjrlyUb-qPyXnub_Bwgt3caV5M_XGz82M30CwraPgkmOMkWZobxGeYPyJVQDguvjLqcQVUMg-IA_yXIXYW-d1-RJ72VWDUfSLtwL111lB4XHrdM9a37SGPHLGJ3hGKUnZZlesjzDLH-z3ksKnbOB_ujFJ-PKIN3QvF-C631NH72rJ5v5uJ246UJTiLPK50NuJ2lqcAnzX8LXe3ByCKf_4pz9FVwNz34EAAD__zwZKfQ= query TTT EXPLAIN SELECT * FROM grandchild2 JOIN parent1 USING(pid1) WHERE @@ -283,7 +283,7 @@ SELECT url FROM [EXPLAIN (DISTSQL) OR gcid2 >= 49 AND gcid2 <= 51 ] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzslUFr2zAUx-_7FOKdHPJGLVluV0FAgzHIGMkIu20-GOs1NbhWkOSxUfLdh-3FrUs21gRy8tH668df8k_wHqG2hlb5A3lQ34ADggCEBBAkIKSQIeycLch769otPbA0P0HFCGW9a0K7nCEU1hGoRwhlqAgULOtArqL8B20oN-Q-2bImdxUDgqGQl1XX-JnuArQd5UPufunivqxMe4JNub1_HmxdXptxyj6WVSCnWBRFmrPvTRwntGCpUmq5-jpj71cf2BAUC3bzJ5ix9YZFkRYDwsWYEQPD5QE6UHKg5O2YkgOV8gMFCP29AaGiuxBpPkct5qiT-Wzh2muMlgBh3QTFNEctUCeoJeoU9TXqG9TvUN9CtkewTXj68T7kWwLF9_gXOU9Omto6Q47MSEK2P6JvZd_a3VX6YuPxajGq5ie9Cz69i0u8C3GSHDHJuYSc5CQ5ySTnEnLkSXLkJOfS4-6InA35na09_dc0i9txSGZL_ez0tnEFfXG26Gr6z3XHdQuGfOhT3n8s6y7qDvgc5v-Er0dw_BIW5zQn58DyHDh9FZzt3_wOAAD__-mfE2o= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzslU2L2zAQhu_9FWJODpmylizvhyCgQimklKSE3lofjDWbNXitIMmlZcl_L7ZZ7zqkpU0gvfhovXp4JT-CeYLaGlrlj-RBfQUOCAIQEkCQgJBChrBztiDvrWu39MDS_AAVI5T1rgntcoZQWEegniCUoSJQsKwDuYry77Sh3JD7aMua3FUMCIZCXlZd4ye6D9B2lI-5-6mLh7Iy7Qk25fbhdbB1eW3GKftQVoGcYlEUac6-NXGc0IKlSqnl6svtjL1bvWdDUizYzXMyY-sNiyItBoiLA0oMFJcD9szJgZN3B5wcuJQPHCD0tweEiu5DpPkctZijTuazhWsvM1oChHUTFNMctUCdoJaoU9TXqG9Q36K-g2yPYJvw8vt9yLcEiu_xN4pezDS1dYYcmZGKbH9E4sq-tbur9GDj8WoxquYnvQ4-vY7LvQ5xkiIxKbqcouQkRcmk6HKK5EmK5KTo_4zBI4o25He29vRXUy5uxySZLfUz1dvGFfTZ2aKr6T_XHdctGPKhT3n_say7qDvga5j_Eb4ewfEhLM5pTs6B5Tlw-k9wtn_zKwAA__9OgRn6 query TTT EXPLAIN diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_lookup_join b/pkg/sql/logictest/testdata/planner_test/distsql_lookup_join index f87394df040d..3d4a067cda0f 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_lookup_join +++ b/pkg/sql/logictest/testdata/planner_test/distsql_lookup_join @@ -54,7 +54,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkcFq8zAQhO__U5g9708sp- query T rowsort SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM distsql_lookup_test_1 JOIN distsql_lookup_test_2 ON f = b WHERE a > 1 AND e > 1] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkkFr4zAQhe_7K8ScdmGWWPZmDzrpVHApSQm5tSa41pCqdTSuJENC8H8vtgtNCnHT47yZ7z2PR0dwbGhR7iiAegAJCHMoEBrPFYXAvpfHodzsQSUI1jVt7OUCoWJPoI4QbawJFCz4LzezFBAMxdLWw1iHwG38hEIstwQq6_DEWE4br8unmlZUGvKz5MweGm93pT9oY0MMb_WmZn5tm02kEDcSLqXLn6TfsnUf4fL68P433A21eGHrBDsldC_mztD-xtaRfK-IxzZJMhJSKZUv1uK3t9vnKII1JNjVhz-AsGyjElqiTlFnqP-hnqP-f3G79Gy7b462otCwC3TV1ZKuQCCzpfFhBG59RfeeqyFmLJcDNwiGQhy72Vjkbmz1H3gKy0k4nYbTSTj5Ahfdr_cAAAD__8vq-nE= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUktFLwzAQxt_9K8I9KUTWtE4kT3kSKrLJ2JuWUZtjRrNcTVLYGP3fpa3gJqzOx_vuft_X62UPjjTOyg0GkM8ggMMUCg61pwpDIN_Jw1CutyATDsbVTezkgkNFHkHuIZpoESTM6JrqSQocNMbS2H6s5UBN_IFCLNcIMmv5gbEYN16WrxYXWGr0k-TIHmpvNqXfKW1CDJ92ZYk-mnoVMcSVgFPp4j_pD2Tcd7g4P7z7DY99zd7JOEZOMtWJudO4vTc2ou8U9tIkSYZMSCnz2fKOXXqzfossGI2MnN1dAYd5EyVTgquUq4yrG66mXN2eXC89Wu-Pqy0w1OQCnnW2pC04oF7j8DICNb7CJ09VHzOU857rBY0hDt1sKHI3tLoPPITFKJyOw-konPyCi_biKwAA__-fw_qp # Ensure lookup join is planned on a multi-node cluster. @@ -137,7 +137,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyckTFvszAQhvfvV3y6-apgIB query T rowsort SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM authors INNER JOIN books ON books.edition = 1 WHERE books.title = authors.book] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkUFLAzEQhe_-ijAnhUg3W3sJCDkJK9JK6U32kG6GNnabWZIstJT975JdwVbsqse8mW_eTN4JHBmc6z0GkG8ggMMMSg6NpwpDIJ_koakwB5AZB-uaNia55FCRR5AniDbWCBLmdE_NJAcOBqO2dd_WcaA2fkEh6g2CnHb8bLAYH7zS6xqXqA36SXYxHhpv99oflW7jNu3LYdFGyZTgKodr5uI_5s9k3ae3-Nl7TbRLzi9Eu7Zh72QdIyeZSl9ROIOHJ1tH9Elhj0xIKYv5it16u9lGFqxBRq4-3l0sz9WUqweuZlevyC-u-CWbJYaGXMA_hZN1JQc0GxzyD9T6Cl89Vb3N8Fz0XC8YDHGoTodH4YZSWvAcFqNwPg7no3D2DS67m48AAAD__5V27x8= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkkFr8zAMhu_frzA6fQOPxukKwzDwaZAx2lF6Gzm4sWi9plawHWgp-e_DyWDtWLPtqFd69EqWT-DI4FzvMYB8BQEcZlByaDxVGAL5JA9FhTmAzDhY17QxySWHijyCPEG0sUaQMKdbaiY5cDAYta37so4DtfETClFvEOS042eNxXjjlV7XuERt0E-yi_bQeLvX_qh0G7dpXg6LNkqmBFc5XDMXfzF_Ius-vMX33muiXXJ-Jtq1DXsj6xg5yVR6isIZPDzaOqJPCntgQkpZzFf37L-3m21kwRpk5OrjzcX0XE25uuNqdnWN_GKNH46zxNCQC_ir62RdyQHNBocPEKj1Fb54qnqbIVz0XC8YDHHIToegcEMqDXgOi1E4H4fzUTj7Apfdv_cAAAD__13371c= statement ok @@ -280,16 +280,16 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJzslkGPmzAQhe_9FdacXS0Gks query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT t1.c, t2.c FROM multiples t1 LEFT JOIN multiples@bc t2 ON t1.c = t2.b AND t2.c < 20] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlc9r2zAUx-_7K8Q7baBR_0qa6pRLCy4lGcE7bT641iPT5ugZSYaGkv99OB6rHVrZkFxytK2vP-99npBeQZPEVbFDC-IHhMAhAg4xcEiAwwxyDrWhEq0l0y7pAql8ARFwULpuXPs651CSQRCv4JSrEARkxXOFGywkmpsAOEh0haqOmNqoXWH2y11TOVVXaIHDunGCLWPIDxyocW__ta7YIojwwKezH0npf-jZEJ3taxTs6f4hY-vv2f2GPa7TFXB4LgfVPBH9aWr2m5RmpAVbtmZSLfHlQVUOTVsq-9kEQVyyKBBCpKuMfTZq-8sxqyQy0tX-y_-2Qr5MPuws-rCzt4YaTUaiQTnoJj-80_uKvlJ9EwYnK99nxwN2OH2i4aUnOsLuTXR-ZRONpluNLm11hN2zentlVuPpVuNLWx1h96wursxqMt1qcmmrI-ye1bsrszpyW23Q1qQtTjqxg_bMR7nF7oKw1JgSvxkqj5jucX3MHV9ItK77GnYPqe4-tQX2w6E3HA3C4Wk48pNH0LE3nfjDyTl1z7zhuZ88P4d86w0v_OTFOeQ7_6yCkW3i32Sn7Pzw6W8AAAD__16RXd8= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlc9r2zAUx-_7K8Q7baBR_0qa6pRLCy4lGcE7bT641iPT5ugZSYaGkv99OB6rHVrZkFxytK2vP-99npBeQZPEVbFDC-IHhMAhAg4xcEiAwwxyDrWhEq0l0y7pAql8ARFwULpuXPs651CSQRCv4JSrEARkxXOFGywkmpsAOEh0haqOmNqoXWH2y11TOVVXaIHDunGCLWPIDxyocW__ta7YIojwwKezH0npf-jZEJ3taxTs6f4hY-vv2f2GPa7TFXB4LgfVPBH9aWr2m5RmpAVbtmZSLfHlQVUOTVsq-9kEQVyyKBBCpKtswT4btf3lmFUSGelq_-V_XyFfJh-2Fn3Y2ltHjSYj0aActJMf3ml-RV-pvgmDk5Xvs-MBO5w-0vDSIx1h90Y6v7aRRtO1RpfWOsLuab29Nq3xdK3xpbWOsHtaF9emNZmuNbm01hF2T-vdtWkdubI2aGvSFied2kF77qPcYndJWGpMid8MlUdM97g-5o4vJFrXfQ27h1R3n9oC--HQG44G4fA0HPnJI-jYm0784eScumfe8NxPnp9DvvWGF37y4hzynX9Wwcg28W-yU3Z--PQ3AAD__-oXXvc= # Left join with ON filter on non-covering index query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT t1.c, t2.d FROM multiples t1 LEFT JOIN multiples@bc t2 ON t1.c = t2.b AND t2.d < 30] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlUFvmzAUx-_7FNY7bZKnYiBp6hOXVqKqkilip40DxU-ZN2Ij20iNqnz3iTCtELUGKblwxPafn9_vWfYrKC1wXezRAv8BDCiEQCECCjFQWEBOoTa6RGu1aZd0gVS8AA8oSFU3rh3OKZTaIPBXcNJVCByy4rnCLRYCzU0AFAS6QlYnTG3kvjCHZN9UTtYVWqCwaRwnSQT5kYJu3Nt_rSt2CJwd6XT2o5bqH3oxRGeHGjl5un_IyOZ7dr8lj5t0DRSey8FunrT-09Tkt5aKaMVJ0ppJlcCXB1k5NJwkMfnZBEFUkijgnKfrjHw2cvfLESsFEq2qw5f_ZTGaLD6sLPywsreCGqWNQINiUE1-fKf2tf6q6xsWnK18nx0N2Gx6R9m1OzrC7nV0ObOOhtOthte2OsLuWb2dmdVoutXo2lZH2D2rq5lZjadbja9tdYTds3o3M6sjr9UWba2VxUk3dtDe-Sh22D0QVjemxG9GlydM97k55U4DAq3rZln3kapuqt1gP8y84XAQZufh0E8eQUfedOwPx5fse-ENL_3k5SXkW2945SevLiHf-XsVjBwT_yE7Z-fHT38DAAD__7jtXe4= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlUFvmzAUx-_7FNY7bZKnYiBp6hOXVqKqkilip40DxU-ZN2Ij20iNqnz3iTCtELUGKblwxPafn9_vWfYrKC1wXezRAv8BDCiEQCECCjFQWEBOoTa6RGu1aZd0gVS8AA8oSFU3rh3OKZTaIPBXcNJVCByy4rnCLRYCzU0AFAS6QlYnTG3kvjCHZN9UTtYVWqCwaRwnSQT5kYJu3Nt_rSt2CJwd6XT2o5bqH3oxRGeHGjl5un_IyOZ7dr8lj5t0DRSey8FunrT-09Tkt5aKaMVJ0ppJlcCXB1k5NJwkMfnZBEFUkijgnKfrbEU-G7n75YiVAolW1eHL_7oYTRYflhZ-WNpbRY3SRqBBMSgnP75T_Fp_1fUNC85Wvs-OBmw2vaXs2i0dYfdaupxbS8PpWsNrax1h97Tezk1rNF1rdG2tI-ye1tXctMbTtcbX1jrC7mm9m5vWkSdri7bWyuKkWzto730UO-weCasbU-I3o8sTpvvcnHKnAYHWdbOs-0hVN9VusB9m3nA4CLPzcOgnj6Ajbzr2h-NL9r3whpd-8vIS8q03vPKTV5eQ7_y9CkaOif-QnbPz46e_AQAA__9Eql8G # Left join with ON filter and WHERE clause query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT t1.c, t2.d FROM multiples t1 LEFT JOIN multiples@bc t2 ON t1.c = t2.b WHERE t2.d < 30] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlUtr20AQx-_9FMuct0Srh-PsSZcEHIJdjHpqdVCkIaiVNcs-oCH4uxdZpZFMshLYBx338ddv9jfL6g1aqnBbHNCA_AECOITAIQIOMXBIIOegNJVoDOluSx_YVH9ABhzqVjnbTeccStII8g1sbRsECVnx3OAeiwr1TQAcKrRF3ZwwSteHQr-mB9fYWjVogMPOWcnSCPIjB3L2_bvGFi8IUhz5fPYj1e0_dDJGZ68KJXu6f8jY7nt2v2ePu80WODyXo2qeiH47xX5R3TJqJUs7Mw91Y1FLlibspwuCqGRRIKXcbLP_9QueJp8eIfz0CO-Vu5Z0hRqrUdn58YNDbukrqRsRnO38mB2N2GJ-68S1WzfBHrRutdTWhfP1hdfWN8Ee6Ltdqr5ovr7o2vom2AN966Xqi-fri6-tb4I90He3VH0Tv449GkWtwVmvatC9y1i9YP-IG3K6xG-ayhOmH-5OudNEhcb2q6IfbNp-qStwGBbecDgKi_Nw6CdPoCNvOvaH40vqTrzhlZ-8uoR86w2v_eT1JeQ7f6-CiWviv2Tn7Pz45W8AAAD__4bONQ0= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlU1r20AQhu_9Fcuct0SrD8fZky4JOAS7GPXU6qBIQ1Ara5b9gIbg_15klUYyyUpgH3TU7r5-Zp5Z1m_QUoXb4oAG5A8QwCEEDhFwiIFDAjkHpalEY0h3R_rApvoDMuBQt8rZbjnnUJJGkG9ga9sgSMiK5wb3WFSobwLgUKEt6uaEUbo-FPo1PbjG1qpBAxx2zkqWRpAfOZCz779rbPGCIMWRz2c_Ut3-QydjdPaqULKn-4eM7b5n93v2uNtsgcNzOarmiei3U-wX1S2jVrK0M_NQNxa1ZGnCfrogiEoWBVLKzTZb_29A8DT5tIfw0x7eS3ct6Qo1VqO68-MHXW7pK6kbEZyd_Jgdjdhi_uzEtWc3wR7MbrXY2YXz_YXX9jfBHvi7Xay_aL6_6Nr-JtgDf-vF-ovn-4uv7W-CPfB3t1h_E_8fezSKWoOzXtage5uxesH-ITfkdInfNJUnTP-5O-VOCxUa2--K_mPT9ltdgcOw8IbDUVich0M_eQIdedOxPxxfUnfiDa_85NUl5FtveO0nry8h3_lnFUxcE_8lO2fnxy9_AwAA__9w5zYl diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_numtables b/pkg/sql/logictest/testdata/planner_test/distsql_numtables index 295b373a8041..26cdec2d0b13 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_numtables +++ b/pkg/sql/logictest/testdata/planner_test/distsql_numtables @@ -52,13 +52,13 @@ NULL /2000 {1} 1 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT 5, 2+y, * FROM NumToStr WHERE y <= 10 ORDER BY str] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkLFq9DAQhPv_Kcy0JzjL_GlUuXVzCc51wYViLYfB1prVGhIOv3uwVSQXuJAUAu2s5ptBV0QOdPITJbgXWHQGs3BPKbFsUn7QhDe40mCI86Kb3Bn0LAR3hQ46EhzO_nWklnwgOZYwCKR-GHfsLMPk5b2Oy6ScVGDQUgwkrnhwzjWnsymqfDnU1hT7qdCtBrzoZ2RSfyE4u5rf13pmUZKjvW1U_z_cxVd_wbeUZo6JbvD3yOXaGVC4UP7ZxIv09CTc7zF5fNx9uxAoad7aPDQxr7aCX832R3P1zdyt_z4CAAD___V0o_g= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkEFLxDAQhe_-ivKuG9imKEhOvfaySt2b9BCbYSm0SZlMQVn636WJoCusuIdA5k3e9x45wwdHBztRhHmFRqcwc-gpxsCblB807h2mVBj8vMgmdwp9YII5QwYZCQZH-zZSS9YR70soOBI7jAk78zBZ_qj9MkmIwlBoyTtiUzwYY5rD8VEV1ddtV2tVpFOhWxXCIt-hUeyJYPSq_l_sJbAQ7_Vlp_p-dxVf3YJvKc7BR7rAXyOXa6dA7kT5b2NYuKdnDn2KyeNT8iXBUZS81XlofF5tBX-a9Z_m6pe5W-8-AwAA___xQKRo # Query which requires a full table scan. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT 5, 2 + y, * FROM NumToStr WHERE y % 1000 = 0 ORDER BY str] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlE-rozAUxffzKeTCwAzNUBO1fwIDrga66Qyd7h4ufOZSBGskifAepd_9oRH6LG2U9i1cCObPuefwu-GeoJQCt-kRNfAXoECAAYEACIRAIIKEQKVkhlpL1Vyxgo14A-4TyMuqNs12QiCTCoGfwOSmQOCwT18L3GEqUM19ICDQpHnR2lQqP6bqPS7ro5HaKCDwJy8MKu79iKn33aO-73PON9v9T--31_0CgR2WorkV2R3iMfsziynx2o9BciYga3MJpk16QOD0TMaH_y-VQTWP-rnjcHa3PLtb_lJVKoEKxa2iNzJs5S9ZzWmf3T37oGdPx7eGTq41A-G71iwebQ0bz4ZNjs1A-I7N8lE2wXg2weTYDITv2KweZROOZxNOjs1A-I7N-ivG3Y3yO9SVLDWOmmR-MwtRHNDOTi1rleE_JbPWxi7_trp2Q6A29pTaxaa0R03Az2LqFLOemF6Lmdt5wDpwqkO3OHwmd-QUL9zOi2ecl07xyu28esZ57e6VP_BM3I_s2js5f_sIAAD__2K37jY= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlE2Lo0AQhu_7K6RgYZf0ErvVxDQseFrIJTtkchs8OHYRBGNLdwszhPz3wY8hY0haSebgQbA_3nqrnmrqCIUUuEkOqIG_AAUCDAh4QMAHAgHEBEolU9RaqvpKK1iLN-AugawoK1NvxwRSqRD4EUxmcgQOu-Q1xy0mAtXcBQICTZLljU2pskOi3qOiOhipjQIC_7LcoOLOr4g6Px3qui7nfL3Zhb-dv87nPxDYYiHqe0G3RRzW_c0iSpzmYxCfCMjKnJPTJtkjcHoi4wt4lsqgmgf93CN_djM8uxn-HFUqgQrFtaBXctjIP7Kc0z6_W_Zez56Obw-dZHsGCujas7i3PWw8HzZJPgMFdHyW9_LxxvPxJslnoICOT3gvH388H3-SfAYK6PisvmP8XQm_RV3KQuOoyebWsxHFHttZqmWlUnxSMm1s2uX_RtdsCNSmPaXtYl20R3WCX8XUKmY9Mb0UM7vzgLVnVft2sf9I3oFVvLA7Lx5xXlrFod05fMR5Ze-VO_BM7I_s0js-_fgIAAD__-oR8pY= # Query with a restricted span + filter. query T @@ -70,7 +70,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyMjzFrwzAUhPf-CnMQsghqd9 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT str FROM NumToStr WHERE y % 1000 = 0 AND str LIKE '%i%' ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlE2rm0AYhff9FcOBkIROiTOaLgYKFvqBtJiSZldcWOclCMaRmRFagv-9RKG5Xm7u9ZKNO-fj4Zxn4PWM2mhK8xM5qF8Q4JDgCMERgWOLjKOxpiDnjL1cGYBE_4EKOMq6af1lO-MojCWoM3zpK4LCIf9d0Z5yTXYTgEOTz8uqj2lsecrt37huT944b8Hxpaw8WcVWq1iwBRNBECilkvSwZh_Y_8-P6Se2iiX7nnz7zJaLcrFUSv087JP06xocu9YrFkseC2Qdh2n9tZ7z-ZGgRMdvKFybG6vJkh53juVbZN0Tnql5Z5rNdnT7VrocpYvpDyhm-oByuoKcqUI4XSGcqUI0XSGaqcILP5M9ucbUjiZNWXAZU9JHGsbamdYW9MOaoo8Zlrue6zc0OT-cimGR1P1RX_AhLJ6F34_g4DEs70kO74Gje-Dtq-Cse_MvAAD__yjQ8xE= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlE2rm0AYhff9FcOBkIROiTOaUgYKFvqBtJiSZldcWOclCMaRmRFagv-9RBe5Xm7u9ZKNO-fj4Zxn4PWM2mhK8xM5qN8Q4JDgCMERgWOLjKOxpiDnjL1cGYBE_4UKOMq6af1lO-MojCWoM3zpK4LCIf9T0Z5yTXYTgEOTz8uqj2lsecrtv7huT944b8Hxtaw8WcVWq1iwBRNBECilkvTwYc0-suv3p_QzW8WS_Ui-f2HLRblYKqV-HfZJ-m0Njl3rFYsljwWyjsO0_lrQ-fxIUKLjNySu3Y3VZEmPW8fyLbLuCdPUvDPNZju6fStdjtLF9CcUs31COV1CzlYinC4RzlYimi4RzVbihd_KnlxjakeTpi24jCvpIw3j7UxrC_ppTdHHDMtdz_UbmpwfTsWwSOr-qC_4EBbPwu9HcPAYlvckh_fA0T3w9lVw1r35HwAA__8kPfVB # # -- Join tests -- @@ -104,7 +104,7 @@ render · · (x, str) query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT x, str FROM NumToSquare JOIN NumToStr ON x = y WHERE x % 2 = 0] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlV9r2zwUh-_fT2EOvNBSjVj-0zSCgq8GGSwdpXfDF258lhgcy5NkWCn57sPWRmYnk-yJhNzFsR6fc34P6LxDxXNcZTuUwL4CBQIBEAiBQAQEYkgJ1IKvUUou2iMaWOY_gPkEiqpuVPt3SmDNBQJ7B1WoEoHBS_Za4jNmOYqZDwRyVFlRdmVqUewy8ZZUzU5x-b3JBAKBj0WpUDDvJqHe_17AGFuuXm69R8_XP4HAU6OYl1BI9wR4o34VP9R8ffO2mdz2q3XnUwJSZRsERvfk34agpiGUGDOBS9_BX_s-fKepuMhRYN77UtqSv4-cOgAJvdO1hvN_RrHBT7yoUMzu-0yJ39RNQu9uH0Wx2eqfB0UkCQfTHiYJHSY50eOKf-D1jNLhzCdrR73adLz94Jrs08vbn5_HfjDeQHhNBoLLG3g4j4FwvIHomgyElzewOI-BaLyB-JoMRJc3QP3zL6ETLTyjrHklcdSK8dshMN-gzkXyRqzxi-Drrox-fOq47iLPUSr9NtAPy0q_ahscD8cu8NwFXrjAlJppOiGxYBocu8BzF3jhAg8SO6KDIe3_SYfmuEMjTPt5-0M6cpFlhi2yzLBFlhm2yDLDNlmxi6x7l7jNsCVuM2yJ2wxb4jbDtrjnLnE_uMRthi1xm2FL3GbYErcZtsW9cImbTlmWx3folG05lbZd_lP25VTaljk92h7G0NP9fz8DAAD___Wz59Q= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlVFr2zAQx9_3KczBoKUasWSnSQQFPw0yWDpK34Yf3PiWGBzLk2RYKfnuw3ZHZieT7ImEvMWxfr67_w90b1CIFFfJDhXw70CBAAMCARAIgcAUYgKlFGtUSsj6SAss01_AfQJZUVa6_jsmsBYSgb-BznSOwOE5ecnxCZMU5cQHAinqJMubMqXMdol8jYpqp4X6WSUSgcDnLNcouXcTUe-jxzjny9Xz_NZ78Pz330DgsdLciyjEewKi0u_lD1VfXr1torbdes35mIDSyQaB0z35vzGoaQwth83g0jn7Z-eH71SFkClKTDtfimvyz5FTByCid22tfgJfUW7wi8gKlJP7LpPjD30T0bvbB5lttu3PgyQSBb1pD5MEDpOc6HElPolyQml_5pO1w05tOtw_uy7_9PL-Z-fxz4Y7CK7LAbu8g_l5HATDHYTX5SC4vIPFeRyEwx1Mr8tBeHkH1D__MjrRwhOqUhQKB60avx4C0w22uShRyTV-k2LdlGkfHxuuuc5TVLp9y9qHZdG-qhscDk9d4JkLvHCBKTXTdERibBw8dYFnLvDCBe4ldkSzPu3_TQfmuAMjTLt5-306dJFlhi2yzLBFlhm2yDLDNllTF1n3LnGbYUvcZtgStxm2xG2GbXHPXOKeu8Rthi1xm2FL3GbYErcZtsW9cImbjlmWx3fomG05lrZd_mP25Vjaljk92h7G0OP9h98BAAD__yTk6nQ= # # -- Aggregation tests -- diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_srfs b/pkg/sql/logictest/testdata/planner_test/distsql_srfs index 1c5de94ac147..d6b7e7629b7d 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_srfs +++ b/pkg/sql/logictest/testdata/planner_test/distsql_srfs @@ -23,28 +23,28 @@ INSERT INTO data SELECT generate_series(0, 9) 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#eJysk0Frq0AQx-_vU8j_9B5ZiKsmD_bkNZc0JLkVKVt3SC3GldkNtAS_e4keUtsYLPa4M_7m94cZz6isobU-koN6hIRABIEYAgkEFsgEarY5OWf58kkHrMwbVChQVPXJX8qZQG6ZoM7whS8JCnv9XNKWtCGehxAw5HVRtpqai6Pm99Ror5E1Avbkr4Oc1weCko0YkF0dlg0xmf70VM6QNTcSbdi-Uu535OeLPnKgilh7enLEBbm_qRRBKoNZIJVSq_X-32DKaDDljQA7y554vvyWV6TRDAJH7fOXoKRKBXLQGPeMcvwS5OQlRONl0WRZPF4WT5Yl42XJr97yDdmWXG0rRz3P0OTwcuhkDtT9GM6eOKcN27zVdM-HlmsLhpzvurJ7rKq21Qb8DMu7cNSDw69wdBf-fx-Op8ROpsCLKfDyR3DW_PkIAAD__-HKznM= +https://cockroachdb.github.io/distsqlplan/decode.html#eJysk0Frq0AQx-_vU8j_9B5ZiKsm77Enr7nkhSS3ImXrDqnFuDK7gZbgdy_RQ2obg8Ued8bf_P4w4xmVNbTWR3JQD5AQiCAQQyCBwAKZQM02J-csXz7pgJV5hQoFiqo--Us5E8gtE9QZvvAlQWGvn0rakjbE8xAChrwuylZTc3HU_JYa7TWyRsCe_HWQ8_pAULIRA7Krw7IhJtOfnsoZsuZGog3bF8r9jvx80UcOVBFrT4-OuCD3O5UiSGUwC6RSarXe__szGDMajHkjwc6yJ54vvwQWaTSDwFH7_DkoqVKBHDTGPaMcvwU5eQvReFk0WRaPl8WTZcl4WfKjx3xDtiVX28pRzzM0ObxcOpkDdX-GsyfOacM2bzXd83_LtQVDzndd2T1WVdtqA36E5V046sHhZzi6C_-9D8dTYidT4MUUePktOGt-vQcAAP__MjnOqw== # 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#eJyskjFrwzAQhff-ivCmlghi2U4HTV6zpCHNVkxRrUdwSSwjKdAS_N9L7CF1iYuLO-pO332P486orOFaH-mhXiAhEEMggUAKgSVygdrZgt5bd_nSASvzARUJlFV9CpdyLlBYR6gzQhkOhMJOvx24pTZ0iwgChkGXh1ZTu_Ko3WdmdNDIGwF7CtdBPug9oWQjBmRXh3WGjqY_PZNz5M2NRBtn31mEZ4bFso_sWdHpwFdPV9LfZ1LMMjmbz6RSarXePQymjHsp5fiVyMkricfL4smyZLwsmSxLx8vSf72sG7ItfW0rz55naHJ0OTuaPbsz9fbkCm6cLVpN93xqubZg6EPXld1jVbWtNuB3WP4KP_bg6CccTzEnU-B0Crz8E5w3d18BAAD__6OTljs= +https://cockroachdb.github.io/distsqlplan/decode.html#eJysksFq6zAQRffvK8JdvRJBLNspRStvs0lDml0xRbUuwSWxjKRAS_C_l9iL1CUuLu5SMzpzLsOcUVnDtT7SQz1DQiCGQAKBFAJL5AK1swW9t-7ypQNW5h0qEiir-hQu5VygsI5QZ4QyHAiFnX49cEtt6BYRBAyDLg-tpnblUbuPzOigkTcC9hSug3zQe0LJRgzIrg7rDB1Nf3om58ibG4k2zr6xCE8Mi2Uf2bOi04Evnq6k_59JMcvkbD6TSqnVevdwNxgz7sWU43ciJ-8kHi-LJ8uS8bJksiwdL0v_9LRuyLb0ta08e56hydHl7mj27O7U25MruHG2aDXd87Hl2oKhD11Xdo9V1bbagF9h-SN834Oj73A8xZxMgdMp8PJXcN78-wwAAP__zauWcw== # 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#eJysk8Fqs0AUhff_U4S7-ksG4qhJYVZus0lDkl2RMnUOwZI4cmeEluC7l-giNWiw2OXM-J3vcLleqLAGG32GI_VKkgSFJCgiQTEJWlIqqGSbwTnL109aYG0-SQWC8qKs_PU6FZRZBqkL-dyfQIoO-v2EHbQBLwISZOB1fmo0JednzV-J0V5TWguylb8FOa-PICVrMSC7OarCsgHDdPLTuqfOlu0HMr-HXyy7bY4owNrjzYFzuP-JFLNEzuYzqZRabw5PgxXDwYo9BfaWPXix6sqTcD4YH3Xi5fhxy8njDsfLwsmyaLwsmiyLx8viP93aHtkOrrSFw9329icH162GOaL9BZytOMOWbdZo2uNLwzUXBs63r7I9rIvmqSn4E5YP4bADB_dw-BB-fgxHU2rHU-DlFHj1Kzit_30HAAD__6EbyUc= +https://cockroachdb.github.io/distsqlplan/decode.html#eJysk0Frq0AUhffvV4S7eo8MxFGTV2blNps0JNkVKVPnECyJI3dGaAn-9xJdpAYNFrucGb_zHS7XCxXWYKPPcKReSJKgkARFJCgmQUtKBZVsMzhn-fpJC6zNB6lAUF6Ulb9ep4IyyyB1IZ_7E0jRQb-dsIM24EVAggy8zk-NpuT8rPkzMdprSmtBtvK3IOf1EaRkLQZkN0dVWDZgmE5-WvfU2bJ9R-b38Itlt80RBVh7vDpwDvc3kWKWyNl8JpVS683h6d9gx3CwY0-DvWUPXqy69iScD8ZHnXg5ft5y8rzD8bJwsiwaL4smy-LxsvhX17ZHtoMrbeFwt779ycF1rWGOaP8BZyvOsGWbNZr2-NxwzYWB8-2rbA_ronlqCn6H5UM47MDBPRw-hP8_hqMpteMp8HIKvPoRnNZ_vgIAAP__7VbJfw== # 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#eJysksFKw0AQhu8-RfhPFRaaTVIPC0IFEXqppfamQdbsUCJpNsxuQCl5d2ki1JRWIvGW3ck33-zw71FaQ0u9Iwf1DAmBCAIxBBIIzJAKVGwzcs7y4ZcOWJgPqFAgL6vaH65TgcwyQe3hc18QFDb6raA1aUM8DSFgyOu8aDUV5zvNn3OjvUbaCNjaHxs5r7cEJRtxQXZ01KVlQ0ym1z9tzoyzYvtOmX8iP531p9lSSaw9vTrinNxEKqUWy40I4u7jGgIPeeGJVTCZy-ClDsM4C5LvanC3vA8m8yi4PQKX3hT13iSHL1COXmA0XBaNlsXDZfFoWTJclvxrDs_I1uQqWzo6yeP5zuEhp2S21IXa2ZozWrHNWk13fGy59sKQ811VdodF2ZbaAX_C8lf4pgeHp3A0xhyPgZMx8OxPcNpcfQUAAP__VAWiog== +https://cockroachdb.github.io/distsqlplan/decode.html#eJysksFq4zAQhu_7FOY_ZUEQy3aWRbCQhVLIJQ1pbq0pqjUEF8cyIxlagt-9xG5JHJLi4t4sjb_5RsO_R2kNLfWOHNQDJAQiCMQQSCAwQypQsc3IOcuHXzpgYV6hQoG8rGp_uE4FMssEtYfPfUFQ2OjngtakDfE0hIAhr_Oi1VSc7zS_zY32GmkjYGt_bOS83hKUbMQV2dFRl5YNMZle_7S5MM6K7Qtl_p78dNafZkslsfb05IhzchOplFosN39FEH98_YbAbV54YhVM5jJ4rMMwzoLksxz8X94Ek3kU_DtBrr0r6r1LDl-iHL3EaLgsGi2Lh8vi0bJkuCz50SxekK3JVbZ0dJbJy53DQ1bJbKkLtrM1Z7Rim7Wa7njXcu2FIee7quwOi7IttQOewvJL-E8PDs_haIw5HgMnY-DZt-C0-fUeAAD__yzvo4I= # 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#eJyskcFq8zAQhO__U4Q9_SWCWHJOOvmaSxqS3IopqjWkLo5lVhtoCX73EpuSuo1NC71Ju_vtzDJnqoPH2h0RyT6QJkWGckUNhwIxBr6U-6GVfyWbKCrr5iSXcq6oCAyyZ5JSKpClvXuqsIXz4EVCijzElVW3uuHy6Pgt804c5a2icJLroijuALK6VSNiV43AHgw_3J7pOeXtDUcbDi8oZAdZmCFyQA12gscILhH_a2vtar1XM9M_7kiNzyw_ZsYuMaOX3DC5CyzgRfrtJpWZucrSOSk6OimeZxVqO9OjqulAVf88LP2nYd0Q2yI2oY4Y6IxtTi5Jwh_QJx_DiQtsOBSdTP-977iu4BGl7-r-s6q7VmfwM6wnYTOAk6-wmYSX03D6K9t5--89AAD___UXLZk= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyskUFr4zAQhe_7K8KcdokglpzDopOvuWRDkttiimo9UhfHMqMJtAT_9xK7NHUbmxZ6k2bmm_eGd6Y6eKzdEZHsf9KkyFCuqOFQIMbAl3I_tPJPZBNFZd2c5FLOFRWBQfZMUkoFsrR39xW2cB68SEiRh7iy6lY3XB4dP2feiaO8VRROcl0UxR1AVrdqROyqEdiD4YfbMz2nvL3haMPhEYXsIAszRA6owU5wF8El4m9trV2t93_VzLy-_pCamFq-TY1dY0avuWF0F1jAi_TTXSozc5Wlc1J0dFI8zCrUdqZHVdOBqv56YPpHA7shtkVsQh0x0BnbnFzShD-gTz-GExfYcCg6mf77r-O6gkeUvqv7z6ruWp3B97CehM0ATj7CZhJeTsPpt2zn7a-XAAAA__-clS55 diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_subquery b/pkg/sql/logictest/testdata/planner_test/distsql_subquery index 69e823db1319..cf202c8425f1 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_subquery +++ b/pkg/sql/logictest/testdata/planner_test/distsql_subquery @@ -3,7 +3,7 @@ query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT 1 WHERE EXISTS (SELECT 1)] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyMj0FLxDAUhO_-ijCnFQKm13dUKhRklW0RQXIoyWMt1qTkJSAs_e_S5iAehD3OfMnMvAtC9Hwcv1hA72hgNZYUHYvEtFn1Qee_QUZjCkvJm201XEwMuiBPeWYQXse5sNwZaHjO4zTviUbdq4NR7qOET7mFxuM0Z06k2reuH3p16Nun9mFQzcZOHPzGGiLqjgPsqhFL_u2UPJ4ZZFZ9_a4TyxKD8J9d_ydbDfZnrrdLLMnxS4pur6nyef-3G54lV9pU0YWKVrve_AQAAP__IpRvnA== +https://cockroachdb.github.io/distsqlplan/decode.html#eJyMj0FLxDAUhO_-ijCnFQKmN3lHpUJBVtkWESSHkjzWYk1KXgLC0v8ubQ7iQfA48yUz8y4I0fNx_GQBvaGB1VhSdCwS02bVB53_AhmNKSwlb7bVcDEx6II85ZlBeBnnwnJjoOE5j9O8Jxp1pw5GufcSPuQaGg_TnDmRal-7fujVoW8f2_tBNRs7cfAba4ioOw63sKtGLPmnVPJ4ZpBZ9f-HnViWGIR_Dfs72WqwP3M9XmJJjp9TdHtNlU_7v93wLLnSpoouVLTa9eo7AAD__3yZb9Q= statement ok CREATE TABLE abc (a INT PRIMARY KEY, b INT, c INT) @@ -26,7 +26,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyMj0FLAzEUhO_-imVOLQRMr7 query T SELECT url FROM [EXPLAIN ANALYZE (DISTSQL) SELECT * FROM abc WHERE a = (SELECT max(a) FROM abc WHERE EXISTS(SELECT * FROM abc WHERE c=a+3))] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkEFLxDAQhe_-ivBOCgHba0DYRRAKS5XdepIess2wBNKmzKSoLPnv0uYgHoQ9vvdm3nzMFVN01NqRBOYDNXqNmeNAIpFXqww07gum0vDTvKTV7jWGyARzRfIpEAw6ew50JOuIHytoOErWh612Zj9a_t7Z8wCNFx8SsVG7Wj2p5_2pu2_fDwe1P6mm7R6gwfFTFJN1Rq1FkmwIKvmRjKoEfdaIS_oFkWQvBFNnfTvskWSOk9Afzv-aq9xrkLtQeYjEhQd64zhsZ4p83fY2w5GkktZFNFOJcp_vfgIAAP__A6h33g== +https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkEFLxDAQhe_-ivBOCgHbmwSEXQShsFTZrSfpIdsMSyBtykyKypL_Lm0O4kHw-N6befMxV0zRUWtHEph31Og1Zo4DiURerTLQuE-YSsNP85JWu9cYIhPMFcmnQDDo7DnQkawjvq-g4ShZH7bamf1o-WtnzwM0nn1IxEbtavWonvan7rZ9OxzU_qSatnu4gwbHD1FM1hm1NkmyIajkRzKqEvRZIy7ph0SSvRBMnfX_aY8kc5yEfoH-1VzlXoPchcpHJC480CvHYTtT5Mu2txmOJJW0LqKZSpT7fPMdAAD__2MgeBY= # Ensure subquery outside of the explain doesn't mess anything up @@ -34,4 +34,4 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkEFLxDAQhe_-ivBOCgHba0 query TB SELECT url, exists (SELECT 1) FROM [EXPLAIN ANALYZE (DISTSQL) SELECT * FROM abc WHERE a = (SELECT max(a) FROM abc)] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkEFLxDAQhe_-ivBOCgHba0DYRRAKS5XdepIess2wBNKmzKSoLPnv0uYgHoQ9vvdm3nzMFVN01NqRBOYDNXqNmeNAIpFXqww07gum0vDTvKTV7jWGyARzRfIpEAw6ew50JOuIHytoOErWh612Zj9a_t7Z8wCNFx8SsVG7Wj2p5_2pu2_fDwe1P6mm7R6gwfFTFJN1Rq1FkmwIKvmRjKoEfdaIS_oFkWQvBFNnfTvskWSOk9Afzv-aq9xrkLtQeYjEhQd64zhsZ4p83fY2w5GkktZFNFOJcp_vfgIAAP__A6h33g== true +https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkEFLxDAQhe_-ivBOCgHbmwSEXQShsFTZrSfpIdsMSyBtykyKypL_Lm0O4kHw-N6befMxV0zRUWtHEph31Og1Zo4DiURerTLQuE-YSsNP85JWu9cYIhPMFcmnQDDo7DnQkawjvq-g4ShZH7bamf1o-WtnzwM0nn1IxEbtavWonvan7rZ9OxzU_qSatnu4gwbHD1FM1hm1NkmyIajkRzKqEvRZIy7ph0SSvRBMnfX_aY8kc5yEfoH-1VzlXoPchcpHJC480CvHYTtT5Mu2txmOJJW0LqKZSpT7fPMdAAD__2MgeBY= true diff --git a/pkg/sql/logictest/testdata/planner_test/distsql_union b/pkg/sql/logictest/testdata/planner_test/distsql_union index f34112e9f5c5..bea739354c45 100644 --- a/pkg/sql/logictest/testdata/planner_test/distsql_union +++ b/pkg/sql/logictest/testdata/planner_test/distsql_union @@ -49,13 +49,13 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslU1r20AQhu_9FWWuXbBnV7 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT x FROM xyz WHERE x < 3 UNION SELECT x FROM xyz WHERE x >= 3 ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lkFr4zAQhe_7K8JcVxCPbCeNYaGHZSGXdun2tuuD1x6KIbWCJEO7Jf99cQxpHZqRZEGOlvLmzZf3DnqDTjV0Vz2TgeI3IAiQICAFARkIyKEUsNeqJmOUHn4yCrbNCxSJgLbb93Y4LgXUShMUb2BbuyMo4LH6u6MHqhrSywQENGSrdne02ev2udKvty-v_0DAj3ZnSReLW1z86ZMkrRdpURTbu0cQcN_b4QLKgwDV23c3Y6snggIPwn-j762xbVfbZT5dh5kvQ-Z_JMYgZPoWwJzOYkZ_6OyiwfvcvlO6IU3NZGp54FaQifcKeQjjL6Ut6aXE8_FfL85fTeZjQK7XabJjo9NfuprZ5BDiIOSIJvsyoz_0tMnSH1peJ2bHRifk9cyYA4gxCDkiZl9m9Ieexpz6Q6fXidmx0Qn5ZmbMAcQYhBwRsy8z-kNPY878obPrxOzY6IS8mRlzADEGIUfE7MuM_tCXnx-fGDyQ2avO0Nkz5PPJyfA8oeaJxreMUb2u6adW9dFm_Lw_6o4HDRk73uL4se3Gq2HBj2JkxdlEjOdiyYpT3jmNcc5Ycc4756xYSl69YtVrXryOgb5hxRveeRPjjI6OuUoW1TLka4aOnmFU0ZBvGjqqhnzXXOZ819BRNoxqG_J1Q0ffMKpwki-cdBROhhWuPHz5HwAA__9soUkq +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lk9r4zAQxe_7KcpcVxCPbOePYaGHZSGXdun2tuuD1x6KIbWCJEO7Jd99cQxpHZqRZEGOlvLmzS_vHfQGnWrornomA8VvQBAgQUAKAjIQkEMpYK9VTcYoPfxkFGybFygSAW237-1wXAqolSYo3sC2dkdQwGP1d0cPVDWkFwkIaMhW7e5os9ftc6Vfb19e_4GAH-3Oki5ubvHmT58kaX2TFkWxvXtcg4D73g43UB4EqN6-2xlbPREUeBD-K31vjW272i7y6T7MfBky_yMyBjHTtxDodBY0-lNnFw3e5_ad0g1paiZTywO3gky8V8hDGH8pbUkvJJ6P_3px_nIyHwOCvVKXHSud_tPlzC6HIAcxx3TZFxr9qaddlv7U8kpBO1Y6Ma9mBh2AjEHMMUH7QqM_9TTo1J86vVLQjpVOzOuZQQcgYxBzTNC-0OhPPQ0686fOrhS0Y6UT82Zm0AHIGMQcE7QvNPpTX36GfGLwQGavOkNnz5HPJyfDM4WaJxrfNEb1uqafWtVHm_Hz_qg7HjRk7HiL48e2G6-GBT-KkRVnEzGeiyUrTnnnNMY5Y8U575yzYil59ZJVr3jxKgZ6zYo3vPMmxhkdHXOVLKplyNcMHT3DqKIh3zR0VA35rrnM-a6ho2wY1Tbk64aOvmFU4SRfOOkonAwrXHn48j8AAP__pmhLWg== # UNION with partial overlap. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT x FROM xyz WHERE x <= 4 UNION SELECT x FROM xyz WHERE x > 1 ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lk9r20AQxe_9FGauXbBmJdmxoJBDKfiSlDS3VgdVGoLA0ZrdFSQN_u5FFjiRiWf_CHzUrt-8-fm9w75Bpxq6q57JQPEbEARIEJCCgAwE5FAK2GtVkzFKDz8ZBdvmBYpEQNvtezsclwJqpQmKN7Ct3REU8Fj93dEDVQ3pZQICGrJVuzva7HX7XOnX25fXfyDgR7uzpIvFLS7-9EmS1t8WWVEU27tHEHDf2-EGyoMA1dt3O2OrJ4ICD8J_pe-tsW1X22U-3YeZL0Pmf0TGIGZaoDdyGoWM_szZRYP3uX2ndEOamsnU8sCtIBPvFfIQxl9KW9JLiefjv16cv5rMx4BYr9Rkx0qn_3QV2eQQ5CDm-Cb7IqM_87TJ0p9ZXilmx0on5nVkzAHIGMQcH7MvMvozT2NO_ZnTK8XsWOnEfBMZcwAyBjHHx-yLjP7M05gzf-bsSjE7VjoxbyJjDkDGIOb4mH2R0Z_58vPjE4MHMnvVGTp7hnw-ORmeJ9Q80fiWMarXNf3Uqj7ajJ_3R93xoCFjx1scP7bdeDUs-FGMrDibiPFcLFlxyjunc5wzVpzzzjkrlpJXr1j1mhev50DfsOIN77yZ44yOjrlKNqtlyNcMHT3DWUVDvmnoqBryXXOZ811DR9lwVtuQrxs6-oazCif5wklH4WRY4crDl_8BAAD__93PSSU= +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lk9r4zAQxe_7KcJcV1CPbOePYaGHZSGXdun2tuuD1x6KIbWCJEO7Jd99cQxpHZqRZEGOlvLmzS_vHfQGnWrornomA8VvQBAgQUAKAjIQkEMpYK9VTcYoPfxkFGybFygSAW237-1wXAqolSYo3sC2dkdQwGP1d0cPVDWkbxIQ0JCt2t3RZq_b50q_3r68_gMBP9qdJV0sbnHxp0-StP62yIqi2N49rkHAfW-HKygPAlRv3_2MrZ4ICjwI_52-t8a2XW1v8ulCzHwZMv8jMwZB0wL9mdNZzOgPnV00eJ_bd0o3pKmZTC0P3Aoy8V4hD2H8pbQlfSPxfPzXi_OXk_kYkOu1uuzY6fSnLmd2OYQ5CDqiy77M6A897bL0h5bXCtqx0wl6NTPoAGYMgo4I2pcZ_aGnQaf-0Om1gnbsdIJezww6gBmDoCOC9mVGf-hp0Jk_dHatoB07naA3M4MOYMYg6IigfZnRH_ryM-QTgwcye9UZOnuOfD45GZ4p1DzR-KYxqtc1_dSqPtqMn_dH3fGgIWPHWxw_tt14NSz4UYysOJuI8VwsWXHKO6cxzhkrznnnnBVLyauXrHrFi1cx0GtWvOGdNzHO6OiYq2RRLUO-ZujoGUYVDfmmoaNqyHfNZc53DR1lw6i2IV83dPQNowon-cJJR-FkWOHKw5f_AQAA__8XqktV # UNION ALL with swapped column orders. query T @@ -114,23 +114,23 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJzE2M1u4zYUBeB9n8LgqsWosO query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) INTERSECT ALL (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlk1r20AQhu_9FWZOLd1i7UryhyCQUlJqCE5JfGt9UKxtbHAssZIhbsh_L7ZjUkn2vForCN2iSM_uaOd5PXqmVRzpcfioUwp-kSRBigS5JMgjQT5NBSUmnuk0jc32kT0wip4ocAQtVsk62_57KmgWG03BM2WLbKkpoEl4v9S3Ooy06TokKNJZuFjutknM4jE0m8unzV8S9H2xzLQJOpey83vtOO6so4IgGI0nJOhmnW1v0PRFULzOXnd72-R-05mH6Ty__O75qaA0Cx80BfJFnFe1b1O1vnjnstXJst_WWa9iE2mjo9xK0y2JHjny7j_CdH6ns5ukKwsNm2wSHXRG48nV7d3Vt0nn6_U1CVrqP9nHS_npwiwe5ru_Tr7622u5Nt24i02mTVf6xZP6fHJ9r8KxHTuR10WPFDGOv8RJVznFMz66vZ_bXlaXTbYnIhZV91oUEdlsRGRDEQHdOESkd25EVPVuq_Y4alF1v0WOqmYdVQ05CrpxcLR_rqNu9W677XHUoupBixx1m3XUbchR0I2Do4NzHfWqd9trj6MWVQ9b5KjXrKNeQ46CbhwcHb7H5_CR9W91msSrVFf60nW2Z6ajB73vQRqvzUz_NPFst83-8mbH7b5hIp1m-7tqfzFa7W9tC6wO9-vAUtai_Vr0kKelxZkpO7hfBy6cmS3t16KHPK2KtPM_7eZgpwi7LOzx3fJYWEl-a79OPngY5IOHUT4ADfIBaJCPXp188DDIBw-jfAAa5APQIB991tIBL-mgTj6GdQznYWA4DyPDAQ0MBzSaADZjs_xLajM3bWk4BKwmpzUONJelKZJTVSpedMmPEWC6LM0RG9UBDVwHNJId4cB2hCPdSzPUSneeRrrzNNQd4Eh3gCPdS4M0r3sP6F6aKVa6l2aKle48jXTnaag7wJHuAEe6l-aple48jXTnaag7wJHuAEe6l6Zq_lvb4XVXpdnC6j59-fAvAAD__93yhjY= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlk1r20AQhu_9FWZOLd1i7UryhyCQUlJqCE5JfGt9UKxtbHAssZIhbsh_L7ZjUkn2vForCN2iSM_uaOd5PXqmVRzpcfioUwp-kSRBigS5JMgjQT5NBSUmnuk0jc32kT0wip4ocAQtVsk62_57KmgWG03BM2WLbKkpoEl4v9S3Ooy06TokKNJZuFjutknM4jE0m8unzV8S9H2xzLQJOpey83vtOO6so4IgGI0nAxJ0s862d2j6IiheZ6_bve1yv-nMw3SeX3_3_FRQmoUPmgL5Is4r27cpW1-8d93qZN1v66xXsYm00VFupemWRI8cefkfYTq_09lN0pWFlk02iQ46o_Hk6vbu6tuk8_X6mgQt9Z_s46X8dGEWD_PdXydf_e21XJt23MUm06Yr_eJJfT65vlfh2I6dyOuiR4oYx1_ipKuc4hkf3d7PbS-r2yZbFBKLsnttColsNiSyoZCAdhxC0js3JKp6u1WLLLUou98mS1WzlqqGLAXtOFjaP9dSt3q73RZZalH2oE2Wus1a6jZkKWjHwdLBuZZ61dvttchSi7KHbbLUa9ZSryFLQTsOlg7f47P4yPq3Ok3iVaorffE62zPT0YPe9yCN12amf5p4tttmf3mz43ZfMpFOs_1dtb8Yrfa3tgVWh_t1YClr0X4tesjT0uLMlB3crwMXzsyW9mvRQ55WRdr5n3ZzsFOEXRb2-G55LKwkv7VfJx88DPLBwygfgAb5ADTIR69OPngY5IOHUT4ADfIBaJCPPmvpgJd0UCcfwzqG8zAwnIeR4YAGhgMaTQCbsVn-JbWZm7Y0HAJWk9MaB5rL0hTJqSoVL7rkxwgwXZbmiI3qgAauAxrJjnBgO8KR7qUZaqU7TyPdeRrqDnCkO8CR7qVBmte9B3QvzRQr3UszxUp3nka68zTUHeBId4Aj3Uvz1Ep3nka68zTUHeBId4Aj3UtTNf-t7fC6q9JsYXWfvnz4FwAA__8Mxohm query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) INTERSECT (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v4kYYhe_7K9BctaorPB98WYqUqk1VpIisEu52uXDwbLBEMLKNFDbKf18BCwQPfo-HMb5LMGfm-Mx7Htm8s0US6VH4qjMWfGWceUwwj0nmMcU81mETjy3TZKqzLEk3X9kJhtEbC3yPxYvlKt98PPHYNEk1C95ZHudzzQI2Dp_n-lGHkU7bPvNYpPMwnm-3Wabxa5iub9_WP5jH_ovnuU6D1i1vfVv5vpy2RBAEw9GYeexhlW8usMmHx5JVftwty8MXzQL-4VV39G-c5fFimrc7p3aM9Y-S53VrFmazM98_ehA2Hj6nwq1i0TcWuciLcuH1BqNKTRzXWS2SNNKpjk5W2q5SalP4wObRQudaFlBSRwtdBwveRS7_D7PZk84flm1ZSGq8XuqgNRyN7x6f7v4Zt_6-v2cem-vv-e-3_I-bNH6Zbf-qMGE9mwl7StJcp21ppPZn6fr9CrGdS-TXomdMjJK_kmVb-cWMz24_ONmeW5S6GdQBR4dB7V4RdTapWMXigLqqufB6g1GlJhw5wy9EXY0WUFJlqLOz4Iw63hDqwITtUWekVhV1onqrRDOsAY4Ok9K7ImssUuFWsTiwpmouvN5gVKkJx6KLC1lTowWUVBlr7Cw4s0Y0xBowYXvWGKlVZY2s3irZDGuAo8Ok9K_IGotUuFUsDqypmguvNxhVasKx6PJC1tRoASVVxho7C86skQ2xBkzYnjVGalVZo6q3SjXDGuDoMCmDK7LGIhVuFYsDa6rmwusNRpWacCy6upA1NVpASZWxxs6CM2tUQ6wBE7ZnjZHaJT8XnVn_UWfLZJHpSr8E-ZvMdPSid2eQJat0qr-kyXS7ze7fh61u-0Gks3x3le_-GS52lzYGP4t5Ucw_i9WJmNuJuXRRC-6kHrioZY9WCzJxSScuya079M60mIPzotVCuKil76Tu02pFJt6lxR0LsSiKu6S4R591jxSDe-6TYgWKPaCp4AMsGFCx4gKthmCg5ZAMQI7QQMsRG7iBltPgBQjeYIsNHoAa8QHIESCAHBECyUFduEGY0-BRdDRiCnIDE5yGDO-CY6cxg26d5gzvg80N0liVnVbDstNyWHYgR2Wn5bDsNGUFoKygUQMmFqhR2YEclR3IUdmRHEy8oCkrwNAJ-gmuIDfKLmjUCAWOnUYNunWaNAKQRhiksSk7UKOyAzkqO5KDsgM5fOqnKSsAZQWNGlR2QFl0bgCTqOwAk6jsQI4mnqasBFMj6Rfkgtwou6RRI8EDnaRRA25d0qSRgDTSII1N2YEalR3IUdmRHJQdyFHZJU1ZCSgradSgt3xAWXRuAJPoPR9gEr3oAzmaeJqyEh07_dZckJtlp1GjwAOdolFTvPXJx28_AwAA__8jwRYm +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v4kYYhe_7K9BctaorPB98WYqUqk1VpIisEu52uXDwbLBEMLKNFDbKf18BCwQPfo-HMb5LMGfm-Mx7Htm8s0US6VH4qjMWfGWceUwwj0nmMcU81mETjy3TZKqzLEk3X9kJhtEbC3yPxYvlKt98PPHYNEk1C95ZHudzzQI2Dp_n-lGHkU7bPvNYpPMwnm-3Wabxa5iub9_WP5jH_ovnuU6D1i1vfVv5vpy2RBAEw9G4zzz2sMo3V9jkw2PJKj9ul-Xhi2YB__CqW_o3zvJ4Mc3bnVM_xvpHyfO6NQuz2ZnvHz0IGw-fY-FWuegbm2DkRcHwepNRpSaO66wWSRrpVEcnK21XKbUpfGDzaKFzLQsoqaOFroMF7yKX_4fZ7EnnD8u2LCQ1Xi910BqOxnePT3f_jFt_398zj8319_z3W_7HTRq_zLZ_VZiwns2EPSVprtO2NFL7s3T9foXYziXya9EzJkbJX8myrfxixme3H5xszy1a3RDsgKXDpHavCDubWKxycYFd1WB4vcmoUhOOpOEXwq5GCyipMtjZWXCGHW8IdmDC9rAzUqsKO1G9VqIh2gBLh1HpXZE2FrFwq1xcaFM1GF5vMqrUhGPVxYW0qdECSqqMNnYWnGkjGqINmLA9bYzUqtJGVq-VbIg2wNJhVPpXpI1FLNwqFxfaVA2G15uMKjXhWHV5IW1qtICSKqONnQVn2siGaAMmbE8bI7WqtFHVa6Uaog2wdBiVwRVpYxELt8rFhTZVg-H1JqNKTThWXV1ImxotoKTKaGNnwZk2qiHagAnb08ZI7ZKfjc6s_6izZbLIdKVfhPxNZjp60bszyJJVOtVf0mS63Wb378NWt_0g0lm-u8p3_wwXu0sbg5_FvCjmn8XqRMztxFy6qAV3Ug9c1LJHqwWZuKQTl-TWHXpnWszBedFqIVzU0ndS92m1IhPv0uKOhVgUxV1S3KPPukeKwT33SbECxR7QVPABFgyoWHGBVkMw0HJIBiBHaKDliA3cQMtp8AIEb7DFBg9AjfgA5AgQQI4IgeSgLtwgzGnwKDoaMQW5gQlOQ4Z3wbHTmEG3TnOG98HmBmmsyk6rYdlpOSw7kKOy03JYdpqyAlBW0KgBEwvUqOxAjsoO5KjsSA4mXtCUFWDoBP0EV5AbZRc0aoQCx06jBt06TRoBSCMM0tiUHahR2YEclR3JQdmBHD7105QVgLKCRg0qO6AsOjeASVR2gElUdiBHE09TVoKpkfQLckFulF3SqJHggU7SqAG3LmnSSEAaaZDGpuxAjcoO5KjsSA7KDuSo7JKmrASUlTRq0Fs-oCw6N4BJ9J4PMIle9IEcTTxNWYmOnX5rLsjNstOoUeCBTtGoKd765OO3nwEAAP__u3YYVg== # INTERSECT ALL and INTERSECT with some overlap. query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x < 3) INTERSECT ALL (SELECT y FROM xyz WHERE x >= 1) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9v2jwUxu_fTxGdq3eaJ2In4U-kSkxTpyFVdGq523KREq8gURI5QSqr-O4TpIwloX5iUkW5KyU_-8Tn93D8Qus4ktPwSabk_yBOjAQxcoiRS4w8ChglKp7LNI3V_pEcmETP5NuMlutkk-3_HTCax0qS_0LZMltJ8mkWPqzknQwjqXo2MYpkFi5Xh20StXwK1Xb8vP1NjL4uV5lUvjXm1s-NbTtzy_F9fzKdEaPbTeZbY0HBjlG8yV53O23ysLUWYbooLj_mFOwCRmkWPkry-Y5dVrVnUrW8svi7li3eLPu0zmYdq0gqGRVWCvYkeuTMu38L08W9zG6THi81bLZNpG9NprPru_vrLzPr880NMVrJX9n_Y_7hSi0fF4e__r46L7366bUck27cxyqTqse98kl9fHN9t8axnTuR10XPFDGNP8VJT9jlMz67vVfYnteXjXcnIgZV9zsUEd5uRHhLEQHdOEakf2lERP1ui-44alD1oEOOinYdFS05CrpxdHRwqaNO_W473XHUoOphhxx12nXUaclR0I2jo8NLHXXrd9vtjqMGVY865KjbrqNuS46CbhwdHb3HdfjM-ncyTeJ1KmvddO39mcnoUeY9SOONmsvvKp4ftsk_3h64wx0mkmmWfyvyD5N1_tW-wPrwoAnMeSPaa0SP9DQ3ODNhBg-awKUzM6W9RvRIT4sybf9LOwXYLsOOFnb13XK1sOD6rb0m-dDDIB96GOUD0CAfgAb56DfJhx4G-dDDKB-ABvkANMjHQGvpUC_psEk-Rk0M18PAcD2MDAc0MBzQaAKYjM3qL6nJ3DSl4RAwmpzGONCcV6ZIQVUu9KJz_RgBpvPKHDFRHdDAdUAj2REObEc40r0yQ41019NIdz0NdQc40h3gSPfKIC3q3ge6V2aKke6VmWKku55GuutpqDvAke4AR7pX5qmR7noa6a6noe4AR7oDHOlemarFu7at111UZotW92D3358AAAD__8GFhkA= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9v2jwUxu_fTxGdq3eaJ2In4U-kSkxTpyFVdGq523KREq8gURI5QSqr-O4TpIwloX5iUkW5KyU_-8Tn93D8Qus4ktPwSabk_yBOjAQxcoiRS4w8ChglKp7LNI3V_pEcmETP5NuMlutkk-3_HTCax0qS_0LZMltJ8mkWPqzknQwjqXo2MYpkFi5Xh20StXwK1Xb8vP1NjL4uV5lUvjXm1s-NbTtzy_F9fzKdDYnR7SbzrbGgYMco3mSv2512edhaizBdFNcfcwp2AaM0Cx8l-XzHLivbMylbXln8fesWb9Z9WmezjlUklYwKKwV7Ej1y5uW_heniXma3SY-XWjbbJtK3JtPZ9d399ZeZ9fnmhhit5K_s_zH_cKWWj4vDX39fnZde_fRajkk77mOVSdXjXvmkPr65vlvj2M6dyOuiZ4qYxp_ipCfs8hmf3d4rbM_r28Y7FBKDsvtdCglvNyS8pZCAdhxD0r80JKJ-u0WHLDUoe9AlS0W7loqWLAXtOFo6uNRSp367nQ5ZalD2sEuWOu1a6rRkKWjH0dLhpZa69dvtdshSg7JHXbLUbddStyVLQTuOlo7e41p8Zv07mSbxOpW1brz2_sxk9CjzHqTxRs3ldxXPD9vkH28P3OEmE8k0y78V-YfJOv9qX2B9eNAE5rwR7TWiR3qaG5yZMIMHTeDSmZnSXiN6pKdFmbb_pZ0CbJdhRwu7-m65Wlhw_dZek3zoYZAPPYzyAWiQD0CDfPSb5EMPg3zoYZQPQIN8ABrkY6C1dKiXdNgkH6MmhuthYLgeRoYDGhgOaDQBTMZm9ZfUZG6a0nAIGE1OYxxozitTpKAqF3rRuX6MANN5ZY6YqA5o4DqgkewIB7YjHOlemaFGuutppLuehroDHOkOcKR7ZZAWde8D3SszxUj3ykwx0l1PI931NNQd4Eh3gCPdK_PUSHc9jXTX01B3gCPdAY50r0zV4l3b1usuKrNFq3uw--9PAAAA___wfIhw query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x < 3) INTERSECT (SELECT y FROM xyz WHERE x >= 1) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mEtv6kYcxff9FNasWtUVngcvS1eiam9VpCtSJexaFg6eBksEI9tIoVG-ewVcIHjw_3gY4x2vM3N85n9-snlnqzTWk-hV5yz8m3HmM8F8JpnPFPNZl818ts7Suc7zNNv95CAYx28sDHyWrNabYvfxzGfzNNMsfGdFUiw1C9k0el7qRx3FOusEzGexLqJkud9mnSWvUbYdvW3_Yz77I1kWOgu9Eff-2QSBnHsyDMPxZMp89rApQm8k2OzDZ-mmOO-WF9GLZiH_8Os7-j3Ji2Q1LzrdSzsjXlr_LHneeosoX1z5_dmDsPHwORVuFYv-4vHaucibcuHNBqMqTZzX2azSLNaZji9W2q9SaVMEwObZQvdeFlBSZws9Bwv-TS7_jPLFky4e1h1ZSmq6XevQG0-mXx-fvv429X799o35bKn_LX4c8Z--ZMnLYv_qNGHVl9W3mbCnNCt01pFGaj9Xrj-oEdu1RL4vesXEJP0lXXdUUM746vbDi-25RanbQR1wdBrU3h1RZ5OKVSwOqKubC282GFVpwpEz_EbUNWgBJVWFOjsLzqjjLaEOTNgRdUZqdVEn6rdKtMMa4Og0Kf07ssYiFW4ViwNr6ubCmw1GVZpwLLq4kTUNWkBJVbHGzoIza0RLrAETdmSNkVpd1sj6rZLtsAY4Ok3K4I6ssUiFW8XiwJq6ufBmg1GVJhyLLm9kTYMWUFJVrLGz4Mwa2RJrwIQdWWOkVpc1qn6rVDusAY5OkzK8I2ssUuFWsTiwpm4uvNlgVKUJx6KrG1nToAWUVBVr7Cw4s0a1xBowYUfWGKnd8nfRlfUfdb5OV7mu9U9QsMtMxy_6cAZ5usnm-q8sne-3Obx92Ov2H8Q6Lw7f8sOb8erw1c7gZzEvi_lnsboQczsxly5qwZ3UQxe17NNqQSYu6cQluXWX3pkWc3BetFoIF7UMnNQDWq3IxHu0uGshFmVxjxT36bPuk2JwzQNSrECxhzQVAoAFAypWXKDVEAy0HJIByBEaaDliAzfQchm8AMEbbLHBA1AjPgA5AgSQI0IgOagLNwhzGTyKjkZMSW5ggtOQ4T1w7DRm0KXTnOEDsLlBGquy02pYdloOyw7kqOy0HJadpqwAlBU0asDEAjUqO5CjsgM5KjuSg4kXNGUFGDpB38GV5EbZBY0aocCx06hBl06TRgDSCIM0NmUHalR2IEdlR3JQdiCHd_00ZQWgrKBRg8oOKIvODWASlR1gEpUdyNHE05SVYGok_YBckhtllzRqJLihkzRqwKVLmjQSkEYapLEpO1CjsgM5KjuSg7IDOSq7pCkrAWUljRr0lA8oi84NYBI95wNMogd9IEcTT1NWomOnn5pLcrPsNGoUuKFTNGrKlz77-OH_AAAA__9uuhYw +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mEtv6kYcxff9FNasWtUVngcvS1eiam9VpCtSJexaFg6eBksEI9tIoVG-ewVcIHjw_3gY4x2vM3N85n9-snlnqzTWk-hV5yz8m3HmM8F8JpnPFPNZl818ts7Suc7zNNv95CAYx28sDHyWrNabYvfxzGfzNNMsfGdFUiw1C9k0el7qRx3FOusEzGexLqJkud9mnSWvUbYdvW3_Yz77I1kWOgu9Eff-2QSBnHsyDMPxZDpgPnvYFKE3Emz24bN0U5y3y4voRbOQf_j1Lf2e5EWymhed7qWfES-tf5Y8b71FlC-u_P7sQdh4-BwLt8pFf_F4_WDkTcHwZpNRlSbO62xWaRbrTMcXK-1XqbQpAmDzbKF7LwsoqbOFnoMF_yaXf0b54kkXD-uOLCU13a516I0n06-PT19_m3q_fvvGfLbU_xY_jvhPX7LkZbF_dZqw6svq20zYU5oVOutII7WfK9cf1IjtWiLfF71iYpL-kq47KihnfHX74cX23KLVLcEOWDpNau-OsLOJxSoXF9jVDYY3m4yqNOFIGn4j7Bq0gJKqgp2dBWfY8ZZgBybsCDsjtbqwE_VrJVqiDbB0GpX-HWljEQu3ysWFNnWD4c0moypNOFZd3EibBi2gpKpoY2fBmTaiJdqACTvSxkitLm1k_VrJlmgDLJ1GZXBH2ljEwq1ycaFN3WB4s8moShOOVZc30qZBCyipKtrYWXCmjWyJNmDCjrQxUqtLG1W_Vqol2gBLp1EZ3pE2FrFwq1xcaFM3GN5sMqrShGPV1Y20adACSqqKNnYWnGmjWqINmLAjbYzUbvnb6Mr6jzpfp6tc1_pHKNhlpuMXfTiDPN1kc_1Xls732xzePux1-w9inReHb_nhzXh1-Gpn8LOYl8X8s1hdiLmdmEsXteBO6qGLWvZptSATl3Tikty6S-9Mizk4L1othItaBk7qAa1WZOI9Wty1EIuyuEeK-_RZ90kxuOYBKVag2EOaCgHAggEVKy7QaggGWg7JAOQIDbQcsYEbaLkMXoDgDbbY4AGoER-AHAECyBEhkBzUhRuEuQweRUcjpiQ3MMFpyPAeOHYaM-jSac7wAdjcII1V2Wk1LDsth2UHclR2Wg7LTlNWAMoKGjVgYoEalR3IUdmBHJUdycHEC5qyAgydoO_gSnKj7IJGjVDg2GnUoEunSSMAaYRBGpuyAzUqO5CjsiM5KDuQw7t-mrICUFbQqEFlB5RF5wYwicoOMInKDuRo4mnKSjA1kn5ALsmNsksaNRLc0EkaNeDSJU0aCUgjDdLYlB2oUdmBHJUdyUHZgRyVXdKUlYCykkYNesoHlEXnBjCJnvMBJtGDPpCjiacpK9Gx00_NJblZdho1CtzQKRo15UufffzwfwAAAP__BrAYYA== # INTERSECT ALL and INTERSECT with swapped column orders. query T @@ -215,23 +215,23 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy82F-L20YUBfD3fgozTy1Rse query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) EXCEPT ALL (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll1r2zAUhu_3K8K52phGLNnOh6HQMTpWKG1pczHYcuHGWhNIYyMr0Kz0v48kDZ3j9LxWXIzv6tqPdKzzvDl-okWa6Mv4QecU_SJJghQJ8klQQIJCGgvKTDrReZ6a9SNb4Dx5pMgTNFtkS7v-91jQJDWaoieyMzvXFNEovpvrGx0n2nQ9EpRoG8_mm20yM3uIzer0cfWXBH2fza02UedUdn4vPc-fdFQUReeXIxJ0tbTrGzR-FpQu7ctur5vcrTrTOJ8Wl988PxaU2_heUySfxXFVhy5V65N3Llu9WfbrOstFahJtdFJYabwm0SMH3v1HnE9vtb3KunKvYaNVpqPO2c9vZ9ejzteLCxI013_sx1P56cTM7qebv95879d38l1acZsaq01XhvvH9PnN9YMKZ3boOF4WPVDEZfolzbrK2z_gg9uHhe1lddNke_LhUHWvRfmQzeZDNpEP0IpdPnrH5kNVb7Vqj6AOVfdbJKhqVlDVhKCgFTtB-8cK6ldvtd8eQR2qHrRIUL9ZQf0mBAWt2Ak6OFbQoHqrg_YI6lD1sEWCBs0KGjQhKGjFTtDhe3wCH1j_RudZush1pa9bb31gOrnX2wbk6dJM9LVJJ5tttpdXG27z6ZLo3G7vqu3F-WJ7a11gdbhfB5ayFh3Wooc8LR3OTLnB_Trw3pm50mEtesjTap_2_qf9Auztwz4LB3y3AhZWkt86rJMPHgb54GGUD0CDfAAa5KNXJx88DPLBwygfgAb5ADTIR5-1dMBLOqiTj2Edw3kYGM7DyHBAA8MBjSaAy9gs_5K6zE1XGg4Bp8npjAPNZWmKFFSVihdd8mMEmC5Lc8RFdUAD1wGNZEc4sB3hSPfSDHXSnaeR7jwNdQc40h3gSPfSIC3q3gO6l2aKk-6lmeKkO08j3Xka6g5wpDvAke6leeqkO08j3Xka6g5wpDvAke6lqVr81vZ43VVptrC6j58__AsAAP__XY-Brg== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll1r2zAUhu_3K8K52phGLNnOh6HQMTpWKG1pczHYcuHGWhNIYyMr0Kz0v48kDZ3j9LxWXIzv6tqPdKzzvDl-okWa6Mv4QecU_SJJghQJ8klQQIJCGgvKTDrReZ6a9SNb4Dx5pMgTNFtkS7v-91jQJDWaoieyMzvXFNEovpvrGx0n2nQ9EpRoG8_mm20yM3uIzer0cfWXBH2fza02UedUdn4vPc-fdFQUReeXowEJulra9R0aPwtKl_Zlu9dd7ladaZxPi-tvnh8Lym18rymSz-K4skOXsvXJe9et3qz7dZ3lIjWJNjoprDRek-iRAy__I86nt9peZV2517LRKtNR5-znt7PrUefrxQUJmus_9uOp_HRiZvfTzV9vvvfrO_kuvbhNjdWmK8P9Y_r85vpBhTM7dBwvix4o4jL9kmZd5e0f8MHtw8L2srpqskUJcSi716aEyGYTIptICOjFLiG9YxOiqvdatUhRh7L7bVJUNauoakJR0Iudov1jFfWr99pvkaIOZQ_apKjfrKJ-E4qCXuwUHRyraFC910GLFHUoe9gmRYNmFQ2aUBT0Yqfo8D0-hQ-sf6PzLF3kutJXrrc-MJ3c620D8nRpJvrapJPNNtvLqw23-YBJdG63d9X24nyxvbUusDrcrwNLWYsOa9FDnpYOZ6bc4H4deO_MXOmwFj3kabVPe__TfgH29mGfhQO-WwELK8lvHdbJBw-DfPAwygegQT4ADfLRq5MPHgb54GGUD0CDfAAa5KPPWjrgJR3UycewjuE8DAznYWQ4oIHhgEYTwGVsln9JXeamKw2HgNPkdMaB5rI0RQqqSsWLLvkxAkyXpTniojqggeuARrIjHNiOcKR7aYY66c7TSHeehroDHOkOcKR7aZAWde8B3UszxUn30kxx0p2nke48DXUHONId4Ej30jx10p2nke48DXUHONId4Ej30lQtfmt7vO6qNFtY3cfPH_4FAAD__2aEg94= query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) EXCEPT (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v2kgYhe_3V6C52tV6heeDL0uRsmpTNVKURAkXlVouHDwNlghGtpFCo_z3CigQPPg9Hsb4LsGcmeMz73lk88ZmSaRvwxedseA748xjgnlMMo8p5rEOG3lsniZjnWVJuvrKRnAdvbLA91g8my_y1ccjj42TVLPgjeVxPtUsYMPwaaofdBjptO0zj0U6D-Ppept5Gr-E6fLydfmLeexLPM11GrQueevHwvfluCWCILi-HTKP3S3y1QU2evdYssj3u2V5-KxZwN-96o4-x1kez8Z5u3Nox1h_L3latiZhNjny_b0HYePhYyrcKhZ9YZGLPCkXXm8wqtTEfp3FLEkjneroYKX1KqU2hQ9s7i10zmUBJbW30HWw4J3k8muYTR51fjdvy0JSw-VcB62rb5-u7oet_29umMem-mf-9yX_5yKNnyfrvyqMV89mvB6TNNdpWxqR_Vu6fr9CZsfi-LPoERO3yX_JvK38YsBHtx8cbM8tGt0M54Cj3ZR2z8g5m1SsYnHgXNVceL3BqFITjpDhJ3KuRgsoqTLO2Vlw5hxvgnNgvLacMyKryjlRvVKiGdAAR7sx6Z0RNBapcKtYHEBTNRdebzCq1IRjy8WJoKnRAkqqDDR2FpxBI5oADRivLWiMyKqCRlavlGwGNMDRbkz6ZwSNRSrcKhYH0FTNhdcbjCo14dhyeSJoarSAkioDjZ0FZ9DIJkADxmsLGiOyqqBR1SulmgENcLQbk8EZQWORCreKxQE0VXPh9QajSk04tlydCJoaLaCkykBjZ8EZNKoJ0IDx2oLGiOyUn4iOrP-gs3kyy3SlX3_8VWA6etabA8iSRTrW92kyXm-z-fdurVt_EOks31zlm3-uZ5tLK4Mfxbwo5h_F6kDM7cRcuqgFd1IPXNSyR6sFmbikE5fk1h16Z1rMwXnRaiFc1NJ3UvdptSIT79LijoVYFMVdUtyjz7pHisE990mxAsUe0FTwARYMqFhxgVZDMNBySAYgR2ig5YgN3EDLYfACBG-wxQYPQI34AOQIEECOCIHkoC7cIMxh8Cg6GjEFuYEJTkOGd8Gx05hBt05zhvfB5gZprMpOq2HZaTksO5CjstNyWHaasgJQVtCoARML1KjsQI7KDuSo7EgOJl7QlBVg6AT9BFeQG2UXNGqEAsdOowbdOk0aAUgjDNLYlB2oUdmBHJUdyUHZgRw-9dOUFYCygkYNKjugLDo3gElUdoBJVHYgRxNPU1aCqZH0C3JBbpRd0qiR4IFO0qgBty5p0khAGmmQxqbsQI3KDuSo7EgOyg7kqOySpqwElJU0atBbPqAsOjeASfSeDzCJXvSBHE08TVmJjp1-ay7IzbLTqFHggU7RqCne-uj9r98BAAD__8OMEZ4= +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v2kgYhe_3V6C52tV6heeDL0uRsmpTNVKURAkXlVouHDwNlghGtpFCo_z3CigQPPg9Hsb4LsGcmeMz73lk88ZmSaRvwxedseA748xjgnlMMo8p5rEOG3lsniZjnWVJuvrKRnAdvbLA91g8my_y1ccjj42TVLPgjeVxPtUsYMPwaaofdBjptO0zj0U6D-Ppept5Gr-E6fLydfmLeexLPM11GrQueevHwvfluCWCILi-HfaZx-4W-eoKG717LFnk--2yPHzWLODvXnVLn-Msj2fjvN059GOsv5c8LVuTMJsc-f7eg7Dx8DEWbpWLvrAJRp4UDK83GVVqYr_OYpakkU51dLDSepVSm8IHNvcWOueygJLaW-g6WPBOcvk1zCaPOr-bt2UhqeFyroPW1bdPV_fD1v83N8xjU_0z__uS_3ORxs-T9V8VxqtnM16PSZrrtC2NyP4tXb9fIbNjcfxZ9IiJ2-S_ZN5WfjHgo9sPDrbnFpVuiHTA0m5Mu2cknU0sVrm4kK5qMLzeZFSpCUfM8BNJV6MFlFQZ6ewsOJOON0E6MF5b0hmRVSWdqN4p0RBqgKXdnPTOiBqLWLhVLi6oqRoMrzcZVWrCsefiRNTUaAElVYYaOwvOqBFNoAaM1xY1RmRVUSOrd0o2hBpgaTcn_TOixiIWbpWLC2qqBsPrTUaVmnDsuTwRNTVaQEmVocbOgjNqZBOoAeO1RY0RWVXUqOqdUg2hBljazcngjKixiIVb5eKCmqrB8HqTUaUmHHuuTkRNjRZQUmWosbPgjBrVBGrAeG1RY0R2yk9FR9Z_0Nk8mWW60q9A_iowHT3rzQFkySId6_s0Ga-32fx7t9atP4h0lm-u8s0_17PNpZXBj2JeFPOPYnUg5nZiLl3UgjupBy5q2aPVgkxc0olLcusOvTMt5uC8aLUQLmrpO6n7tFqRiXdpccdCLIriLinu0WfdI8XgnvukWIFiD2gq-AALBlSsuECrIRhoOSQDkCM00HLEBm6g5TB4AYI32GKDB6BGfAByBAggR4RAclAXbhDmMHgUHY2YgtzABKchw7vg2GnMoFunOcP7YHODNFZlp9Ww7LQclh3IUdlpOSw7TVkBKCto1ICJBWpUdiBHZQdyVHYkBxMvaMoKMHSCfoIryI2yCxo1QoFjp1GDbp0mjQCkEQZpbMoO1KjsQI7KjuSg7EAOn_ppygpAWUGjBpUdUBadG8AkKjvAJCo7kKOJpykrwdRI-gW5IDfKLmnUSPBAJ2nUgFuXNGkkII00SGNTdqBGZQdyVHYkB2UHclR2SVNWAspKGjXoLR9QFp0bwCR6zweYRC_6QI4mnqasRMdOvzUX5GbZadQo8ECnaNQUb330_tfvAAAA__81gBPO # EXCEPT ALL and EXCEPT with some overlap. query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x >= 1) EXCEPT ALL (SELECT y FROM xyz WHERE x < 3) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9r2zwUxu_fT2HO1TumEUu288dQyBgdK5S2tLkYbL5wY60JpLGRFWhW8t1Hkmad7VSPFRfju6bxTzrW-T05eqZlmsir-FHmFP4gTowEMfKIkU-MAooYZSqdyjxP1faRPXCRPFHoMpovs5Xe_jtiNE2VpPCZ9FwvJIU0ie8X8lbGiVQ9lxglUsfzxW6bTM0fY7UeP61_E6Ov84WWKnTG3Pm5cl1Pnjk8DMOLqwkxul7p0BkLijaM0pV-2e51l_u1M4vzWXH9MadoEzHKdfwgKeQbdlrZgU3ZU8d716rFm1W_rrNapiqRSiaFlaItiR458urf4nx2J_V11uOlhk3WmQyd8-9fzm8mzufLS2K0kL_0_2P-4UzNH2a7v_6-Ny-99-s7eTaduEuVlqrHg_IxfXxzfb_GmR07jpdFjxRxlX5Ks55wywd8dPugsD2vLxrvUD4syu53Jx-83XzwNvIBOnHIR__UfIj6nRYdEtSi7EF3BBXtCiraEBR04iDo4FRBvfqd9jokqEXZw-4I6rUrqNeGoKATB0GHpwrq1--03yFBLcoedUdQv11B_TYEBZ04CDp6jyvwkfVvZZ6ly1zWut262wOTyYPcNyBPV2oqb1Q63W2z_3i943ZXl0Tmev-t2H-4WO6_2hZYHx40gTlvRAeN6JGZ5hZnJuzgQRO4dGa2dNCIHplpUabdf2mvALtl2DPCvrlbvhEW3Lx10CQfZhjkwwyjfAAa5APQIB_9JvkwwyAfZhjlA9AgH4AG-RgYLR2aJR02yceoieFmGBhuhpHhgAaGAxpNAJuxWf0ltZmbtjQcAlaT0xoHmvPKFCmoyoVZdG4eI8B0XpkjNqoDGrgOaCQ7woHtCEe6V2aole5mGulupqHuAEe6AxzpXhmkRd37QPfKTLHSvTJTrHQ300h3Mw11BzjSHeBI98o8tdLdTCPdzTTUHeBId4Aj3StTtXjXds26i8psMeoebf77EwAA___5-4G4 +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9r2zwUxu_fT2HO1TumEUu288dQyBgdK5S2tLkYbL5wY60JpLGRFWhW8t1Hkmad7VSPFRfju6bxTzrW-T05eqZlmsir-FHmFP4gTowEMfKIkU-MAooYZSqdyjxP1faRPXCRPFHoMpovs5Xe_jtiNE2VpPCZ9FwvJIU0ie8X8lbGiVQ9lxglUsfzxW6bTM0fY7UeP61_E6Ov84WWKnTG3Pm5cl1Pnjk8DMOLq8mQGF2vdOiMBUUbRulKv-z3us392pnF-ay4wZhTtIkY5Tp-kBTyDTut7sCm7qnjvW_Z4s2yX9dZLVOVSCWTwkrRlkSPHHn3b3E-u5P6OuvxUssm60yGzvn3L-c3E-fz5SUxWshf-v8x_3Cm5g-z3V9_35uX3vv1nTybVtylSkvV40H5mD6-ub5f48yOHcfLokeKuEo_pVlPuOUDPrp9UNie1zeNdykhFnX3O5QQ3m5CeBsJAa04JKR_akJE_VaLLilqUfegQ4qKdhUVbSgKWnFQdHCqol79VntdUtSi7mGHFPXaVdRrQ1HQioOiw1MV9eu32u-SohZ1jzqkqN-uon4bioJWHBQdvcdV-Mj6tzLP0mUua91y3e2ByeRB7huQpys1lTcqne622X-83nG7C0wic73_Vuw_XCz3X20LrA8PmsCcN6KDRvTITHOLMxN28KAJXDozWzpoRI_MtCjT7r-0V4DdMuwZYd_cLd8IC27eOmiSDzMM8mGGUT4ADfIBaJCPfpN8mGGQDzOM8gFokA9Ag3wMjJYOzZIOm-Rj1MRwMwwMN8PIcEADwwGNJoDN2Kz-ktrMTVsaDgGryWmNA815ZYoUVOXCLDo3jxFgOq_MERvVAQ1cBzSSHeHAdoQj3Ssz1Ep3M410N9NQd4Aj3QGOdK8M0qLufaB7ZaZY6V6ZKVa6m2mku5mGugMc6Q5wpHtlnlrpbqaR7mYa6g5wpDvAke6VqVq8a7tm3UVlthh1jzb__QkAAP__A0qD6A== query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x >= 1) EXCEPT (SELECT y FROM xyz WHERE x < 3) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mFtv4kYcxd_7Kax5alVXeC7cLEWialM1UpRECQ8r7fLg4NlgiWBkGylslO--AhYIHvw_Htv4jduZOT7zPz_ZvLNFHOq74FWnzP_KOHOZYC6TzGWKuazLJi5bJvFUp2mcbH6yE9yEb8z3XBYtlqts8_HEZdM40cx_Z1mUzTXz2Th4nutHHYQ66XjMZaHOgmi-3WaZRK9Bsh69rX8wl_0XzTOd-M6IO99Wnif1lcN937-5GzOX3a8y3xkJNvlwWbzKjtulWfCimc8_3PKW_o3SLFpMs0731M-I59Y_Sp7XzixIZ2d-f_QgbDx8joVb5TJ1ZOlYZKVYeLO5qEITx3VWizgJdaLDk5W2qxTaFB6webTQvZQFlNTRQq-GBbeSy_-DdPaks_tlR-aSGq-X2neuv_xz_TB2_r69ZS6b6-_Z7yP-x1USvcy2rw7jVXxNfZvxeoqTTCcdaUT2Z-H6gxKZnYvj16JnTNzFf8XLjvLyAZ_dfniyPbcodEucA5YOY9q7IOdsYrHKpTrnysbCm81FFZqoCRlekXMNWkBJFXHOzkJtzvE2OAfGa885I7KynBPlGyVaAg2wdJiT_gVBYxELt8qlOmjKxsKbzUUVmqjZclERNA1aQEkVgcbOQm3QiDZAA8ZrDxojsrKgkeUbJVsCDbB0mJPBBUFjEQu3yqU6aMrGwpvNRRWaqNlyWRE0DVpASRWBxs5CbdDINkADxmsPGiOysqBR5RulWgINsHSYk-EFQWMRC7fKpTpoysbCm81FFZqo2XJVETQNWkBJFYHGzkJt0Kg2QAPGaw8aI7IqfxGdWf9Rp8t4kepS__54m8B0-KJ3B5DGq2SqH5J4ut1m9_Z-q9t-EOo0233Ld29uFruvNgY_i3lezD-L1YmY24m5rKMWvJZ6WEct-7RakIlLOnFJbt2ld6bFHJwXrRaijlp6tdQDWq3IxHu0uGshFnlxjxT36bPuk2JwzQNSrECxhzQVPIAFAypWXKDVEAy0HJIByBEaaDliAzfQchq8AMEbbLHBA1AjPgA5AgSQI0IgOagLNwhzGjyKjkZMTm5ggtOQ4T1w7DRm0KXTnOEDsLlBGquy02pYdloOyw7kqOy0HJadpqwAlBU0asDEAjUqO5CjsgM5KjuSg4kXNGUFGDpB38Hl5EbZBY0aocCx06hBl06TRgDSCIM0NmUHalR2IEdlR3JQdiCHd_00ZQWgrKBRg8oOKIvODWASlR1gEpUdyNHE05SVYGok_YCckxtllzRqJLihkzRqwKVLmjQSkEYapLEpO1CjsgM5KjuSg7IDOSq7pCkrAWUljRr0lA8oi84NYBI95wNMogd9IEcTT1NWomOnn5pzcrPsNGoUuKFTNGrylz75-O1nAAAA__-ffBGo +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mEtv8kYYhff9FdasWtUVngs3S59E1aZqpCiJEhaVWhYOngZLBCPbSKFR_nsFfEDw4Pd4GOMdtzNzfOY9j2w-2CKN9X30pnMW_s0485lgPpPMZ4r5rMsmPltm6VTneZptfrIT3MbvLAx8liyWq2Lz8cRn0zTTLPxgRVLMNQvZOHqZ6ycdxTrrBMxnsS6iZL7dZpklb1G2Hr2v_2M--yOZFzoLvRH3_lkFgdTfPB6G4e39eMB89rAqQm8k2OTTZ-mqOO6XF9GrZiH_9Ot7-j3Ji2QxLTrdU0MjXlr_KHlZe7Mon535_dGDsPHwNRduFczUk_VzkRflwpsNRlWaOK6zWqRZrDMdn6y0XaXSpgiAzaOF7rUsoKSOFnoOFvyLXP4Z5bNnXTwsO7KU1Hi91KF389dvN49j79e7O-azuf63-HHEf_qWJa-z7avDeFVfU99mvJ7TrNBZRxqR_Vy5_qBGZufi-L7oGRP36S_psqOCcsBntx-ebM8tGt0W6YCnw5z2rkg6m1ysgnEgXd1ceLPBqEoTjpjhF5KuQQsoqSrS2VlwJh1vg3RgvPakMyKrSzpRv1KiLdQAT4dB6V8RNRa5cKtgHFBTNxfebDCq0oRjz8WFqGnQAkqqCjV2FpxRI9pADRivPWqMyOqiRtavlGwLNcDTYVAGV0SNRS7cKhgH1NTNhTcbjKo04dhzeSFqGrSAkqpCjZ0FZ9TINlADxmuPGiOyuqhR9Sul2kIN8HQYlOEVUWORC7cKxgE1dXPhzQajKk049lxdiJoGLaCkqlBjZ8EZNaoN1IDx2qPGiOySv4rOrP-k82W6yHWtf4GCTWA6ftW7A8jTVTbVj1k63W6ze_uw1W0_iHVe7L7luze3i91XG4Nfxbws5l_F6kTM7cRcuqgFd1IPXdSyT6sFmbikE5fk1l16Z1rMwXnRaiFc1DJwUg9otSIT79HiroVYlMU9Utynz7pPisE1D0ixAsUe0lQIABYMqFhxgVZDMNBySAYgR2ig5YgN3EDLafACBG-wxQYPQI34AOQIEECOCIHkoC7cIMxp8Cg6GjEluYEJTkOG98Cx05hBl05zhg_A5gZprMpOq2HZaTksO5CjstNyWHaasgJQVtCoARML1KjsQI7KDuSo7EgOJl7QlBVg6AR9B1eSG2UXNGqEAsdOowZdOk0aAUgjDNLYlB2oUdmBHJUdyUHZgRze9dOUFYCygkYNKjugLDo3gElUdoBJVHYgRxNPU1aCqZH0A3JJbpRd0qiR4IZO0qgBly5p0khAGmmQxqbsQI3KDuSo7EgOyg7kqOySpqwElJU0atBTPqAsOjeASfScDzCJHvSBHE08TVmJjp1-ai7JzbLTqFHghk7RqClf-uTzh_8DAAD__xG7E9g= # EXCEPT ALL and EXCEPT with swapped column orders. query T diff --git a/pkg/sql/logictest/testdata/planner_test/explain b/pkg/sql/logictest/testdata/planner_test/explain index bf467208805b..c9c7c11c7096 100644 --- a/pkg/sql/logictest/testdata/planner_test/explain +++ b/pkg/sql/logictest/testdata/planner_test/explain @@ -71,10 +71,10 @@ EXPLAIN (TYPES) SELECT $1 query TTTTT colnames EXPLAIN (TYPES) SELECT $1::INT ---- -tree field description columns ordering -render · · ("int" int) "int"=CONST - │ render 0 (($1)[string]::INT)[int] · · - └── emptyrow · · () · +tree field description columns ordering +render · · (int8 int) int8=CONST + │ render 0 (($1)[string]::INT8)[int] · · + └── emptyrow · · () · # Ensure that all relevant statement types can be explained diff --git a/pkg/sql/opt/exec/execbuilder/testdata/distsql_agg b/pkg/sql/opt/exec/execbuilder/testdata/distsql_agg index fec333e9f3c4..38773a113d64 100644 --- a/pkg/sql/opt/exec/execbuilder/testdata/distsql_agg +++ b/pkg/sql/opt/exec/execbuilder/testdata/distsql_agg @@ -40,7 +40,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslE1vozAQhu_7K1bvaVeyFA query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum((a-1)*1000 + (b-1)*100 + (c::INT-1)*10 + (d-1)) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlMGOmzAQhu99impObOtqbSDZrE-s2h6QummVpqeKg4tHCCnByDZSq4h3r4BIgSgxVPTCzXj455_5xpoTFEriVhzRAP8JDAj4QCAAAiEQWEFCoNQqRWOUbn7pBLH8DZwSyIuyss11QiBVGoGfwOb2gMBhL34dcIdCon6kQECiFfmhtSl1fhT6TySFFUBgh4VEzd96nudF7APjnMfb_cM7Rik9n997XuQPIudjGwnacz98iUZhe__p88f49eXLAyQ1AVXZS93GigyBs5pM7-0lyzRmwir9uBq29v3Hqxex-zb-XZtL9qpQWqJGOUid1O5CGP23SoJBJWz6MNnShjnSW4_hes4w_ekI_aUhHOmth_BpDsJgOsJgaQhHeush3MxBGE5HGC4N4UhvPYTP_2sr37DZoSlVYfBqO9_OTJutjTLDbsUbVekUv2mVtjbd59dW115INLaLsu4jLrpQU2BfzJxifyBm12Lf7TxiHTjVoVsczql75RSv3c7rOc5PTvHG7byZ4_zsnhUdeSbuR3btndRv_gYAAP__6cMa6A== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUlMGOmzAQhu99impObOtqbSBZ1idWbQ9I3W2Vbk8VBxePEFKCkW2kVhHvXgGKAlFiqOiFG8P49z_zjTVHKJXEF3FAA_wnMCDgA4EACIRAYAMpgUqrDI1Ruj3SCxL5GzglUJRVbdvfKYFMaQR-BFvYPQKHV_FrjzsUEvU9BQISrSj2nU2li4PQf2IprAACOywlav7W8zwvZh8Y5zx5eY3u3jFK6Sl473mxP86dvrtc0AejE4MDcdhlPn3-mDw_fbmDtCGgansu31iRI3DWkPktPuW5xlxYpe834w6__3j2Ynbbxr9pc769LpWWqFGOrk4bdyGM_lslwagSNn-mbKUznWhxgHK7ZKb-fJL-SklOtDgg-bCEZDCfZLBSkhMtDkhGS0iG80mGKyU50eKA5OP_2thXbHZoKlUavNjc12-m7UZHmWO__o2qdYbftMo6mz782um6HxKN7bOsD5KyT7UFDsXMKfZHYnYp9t3OE9aBUx26xeGSujdO8dbtvF3i_OAUR27naInzo3tWdOKZuB_ZpXfavPkbAAD__5y5IpA= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), count(a), max(a) FROM data] @@ -55,7 +55,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNuLozAUxt_3r1jO0y4bqI query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum((a-1)*1000) + sum((b-1)*100) + sum((c::INT-1)*10) + sum(d-1) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVc1qGzEQvvcpwpzWtUpWP3YcnRTaHgxNWtz0VPagWsNicFZGkqEl-N2LVzTeNbF2qXFgb7Mz_vz9aGCeobIGH_QTepA_gQIBBgQ4EBBAYAIFgY2zS_Teuv1PImBufoPMCayqzTbs2wWBpXUI8hnCKqwRJDzqX2tcoDbornMgYDDo1bqm2bjVk3Z_lNFBA4EFVgadvMoU_UCllPOHx9F7mud5rMlVplhrcOjzumoO_82UqLufPn-c3999gWJHwG7DQa4PukSQdEf6W7orS4elDtZdT9qOvv-4zxQdAYkVe6n4SyVGJ0WwkyIO3NvKOoMOTYu42KVl0vx_dB6eRIlxpvg4U3Ss2Oi0A95yQPtvBh3IZnRYakQ-vdxmsP65soHk2mGpkevN5XLl_XPlA8m1w1Ij19nlchX9cxUDybXDUiPX27e5EK-IWKDf2Mrj0aV4_Z_z_QVBU2I8N95u3RK_ObusaeLn1xpXNwz6EKc0fsyrONoLbIJpEsxaYHoMZmnmDmqeRIs0WJyje5IET9PM03OYb5LgWZp5dg7zbfqt8o41SS_ZMXexe_c3AAD__2E0QFI= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVc2K2zAQvvcpljk5jcpaP8lmddLS9hDobku6PRUf1GgwgawVJAValrx7iVUSOySyachCbiONP38_GphXqKzBJ_2CHuRPoECAAQEOBAQQGEFBYOXsHL23bvtJBEzNb5A5gUW1WoftdUFgbh2CfIWwCEsECc_61xJnqA262xwIGAx6saxpVm7xot0fZXTQQGCGlUEnbzJFP1Ap5fTpeTJ4T_M8_3cgN5li7Vajw2PZ6u_aStT3nz5_nD4-fIFiQ8Cuw161D7pEkHRD-jt7KEuHpQ7W3Y7axr7_eMwUHQCJFdtVfFeJwUkR7KSIPfe6ss6gQ9MiLjZpmTT_H537l1FimCk-zBQdKjY47YC3HND-A0Kva0A6nDWSH19uQFj_eNl1xdvhrBHv3eXi5f3j5dcVb4ezRryTy8Ur-scrriveDmeNeO_fZnscETFDv7KVx4MtcvzP-Xa7oCkxriJv126O35yd1zTx-LXG1RcGfYhdGg_TKra2AptgmgSzFpgeglmauYOaJ9EiDRbn6B4lweM08_gc5rskeJJmnpzDfJ9-q7xjTNJDdshdbN79DQAA__8RBkf6 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), min(b), max(c), count(d) FROM data] @@ -67,52 +67,52 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lMuLqzAUxvf3zzgrC4EatS query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT avg(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lEGLozAUx-_7KZZ3qjRQE22nk5PLnjxMZ-m0p0WWrHmI0DGSRNhl8LsP6mG01Ci03qr27-_394X3AYWSeBDvaID_BgoEGBAIgEAIBLaQECi1StEYpZu_dIFY_gPuE8iLsrLN7YRAqjQC_wCb2wsCh5P4e8EjCol64wMBiVbklxZT6vxd6P-RFFYAgSMWEjX_HoXr1Sqi64h56yjgPD6cPEhqAqqyXxxjRYbAaU3mu_zIMo2ZsEpvtkOVt_PLKqIeEPj5ej6c2t9jSDaK_CJVhdISNcoBJqndUtQfs3o7v_yJGy_m9b8U3URs1DMYeNL5Y6JLj2nCpfdFdo8aE5tfny1df8KlV__pUfWD-fWDpetPuPTq7x9VP5xfP1y6_oRLr_7zEjvqBvKIplSFwatddfvNfrPDUGbYLTyjKp3iL63SFtNdvra59oZEY7untLuIi-5RI9gPU2eYDcL0Oszc5Al04EyH7nB4j_fWGd65ybt7yE_O8N5N3t9DfnbPyp84Ju5Dds1O6m-fAQAA___oV9XP +https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lEGLozAUx-_7KZZ3ammgJtqOk5PLnjxMZ-m0p0WWrHmI0DGSRNhl8LsP6mG01Ci03qr27-_394X3AYWSeBDvaID_BgoEGBDwgUAABHaQECi1StEYpZu_dIFY_gPuEciLsrLN7YRAqjQC_wCb2wsCh5P4e8EjCol66wEBiVbklxZT6vxd6P-RFFYAgSMWEjX_HgWb1Sqim4itN5HPeXw4hWtIagKqsl8gY0WGwGlN5sv8yDKNmbBKb3dDl7fzyyqiayDw8_V8OLW_x5BsFPlFqgqlJWqUA0xSu6WoN2b1dn75EzdebN3_VHQbsVFPf-BJ58-JLj6nCZneJ9k_ak5sfn-2eP8JmV7_p0f19-f39xfvPyHT6x8-qn8wv3-weP8JmV7_5yX21A3kEU2pCoNX--r2m71mj6HMsFt6RlU6xV9apS2mu3xtc-0NicZ2T2l3ERfdo0awH6bOMBuE6XWYuckTaN-ZDtzh4B7vnTO8d5P395CfnOHQTQ7vIT-7Z-VNHBP3IbtmJ_W3zwAAAP__CyvW5w== # VARIANCE/STDDEV have three local (sqrdiff, sum, and count) and one final stage aggregations. # We calculate and render the variance/stddev at the end. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), round(stddev(b), 1) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE5amgYMbdIm2V6KKWo0mEDWCpIMLUv-e7F8WDusZUOc3iyNn76nN2JeodAKV_IFLfCfQIEAAwIxEEiAwBQyAiej92itNtUvtSBVf4BHBA7FqXTVdkZgrw0CfwV3cEcEDjv5-4gblArNfQQEFDp5OHrMyRxepPkrlHQSCKxLx-8EJYJBdiagS_d2qnUyR-D0TIaTn_LcYC6dNvfTNnj7_HUi6EcgsP2-WaTL5UQwv6r2_den9fNq57-7rLBOK28OykIbhQZVC5-dw2Zp1OV2ma6evvza7haLzz8mghERE5FUhQ0WCo1P787oslBVlXLO09Wu-wpx6wp0eB_puH3sITeimd26j2x4CGzcEHrIjRAebh1CPDyEeNwQesiNEOa3DiEZHkIybgg95EYIj_9zrL1jZYP2pAuLF-Pt_ZOjauyhyrGekVaXZo_fjN57TL1ce53fUGhdXaX1Ii3qUmWwKaZBMWuJ6aWYhck96DioTsLi5Brf06B4FibPriE_BMXzMHl-Dfkx3Kuo55mEH9klOzt_-BcAAP__ZTPiDA== +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE5amgYMbdIm2V6KKWo0mEDWCpIMLUv-e7F8WDusZUOc3iyNn76nN2JeodAKV_IFLfCfQIEAAwIxEEiAwBQyAiej92itNtUvtSBVf4BHBA7FqXTVdkZgrw0CfwV3cEcEDjv5-4gblArNfQQEFDp5OHrMyRxepPkrlHQSCKxLx-8EJYJBdiagS_d2qnUyR-D0TIaTn_LcYC6dNvfTNnj7_HUi6EcgsP2-WaTL5UQwv6r2_den9fNq57-7rLBOK28OykIbhQZVC5-dw2Zp1OV2ma6evvza7haLzz8mghERE5FUhQ0WCo1P787oslBVlXLO09Vu3n2HuHUHOryRdNxG9pAb2cxu3Ug2PAQ2bgg95EYID7cOIR4eQjxuCD3kRgjzW4eQDA8hGTeEHnIjhMf_OdfesbJBe9KFxYv59v7JUTX3UOVYD0mrS7PHb0bvPaZerr3Obyi0rq7SepEWdaky2BTToJi1xPRSzMLkHnQcVCdhcXKN72lQPAuTZ9eQH4LieZg8v4b8GO5V1PNMwo_skp2dP_wLAAD__4qs4kQ= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), round(variance(b), 1) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE4K2wYMrdN6s70UU9RoMIGsFSQZWpb892L5sE5IZEOc3iyNn76nN2LeoNIKM_mKFvhPoECAAYEYCCRAYAoFgb3RG7RWm-aXVpCqP8AjAttqX7tmuyCw0QaBv4Hbuh0Ch7X8vcMcpUJzHwEBhU5udx6zN9tXaf4KJZ0EAqva8TtBiWBQHAjo2r2fap0sETg9kOHkRVkaLKXT5n56DH5--ToR9CMQeP6ef0qXy4lgftXs-6-n1Uu29t-XrLCLVt4d1JU2Cg2qI3xxCJul0SW3yzRbfPn1Y5Gni-zp80QwImIikqaUY6XQ-PzujK4r1VQp5zzN1pcvER9dgg7vJB23kz3kTjizW3eSDQ-BjRtCD7kTwsOtQ4iHhxCPG0IPuRPC_NYhJMNDSMYNoYfcCeHxfw62M1ZytHtdWTwZcOdPjprBh6rEdkpaXZsNfjN64zHtcuV1fkOhdW2Vtou0akuNwa6YBsXsSExPxSxM7kHHQXUSFifX-J4GxbMweXYN-SEonofJ82vIj-FeRT3PJPzITtnF4cO_AAAA__8b0-KL +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lEGL2zAQhe_9FcucUhCsJTvZrE4K2wYMrdN6s70UU9RoMIGsFSQZWpb892L5sE5IZEOc3iyNn76nN2LeoNIKM_mKFvhPoECAAYEYCCRAYAoFgb3RG7RWm-aXVpCqP8AjAttqX7tmuyCw0QaBv4Hbuh0Ch7X8vcMcpUJzHwEBhU5udx6zN9tXaf4KJZ0EAqva8TtBiWBQHAjo2r2fap0sETg9kOHkRVkaLKXT5n56DH5--ToR9CMQeP6ef0qXy4lgftXs-6-n1Uu29t-XrLCLVt4d1JU2Cg2qI3xxCJul0SW3yzRbfPn1Y5Gni-zp80QwImIikqaUY6XQ-PzujK4r1VQp5zzN1vPLt4iPbkGHt5KO28oecied2a1byYaHwMYNoYfcCeHh1iHEw0OIxw2hh9wJYX7rEJLhISTjhtBD7oTw-D8n2xkrOdq9riyeTLjzJ0fN5ENVYjsmra7NBr8ZvfGYdrnyOr-h0Lq2SttFWrWlxmBXTINidiSmp2IWJveg46A6CYuTa3xPg-JZmDy7hvwQFM_D5Pk15Mdwr6KeZxJ-ZKfs4vDhXwAAAP__Qcviww== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT stddev(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcqywKGLd2SdDfDDC06mEBqBUmGjeJ3H7YHtU0jG4LubCt__o_viPMKuVa4lS9ogf8ECgQYEIiAQAwEFpASuBh9RGu1qX7SBBL1B_icwCm_FK76nBI4aoPAX8Gd3BmBw0H-PuMOpUJzNwcCCp08neuaizm9SPNXKOkkENhhrtDwjyKeTSaCzgSbzkTEebI9TCEtCejCvfVYJzMETksynuUxywxm0mlzt-ii7L_v1slmMxF0CgT2z1__P316et4e6udrAOwqwFtvkWuj0KDqlKalH5H2dG2S7eOXX_vDev35x0RQIhgR0XWwqANGx0-Jhp7SAEtLwTLMlNh4GSy0jAGWloz7MDKi8TKi0DIGWFoyVmFkxONlxKFlDLC0ZDyEX2bvAOzQXnRusbfU3v_nebXsUGXYbEarC3PEb0Yf65rm9anO1R8UWtec0uYlyZujCrAdpt4w64RpP8z8zQPVkTcd-8PxLdwLb3jpb17e0nzvDa_8zatbmh_8s5oPXBP_Jet3p-WHfwEAAP__sSDiQQ== +https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcqywKGLd2SdDfDDC06mEBqBUmGjeJ3H7YHtU0jG4LubCt__o_viPMKuVa4lS9ogf8ECgQYEIiAQAwEFpASuBh9RGu1qX7SBBL1B_icwCm_FK76nBI4aoPAX8Gd3BmBw0H-PuMOpUJzNwcCCp08neuaizm9SPNXKOkkENhhrtDwjyKeTSaCzgSbzkTEebI9rKaQlgR04d6KrJMZAqclGQ_zmGUGM-m0uVt0Wfbfd-tks5kIOgUC--ev_58-PT1vD_XzNQB2FeCtt8i1UWhQdUrT0o9Ie742yfbxy6_9Yb3-_GMiKBGMiOg6WNQBo-PHRIOPaQCm5WAZZkxsvA0W3MYATMvGfRgb0XgbUXAbAzAtG6swNuLxNuLgNgZgWjYewi-0dwB2aC86t9hbbO__87xaeKgybLaj1YU54jejj3VN8_pU5-oPCq1rTmnzkuTNUQXYDlNvmHXCtB9m_uaB6sibjv3h-BbuhTe89Dcvb2m-94ZX_ubVLc0P_lnNB66J_5L1u9Pyw78AAAD__w_a41k= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT variance(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcK3QKGzd3cdDfDDC06mEBqBUmBjZJ3H7YHtU0iG4LubCt__o_viPMGpVaYyle0wH8CBQIMCERAIAYCC8gJHI3eobXaVD9pAon6A3xOYF8eT676nBPYaYPA38Dt3QGBw1b-PmCGUqG5mwMBhU7uD3XN0exfpfkrlHQSCGRYKjT8o4hnk4mgM8GmMxFxnqTbKeRnAvrk3nuskwUCp2cynmVdFAYL6bS5W3RRnr9nn5LNZiLoFAg8v3z9__T49JJu6-drAOwqwHvvqdRGoUHVKc3PfkTa07VJ0vWXXz_WWbJOHz9PBCWCERFdR4s6aHT8nGjoOQ2wtCQsw8yJjZfBQssYYGnJuA8jIxovIwotY4ClJWMVRkY8XkYcWsYAS0vGQ_h1dgEgQ3vUpcXeWrv8z_Nq3aEqsNmNVp_MDr8ZvatrmtenOld_UGhdc0qbl6RsjirAdph6w6wTpv0w8zcPVEfedOwPx7dwL7zhpb95eUvzvTe88jevbml-8M9qPnBN_Jes352fP_wLAAD__2fo4sA= +https://cockroachdb.github.io/distsqlplan/decode.html#eJy0lNFq2zAUhu_3FONcJUTQSHbSVFcK3QKGzd3cdDfDDC06mEBqBUmBjZJ3H7YHtU0iG4LubCt__o_viPMGpVaYyle0wH8CBQIMCERAIAYCC8gJHI3eobXaVD9pAon6A3xOYF8eT676nBPYaYPA38Dt3QGBw1b-PmCGUqG5mwMBhU7uD3XN0exfpfkrlHQSCGRYKjT8o4hnk4mgM8GmMxFxnqTb1RTyMwF9cu9F1skCgdMzGQ-zLgqDhXTa3C26LM_fs0_JZjMRdAoEnl--_n96fHpJt_XzNQB2FeC991Rqo9Cg6pTmZz8i7fnaJOn6y68f6yxZp4-fJ4ISwYiIrqNFHTQ6flA0-KAGYFoWlmEGxcbbYMFtDMC0bNyHsRGNtxEFtzEA07KxCmMjHm8jDm5jAKZl4yH8SrsAkKE96tJib7Vd_ud5tfJQFdjsR6tPZoffjN7VNc3rU52rPyi0rjmlzUtSNkcVYDtMvWHWCdN-mPmbB6ojbzr2h-NbuBfe8NLfvLyl-d4bXvmbV7c0P_hnNR-4Jv5L1u_Ozx_-BQAA___I_-PY # Test various combinations of aggregation functions and verify that the # aggregation processors are set up correctly. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), avg(b), sum(c), avg(d), stddev(a), variance(b), sum(a+b+c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVV2L4jwUvn9_RTlXigds0vrVqyPjCIV3nV115maRoWsOIjiNpBV2GfzvS1tXq4xpQRC8O8nJk-cjB_IJsVY8iT44geAnCECQgOABgg8IHVggbI1ecpJokx0pAKH6DYGLsI63uzTbXiAstWEIPiFdpxuGAObRrw1POVJs2i4gKE6j9San2Zr1R2T-kIrSCBCmHCs2gUN-q9Eg0SLZbJEXBOFk3kSHBDok0SEPHfJhsUfQu_TEm6TRiiEQe6yvbbhaGV5FqTbtzrm02eu3BskmYFF5WfX08jqZH-p81z9WnVI_r2c_pqNwPD7ccejIs87pHtG8akdetXNysYu1UWxYnVlY7O2GhfuFY3HU9M_7e2j1fDzRzVbjcDL8_302H42e3xrUQxJI_VPjbTgNh5On5wYNkCSWE3Cb5QHIn7pdvDQ61GlTFx3qoUN9dGhwNS3vLC1RfzDFvQezQlvpnbqPMJiyftTy3lFXaCtF3XuEqL36UXv3jrpCWynq_iNE7deP2r931BXaSlEPHiHqio96yslWxwlf_HBf3-xmPx-rFRffZKJ3ZsnfjV7mNMXyJcflG4qTtOiKYhHGRSsTWAYLK1iegcUlWNqZK6g9K9q3g_1bdHes4K6duXsLc88K7tuZ-7cwD-xv5VaMiX3ILrkX-__-BgAA___5S2oZ +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVd-L4j4Qf__-FWWeFAds0qq1TyPrCoXvuXfq7sshS88MIriNpBXuWPzfj7aeVllTQRB8m2TyyedHBvIJiVY8jj84hfAnCECQgOABgg8IHZgjbIxecJpqkx8pAZH6DaGLsEo22yzfniMstGEIPyFbZWuGEGbxrzVPOFZs2i4gKM7i1bqg2ZjVR2z-kIqzGBAmnCg2oUN-q9Eg0SLZbJEXhtF4FjTRIYEOSXTIQ4d8mO8Q9DY7EqdZvGQIxQ6vFzdYLg0v40ybdudU2_T1W4NkE7CsvLx6enkdz_Z1sesfqk6lX9TTH5NhNBrt79h35EnneI9oXrQjL9o5utgm2ig2rE4szHd2w8L9wrE4aPrn_T2yej6c6OarUTQe_P8-nQ2Hz28N6iEJpODYeBtMosH46blBfSSJ1QTcZnUCiqduly-NDnXa1EWHeuhQgA71L6blnaQlrp9McffJrBFXeajuI0ymvD5refesa8RVsu49Qtbe9Vl7d8-6Rlwl6-ARsvavz9q_e9Y14ipZ9x8h65rPesLpRicpn_1yX9_s5r8fqyWXX2Wqt2bB341eFDTl8qXAFRuK06zsinIRJWUrF1gFCytYnoDFOVjamWuoPSvat4P9W3R3rOCunbl7C3PPCg7szMEtzH37W7k1Y2IfsnPu-e6_vwEAAP__AJRrMQ== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), min(b), max(c), count(d), avg(a+b+c::INT+d), stddev(a+b), variance(c::INT+d) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVl2L2kAUfe-vCPcp4gUzk8SPPI2sKwS62VbdpVBkSc1FBDeRSYSWxf9eZtLGRNaJ4Iu-Tc7c4zn3ngvjB6RZQlH8TjkEP4EBAgcEFxA8QPBhibCT2YryPJOqpCSEyW8IHIRNutsXCl4irDJJEHxAsSm2BAEs4l9bmlGckOw5gJBQEW-2WmYnN--x_COSuIgBYUZpQjKwhNe1bcG6gne6wg2CMFp00NIAqst_mILQ0pircFgeELJ9cbSSF_GaIGAHvNzueL2WtI6LTPb8ptv5y5MtvA4gPIWRLXx9Gv-wRV-dHp5fooUtBuqsK1kN1ef599kknE5twasaXqvhjRq3qnFrNW7nbJP8bJPH3vZpJhOSlDQaWx7MY2DOJ3Ng1Rx4NYf_nt9C5dWrOvAbuJ7WNIzGX9_mi8nk8dUWAxRDFKPjxet4Fo6jh0dbMAcFYyiYlqk2pBE8WsLviT5aYoCWGJ4dkdsYEbt8bdkNrG2L3Vpe_ftdW355JvwGMmmxW8tkcL-ZuJdn4t5AJi12a5kM7zcT7_JMvBvIpMVuLZPR_WbS8r9iRvkuS3M6eXo__2VHPcmUrKl8v_NsL1f0TWYrLVN-PmueBhLKi_KWlR9hWl4pg3UyM5J5g8xOydys3CLtGtmemexd49s3kvtm5f41ygMjeWhWHl6jPDJn5bSsiXnJTrWXhy9_AwAA__9_05Pq +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUVlFr4kAQfr9fEeYp4oDZTaIxTyu1QuCa3qktB4eUnBlEsIlsItxR_O9HNjQmUjcBX_RtMjOf3zfzDawfkKQxhdE7ZeD_BgYIHBBsQHAAwYUVwl6ma8qyVBYtJSCI_4JvIWyT_SEv0iuEdSoJ_A_It_mOwIdl9GdHc4pikgMLEGLKo-1O0ezl9j2S_0Qc5REgzCmJSfqGcPqmKVhf8F5f2L4fhEuvh4bKYFH9TBY5NFTSLgqwOiKkh_wkJsujDYHPjthd8GSzkbSJ8lQO3KbexcuTKZweIDwFoSlcFU1-mWJYRA_PL-HSFKMiVp2sllXx4ud8GsxmpuBVD6_18EaPXfXYtR67d3FIfnHI02yHJJUxSYobg62O-jUw64s9sGoPvNrDp-a3oNDqVBO4jbza1iwIJ9_fFsvp9PHVFCMUHorxqfA6mQeT8OHRFMxCwRgKpmiqG2kYj4ZwB2KIhhihIbyLK7IbK2LdD5fdxOG2CK45Nrzfw-XdXeE34UqL4Joro_t1xe7uin0TrrQIrrni3a8rTndXnJtwpUVwzZXx_brS8v9iTtk-TTI6e4K__mWreJop3lD5jmfpQa7ph0zXiqb8fFY4lYgpy8sqKz-CpCwVAutgpgXzBpidg7meuYXa1qIdPdi5RrerBQ_1zMNrmEdasKdn9q5hHuu9slrORH9k59yr47f_AQAA__84hZYa # Verify that local and final aggregation is correctly shared and de-duplicated. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), stddev(a), avg(a) FILTER (WHERE a > 5), count(b), avg(b), variance(b) FILTER (WHERE b < 8), sum(b) FILTER (WHERE b < 8), stddev(b) FILTER (WHERE b > 2) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzsVk2L4kAQve-vCHVyocB0PjTm1DIqBGad3ejMZVeGrClEcNLSSWCXwf--JJk1iZN0Al48eBDt6nr1nu91Q79DJEJaBm8Ug_sTGCAYgGACggUINmwQjlJsKY6FzFoKgBf-AVdH2EfHNMnKG4StkATuOyT75EDgwjr4fSCfgpDkUAeEkJJgf8hpjnL_Fsi_PAySABB8ikKSrsYZapz9SnXdJNt1XW-5Ro0b2Scvbp2yWHQZRQE2JwSRJqWYOAl2BC47YX_B091O0i5IhBzadb2r528Dzr4CwuqHP_MWi4_Vw9Pzcv1_p-jRFt7jeu5r3KjuN1XNM8qsTTbLbqvsqNXOE-qdDRPshgl24wS71USj1cTSuzQSMiRJYc24zUltM9PbfF54y-nj62o9m81fBtxAzrBimPXx69XL_oRdW43OXeNy0MvU96bLh_mAO8gnyJl-7pp8pmMMOcs4c8ba6cwOoznkFmrcRo2PhvnXGDXuoMYnrR6aNQ9Z_5vDbuLmdAiuRDq635y2m2P0T924idQ7BFdSH99Tb0vd7J-6eROpdwiupO7cU29L3eqfunUTqXcIrqQ-uafe523UYKJP8VFEMV28kZon69nbicIdFQ-tWKRyS9-l2OY0xfIpx-WFkOKk2GXFwouKrUxgFcyUYKMGZpdgQ83cQW0q0ZYabF2j21aCR2rm0TXMYyXYUTM71zBP1FnpHcdEfcguuTenL_8CAAD__3F9IF8= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzsVk-L4k4Qvf8-RaiTPygwnT8ac2oZFQKzzm505rIrQ9YuRHDS0omwy-B3X5K4mrhJJ-DFgwfRrq5X7_leN_QnxFLQPPqgBPzvwADBAgQbEBxAcGGFsFdyTUkiVdZSAALxC3wTYRvvD2lWXiGspSLwPyHdpjsCH5bRzx2FFAlSfRMQBKXRdpfT7NX2I1K_uYjSCBBCigUp3-AMDc5-HEzTJtf3_WC-9NDgVvbJq2uvVC36rFMFVkcEeUgvepI02hD47IjdNY83G0WbKJWq71YlL16_9Dj7HxAW38JJMJudVk8vr_Pl352ix5gFz8tpaHCrvF9Xtc8ouzLZvnQ7l45K7Tyh2lkzwa2Z4NZOcBtNtBpNvHh3iKUSpEhUjFsd9TYzs8nnWTAfP78vlpPJ9K3HLeQMS4Y5p1_vQfYn3MpqcO4aXga9jcNgPH-a9riHfIScmeeu0b90jCFnGWfOWDmg2XG0-9xBg7to8EE__xqiwbNjOWr00K54yLpfHnYvl6dFcynVwePyNF0eq3vw1r0E36K5FPzwEXxT8Hb34O17Cb5Fcyl47xF8U_BO9-Cdewm-RXMp-NEj-C7vpBoTQ0r2Mk7o6r1UP9nM3lEkNlQ8uhJ5UGv6quQ6pymWLzkuLwhK0mKXFYsgLrYygWUw04KtCphdgy09cwu1rUU7erBzi25XCx7omQe3MA-1YE_P7N3CPNJnZbYcE_0hu-ZeHf_7EwAA__90uyOn query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), avg(DISTINCT a), variance(a) FILTER (WHERE a > 0) FROM data] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8k8FruzAUx--_v0LeqT8I1KjdISel60Zgc8O6XjYPmXmI0BpJImwU__ehHjpLOxylO-Yln3w_PN7bQ6UkxmKHBtgrUCDgAQEfCARAYAEZgVqrHI1RunsyAFx-AHMJlFXd2K6cEciVRmB7sKXdIjBIxfsWExQS9dwFAhKtKLd9TK3LndCfoRRWAIEEK4maOSElTkjfGtf10WWM8TiFrCWgGnuIMVYUCIy25IzKwaCplJaoUY7Ss_aEbFQUGgthlZ4vxq7rl8dZSP8DgWhzP7vl65THy9QZSpso4VG8XHUvnDv-kK4SJ_TOSnsjaTq9f_TK_fOmq3hXVvGnq_hXVgmmqwR_OOAnVBI0taoMHg366Z_dbgFQFjhsi1GNzvFZq7yPGY5PPdcXJBo73NLhwKv-qhf8DtMf4ZsR7B7D3iXJ_iVwcAm8-BWctf--AgAA___gL8Aj +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8k1FrqzAUx9_vp5Dz1AuBGrWXS56UrhuBzQ3r-rL5kJmDCK2RJMJG8bsP9aGztMNRusec5Jf_j8M5e6iUxFjs0AB7AQoEPCDgA4EACCwgI1BrlaMxSndPBoDLd2AugbKqG9uVMwK50ghsD7a0WwQGqXjbYoJCop67QECiFeW2j6l1uRP6I5TCCiCQYCVRMyekxAnpa-O6PrqMMR6n_yFrCajGHnKMFQUCoy0543JQaCqlJWqUo_isPWEbFYXGQlil54ux7Pr5YRbSv0Ag2tzNbvg65fEydYbSJkp4FC9X3Qvnlt-nq8QJvbPS3kiaTm8gvXYDveku3rVd_Oku_rVdgukuwW8O-QmXBE2tKoNHw376Z7dbApQFDhtjVKNzfNIq72OG42PP9QWJxg63dDjwqr_qBb_C9Fv43wh2j2HvkmT_Eji4BF78CM7aP58BAAD__-WFwTs= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), avg(a), count(a), stddev(a), variance(a) FROM data] @@ -132,7 +132,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lF-L4jAUxd_3U8h9WiFg80 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT max(a), min(b) FROM data HAVING min(b) > 2] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyslEGLozAUx-_7KeSdZiAwJtpOJyfnsuBh2qX0sLDrIWseIlgjSYRdit99UQ_V0kahOSbxn9_7-cK7QK0k7sUZDfBfQIEAAwIREIiBwAYyAo1WORqjdP_JGEjlX-AhgbJuWttvZwRypRH4BWxpKwQOJ_GnwiMKifotBAISrSirAdPo8iz0v0QKK4DAobU8SChJGGQdAdXa663GigKB046sJ38WhcZCWKXfNnPw1-fPl4S-AoGvdP-SsNeHQPYQeOW0tdISNcoZJOvcJdFwqSYC38vKouZBwoLfbRhGGDDOebo_Paw3mtVL17eG-m3NAnnyH7Z-WsPWqzK_qgvkieq7H9VovWrkV3WBPFHd-VGN16vGflUXyBPVD_-z5Q7wiKZRtcGbGXP_5rCfPSgLHAeVUa3O8YdW-YAZl4chN2xINHY8peMircejvsBpmDrDbBamt2HmJi-gI2c6dofjZ-reOMNbN3n7DPndGd65ybtnyB_uXoULz8T9yG7ZWfftfwAAAP__UEC-Jw== +https://cockroachdb.github.io/distsqlplan/decode.html#eJyslEGLozAUx-_7KeSdZiAwJtqOk5NzWfAwnWXoYWHXQ9Y8RLBGkgi7FL_7oh6qpY1Cc0ziP7_384V3hkZJPIgTGuC_gAIBBgQiIBADgR3kBFqtCjRG6eGTKZDJv8BDAlXTdnbYzgkUSiPwM9jK1ggcjuJPjV8oJOqXEAhItKKqR0yrq5PQ_1IprAACn53lQUpJyiDvCajOXm41VpQInPZkO_m9LDWWwir9sluCP95_PqX0GQh8ZIenlD3fBbK7wAuna5SWqFEuIHnvLomGazUR-F7VFjUPUhb87sIwwoBxzrPDMblbcLQomG7vDfXbmxXy7Efs_fSGbVdlflVXyDPVVz-q0XbVyK_qCnmmmvhRjberxn5VV8gz1Tf_w-UG8AtNqxqDV0Pm9s3hMHxQljhNKqM6XeAPrYoRMy0_x9y4IdHY6ZROi6yZjoYC52HqDLNFmF6HmZu8go6c6dgdjh-pe-cM793k_SPkV2c4cZOTR8hv7l6FK8_E_ciu2Xn_7X8AAAD__1N9vl8= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT DISTINCT (a) FROM data] @@ -152,28 +152,28 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslE_LozAQh-_7KcqcthCoif query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT DISTINCT a, b FROM data WHERE (a + b + c::INT) = 27 ORDER BY a,b] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzElE-LozAYxu_7KeQ9zdDAmGj_TGDBw7LQy3QpvS0esualCNZIEmGX4ndfNGDXso2CHbyUanzye_i9IVcolcQPcUED_CdQIMCAQAQEYiCwhpRApVWGxijdfuICe_kbeEggL6vatq9TApnSCPwKNrcFAoeT-FXgEYVE_RYCAYlW5EWHqXR-EfpPIoUVQOB7XljUPHh5SWiwChL22v5GnO8_Tq_B14BtefcfCBxqy4OEkoRB2hBQtb0VMFacEThtyPSS33Jj8zKzb-thQ4cgcNASNcoxJnvIvKGU2-qesyIJW0Ha-MrRcFa7aNCOTh8bXWxsIyV7M5snjo1NF8MWEzNSshezfaKYaLqYaDExIyV7Mbsniomni4kXEzNSshfz_kk34H-YRzSVKg0OiI92DturEeUZ3XVqVK0z_KFV1mHc46HLdS8kGutWqXvYl26pLfhvmHrDbBCm92HmJ4-gI2869ofjOb3X3vDGT97MIW-94Z2fvJtDfvfPKhw5Jv5Dds9Omy9_AwAA__9hte_R +https://cockroachdb.github.io/distsqlplan/decode.html#eJzElEGLozAYhu_7K-Q7zdDAmGhbJ7DgYVnoZboMc1s8ZM1HEayRJMIuxf--aMCuZRsFO3gpxPTN8_J8IReolMQ3cUYD_CdQIMCAQAQEYiCwhYxArVWOxijd_cUFDvI38JBAUdWN7T5nBHKlEfgFbGFLBA4f4leJ7ygk6pcQCEi0oih7TK2Ls9B_UimsAALfi9Ki5sHTU0qDTZCy5-434vzw9pE8B18DtuduAQSOjeVBSknKIGsJqMZeKxgrTgictmR-zW-FsUWV25ftuKNDEDhqiRrlFJPdZV5Ryh11y9mQlG0ga33laLioXTRqR-cPjq44uImag5vdAwfH5qthK6qZqDmo2T9QTTRfTbSimomag5rkgWri-WriFdVM1BzUvH7SS_gf5juaWlUGR8R7J4fdE4nyhO5ZNarROf7QKu8xbnnsc_0Hica6XeoWh8ptdQX_DVNvmI3C9DbM_OQJdORNx_5wvKT31hve-cm7JeS9N5z4yckS8qt_VuHENfFfslt21n75GwAA__-pQPIB query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT DISTINCT a, b FROM data WHERE (a + b + c::INT) = 27 ORDER BY b,a] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzElEFr2zAUx-_7FOadWvwgkew0jWDgwxjk0oyut-GDZj2KIbWCJMNG8XcftsCdwyI7OMOXEEn56_fPj4feodKKnuQbWRA_gAECB4QEEFJA2ECOcDK6IGu1aX_iA3v1C8QaoaxOtWu3c4RCGwLxDq50RwIBL_LnkZ5JKjKrNSAocrI8dpiTKd-k-Z0p6SQgfC2PjoyI7u4yFsVRxu_bz0SI_dPLffQ54lvRfQeEQ-1ElDHMOOQNgq7dRwHr5CuBYA1OL_mltK6sCrfaDBt6BMLBKDKkxpj8IvMDpf1V55wYMx5D3oTKsfWsdsk1Rr5r48isGDtD8hgzFl9kpAMGmz4abLHRGCnZ23-44Wjw6WL4YmJGSvZitjcUk0wXkywmZqRkL-bxhmLS6WLSxcSMlOzF7P7TK_sP5jPZk64sDYiXbl63zy-pV_JPttW1Keib0UWH8ctDl-s2FFnnT5lf7Ct_1Bb8O8yCYT4Is_MwD4aTMDkJ1-bhdBpMb8LhzZw__RAMb8Pk7RzyYzC8C5N3c8hsZMbGhuy6KcubT38CAAD__ykXJA8= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzElEFr2zAUx-_7FOadWvwgkew0iWDgwxjk0oyut-GDZj2KIbWCJMNG8XcftsCdwyK7OMOXgKT89fv7x0NvUGlFj_KVLIgfwACBA0ICCCkgbCBHOBtdkLXatH_xgYP6BWKNUFbn2rXbOUKhDYF4A1e6E4GAZ_nzRE8kFZnVGhAUOVmeOszZlK_S_M6UdBIQvpYnR0ZEd3cZi-Io4_ftbyLE4fF5dx99jvhW-AUgHGsnooxhxiFvEHTt3itYJ18IBGtwes0vpXVlVbjVZtjRIxCORpEhNcbkV5nvKO2vuuTEmPEY8iZUjq1ntUs-YuS7No7MirELJI8xY_FVRjpgsOnDwRYcjpGavf-HGw4Hn66GL6hmpGavZntDNcl0NcmCakZq9mp2N1STTleTLqhmpGavZv-fXtt_MJ_InnVlaUC8dvO6fYZJvZB_uq2uTUHfjC46jF8eu1y3ocg6f8r84lD5o7bg32EWDPNBmF2GeTCchMlJuDYPp9NgehMOb-Z89EMwvA2Tt3PIu2B4Hybv55DZyIyNDdnHpixvPv0JAAD__x5wJj8= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT c, d, sum(a+c::INT) + avg(b+d) FROM data GROUP BY c, d] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUll1r4k4Uxu__n0LOVUvnj56ZiS-5mrJXQjdduvZiWaSkZrBC68gkwpbid19ibDWmPUcxK3oXY345L88zD3mDqUtsFL_YFMLfgCBAggAFAjQICGAoYObdyKap8_kjBdBP_kDYEjCZzuZZfnsoYOS8hfANskn2bCGEQfz4bO9snFjfbIGAxGbx5HlZZuYnL7F_NUmcxSDgzk4T68OGwSujwrAfDUTDyCujRcMo0TAahgsBbp6ti6VZPLYQ4kLs3tD1eOztOM6cbwblfowSJh_3Ovr1EN0OHqL7m5sLoy4rt3R-6-f99wuDH1cyv_p2ex8NltflVtfVH18bT3H6tFUYhZEwXKwnkl9OtH7VfOp8Yr1NSi9bvoWYGVuf1d6eEKtDy49R1cfV-yIe-vnYwWVJxVy9d-maJvhSPbWPepH7382auKVctegVYRdd73KLlmRr68nPawel2rj72cGjnB2moQ0ftc_k7GCdZwdP--ww6q3OTru-syN39688in-Zhja07JyJf2Wd_pWn7V9GvZV_O_X5V-3uX3UU_zINbWjZPRP_qjr9q07bv4x6K_926_Ov3t2_-ij-ZRra0LJ3Jv7VdfpXn7Z_GfVW_u39m2_vTwre2XTmpqnd6cu6lS_fJmNbKJW6uR_ZH96NlmWKn7dLbnkjsWlW_IvFj_60-CtvcBPGbRg3YVmCcT-4cwiMeBAdHET3aFqSC1f0whUJa7qyJmHJaB2QdJuG24cYhYYZo9AwZxSGZozC0IxROuTCu_TCu4cYpUdnQosJhUqk7JUKNM3FAk2zucDgXDAwOCM4VoKlvHfJ7J1OFkZzpKMFNVO8Ei57iU7TnOg0zYrO4JzoDM6JTucqMsGKlYzZS3Q6Y5AJGaykzF6i0zQnOk2zojM4JzqDc6LTCSuZhJX0R9u26MPFf38DAAD__5Y6yYc= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUll1r4k4Uxu__n0LOVUvnj56ZiS-5mrJXQjdduvZiWaSkZrBC68gkwpbid19ibDWmPUcxK3oXY345L88zD3mDqUtsFL_YFMLfgCBAggAFAjQICGAoYObdyKap8_kjBdBP_kDYEjCZzuZZfnsoYOS8hfANskn2bCGEQfz4bO9snFjfbIGAxGbx5HlZZuYnL7F_NUmcxSDgzk4T68OGwSujwrAfDbqiYeSV0aJhlGgYDcOFADfP1tXSLB5bCHEhdu_oejz2dhxnzjeDckNGCZPPex39eohuBw_R_c3NhVGXlVs6v_Xz_vuFwY8rmV99u72PBsvrcqvr6o-vjac4fdoqjMJIGC7WE8kvJ1q_aj51PrHeJqWXLd9CzIytz2pvT4jVoeXHqOrj6n0RD_187OCyJGOu3rt0TRN8qZ7aR73I_e9mTdxSrlr0irCLrne5RUuytfXk57WDUm3c_fDgcQ4P09GGkdpncniwzsODp314GPVWh6dd3-GRuxtYHsfATEcbYnbOxMCyTgPL0zYwo97KwJ36DKx2N7A6joGZjjbE7J6JgVWdBlanbWBGvZWBu_UZWO9uYH0cAzMdbYjZOxMD6zoNrE_bwIx6KwP3_s339ycF72w6c9PU7vR13cqXb5OxLZRK3dyP7A_vRssyxc_bJbe8kdg0K_7F4kd_WvyVN7gJ4zaMm7Aswbgf3DkERjyIDg6iezQtyYUreuGKhDVdWZOwZLQOSLpNw-1DjELDjFFomDMKQzNGYWjGKB1y4V164d1DjNKjM6HFhEIlUvZKBZrmYoGm2VxgcC4YGJwRHCvBUt67ZPZOJwujOdLRgpopXgmXvUSnaU50mmZFZ3BOdAbnRKdzFZlgxUrG7CU6nTHIhAxWUmYv0WmaE52mWdEZnBOdwTnR6YSVTMJK-qNtW_Th4r-_AQAA__9W18qf query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT c, d, sum(a+c::INT) + avg(b+d) FROM data GROUP BY c, d ORDER BY c, d] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzUl19r4kAUxd_3U8h9anEWnT-xbZ6m7JPQjUtrH5ZFSmoGK7SOTFLYUvzuS0xak7jeq0wVfYujJ-fm3vs7xHeY2cRE8YtJIfwDHBgIYCCBgQIGAYwYzJ0dmzS1Lv9JIegnfyHsMpjO5q9ZfjxiMLbOQPgO2TR7NhDCMH58NrcmTozrdIFBYrJ4-ry0mbvpS-zedBJnMTC4NbPEuLCleVvLMOxHQ9bSoq0Va2nJWlrBaMHAvmYrszSLJwZCvmDbF3RnXWZcJ6jXomWbadXeaCF2sbieTJyZxJl1Hd5t-jCdt3TgEuNMErY-Dq6j3w_RYPgQ3d_cnGl5vnak8qO7-59nmn9eifzqx-A-Gi6v68Wv6nl8az3F6VOjEs60gNFi9Yxy4zOubmWLupu3ajMt2sXNsGY0m74sodqM8qD-5Hy9GeKzBfLz6qNBD_28HcF5baXyVfrYo44ONs5Z7TLnyH63845ojHjdtI3sbrCXppeV1fu9qYRerQS-Pc_8IDwTBZU893x4JiyqK8xPlWe-B56bTT92nok5l9Twr-NZbA-TOAhMREElTBc-MBEW1f0RpwqT2ANMzaYfO0zEnEuYxNfBJLeHSR4EJqKgEqZLH5gIi-r-yFOFSe4BpmbTjx0mYs4lTPLrYFLbw6QOAhNRUAnTlQ9MhEV1f9SpwqT2AFOz6ccOEzHnEia1n79t_zG8NenczlKz1b-xbj4Nk0xMMcHUvrqx-eXseGlTfBwsdcuDxKRZ8S0vPvRnxVd5gVUxR8UCF4ummFfFsibmu4mvfMRceam9vAXhLdGGK7zhChUHuHOAj7qHW_dQ9QUuvkDFl7j40mfLcDExaVxMbRmh9vKmtuwKz4QuEQp4pBB7xvFM4USo8DW-6nJJyNcA22VdCDUxM0JNLQwl93OnVobj4cIDou94vFA7g8cLJ_KF4wHDiYThXhFDqKmp-YUMJfdzJ3cGzxlB5IzwyhlBvLtQLy94zggiZ4RXzhBq6g3EL2couZ87tTMCzxlB5IzYLWdGi2__AgAA___m_AKo +https://cockroachdb.github.io/distsqlplan/decode.html#eJzUl19r4kAUxd_3U8h9asksOn9ibZ6m7JPQjUtrH5ZFSmoGK7RGJilsKX73JSatSVzvVUZF3-Loybm59_4O8QNmSWzC6NWkEPwBDgwEMJDAQAEDH0YM5jYZmzRNbP6TQtCP_0LQYTCdzd-y_HjEYJxYA8EHZNPsxUAAw-jpxdyZKDa23QEGscmi6cvSZm6nr5F913GURcDgzsxiY4OW5p6WQdAPhz3W0sLTirW0ZC2tYLRgkLxlK7c0iyYGAr5g21d0n9jM2LZfL0ZLj2nlbbQQu1jcTCbWTKIssW3eafownfd0YGNjTRy0Pg9uwt-P4WD4GD7c3l5oebl2pPKj-4efF5p_XYn86sfgIRwur-vFr-p5em89R-lzoxLOtIDRYvWMcuMzrm6VFHU3b-UxLbziZlgzmk1fllBtRnlQf3K-3gzx1QL5dfXZoMd-3g7_srZT-Sp97lFb-xvnrHaZc5h8T-Zt0RjxuqmH7K5_kKaXldX7vamEbq0Evj3Q_DhAExWVQHddgCYsqjvMzxVofgCgm00_daCJOZfY8P0BLbanSRyHJqKikqYrF5oIi-oCiXOlSRyApmbTT50mYs4lTWJ_NMntaZLHoYmoqKSp50ITYVFdIHmuNMkD0NRs-qnTRMy5pEnujya1PU3qODQRFZU0XbvQRFhUF0idK03qADQ1m37qNBFzLmlSh_nr9h_DO5POk1lqtvpH1smnYeKJKSaYJm92bH7ZZLy0KT4OlrrlQWzSrPiWFx_6s-KrvMCqmKNigYtFU8yrYlkT893E1y5irpzUTt6C8JZowxXecIWKfdzZx0fdxa27qPoKF1-h4h4u7rlsGS4mJo2LqS0j1E7e1JZd45nQIUIBjxRizzieKZwIFb7GV10uCfkaYLusC6EmZkaoqYWh5G7u1MpwPFy4T_QdjxdqZ_B44US-cDxgOJEw3CliCDU1NbeQoeRu7uTO4DkjiJwRTjkjiHcX6uUFzxlB5IxwyhlCTb2BuOUMJXdzp3ZG4DkjiJwRu-XMaPHtXwAAAP__cBoDwA== # There should be no "by hash" routers if there is a single stream. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT c, d, sum(a+c::INT) + avg(b+d) FROM data WHERE a > 9 GROUP BY c, d] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkkFrs0AQhu_fr5A5JWQ-4qq97GlyKoHUlDQplCJh6w4iJK7srtAS_O9FPTS21LbHeWee8ZHZC1RGc6rO7EA-gwCEG8gQamtyds7YLh6G1voVZIhQVnXjuzhDyI1lkBfwpT8xSEjNf1MvI0DQ7FV56sdaBNP4D8h5VTDIuMWrxWJ68V69nHjHSrNdhqP1UNvyrOwbaeUVIOy40mxlQGJBsZTrdI8BRQtKMKAYA0rgOyHxF6FVUVgulDd2KcY-FCMlgLBKn47pdn9MD5vNjOL5lyjpoofD3YxE33y8nVE0H_1Cp955Lya0o5H2DwfasatN5fhXFwrbDIF1wcMjcKaxOd9bk_efGcptz_WBZueHbjwU62podYLXsJiEo2k4moTDT3DW_nsPAAD__yGu6Vg= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUksFKw0AQhu8-RZhTS0eaTSLInqYnKdRUaiuIhLJmhxBos2F3C0rJu0uSg41i1OP8M9_kC7NnqIzmVB3ZgXwBAQg3kCHU1uTsnLFt3A8t9RvIEKGs6pNv4wwhN5ZBnsGX_sAgITXXpp5HgKDZq_LQjTUI5uQ_IedVwSDjBi8Wi_HFW_V64A0rzXYeDtZDbcujsu-klVeAsOFKs5UBiRnFUi7T7S0GFM0owYBiDCiBn4zEf4wWRWG5UN7YuRgKUYyUAMIifd6n6-0-3a1WE4qn36KkjR539xMSXfPpbkLRdPAPrXrrPRvRjgbav1xow642leM_nShsMgTWBfevwJmTzfnBmrz7TF-uO64LNDvfd-O-WFZ9qxW8hMUoHI3D0SgcfoGz5uojAAD__9rv6ZA= query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT sum(a), sum(b), sum(c) FROM data GROUP BY d HAVING sum(a+b) > 10] @@ -211,7 +211,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslE2rozAUhvfzK4Z3NQOBGr query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT max(t.a), min(t.b), avg(t.c) FROM (VALUES (1, 2, 3), (4, 5, 6), (7, 8, 0)) AS t(a, b, c) WHERE b > 3] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkE1L9DAUhffvryhn1YHAJO0uq3bzShdTRUQE7SK0l1KIvSUfIgz979JmoSOM6C733DznCTlj5oFa80oe-hkKncDiuCfv2W1RutAM79BSYJqXGLa4E-jZEfQZYQqWoGG5NzZ7MzaSz-RRQmCgYCa7N_-fbCCns6rIXqKUJWWl1rppH9CtAhzDZ7EPZiRotYrfy-txdDSawO6oLsWn-imv1AECp6bNq2I71Y83eVUerqqLv6jvyS88e7rQXmuWaydAw0jpbz1H19Od437XpPF25_ZgIB_SVqWhmdNqe-BXWP0IF9_gbv33EQAA___td6KP +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkM1KxDAUhfc-RTmrGQhM0m4kq3ajdDFVRETQLkJ7KYXYW_IjwtB3lzYLHWFEd7nn5jtfyAkT99SYN_LQL1BoBWbHHXnPbo3Shbr_gJYC4zTHsMatQMeOoE8IY7AEDcudsdm7sZF8Jg8SAj0FM9qt-Wa0gZzOyjx7jVIWlBVa67p5vEa7CHAMX80-mIGg1SL-bq-GwdFgAruDOjcfq-ddqfYQONbNrszXU_V0uyuL_UV1_h_1A_mZJ09n2kvNcmkFqB8ofa7n6Dq6d9xtmjTebdwW9ORD2qo01FNarQ_8Dqtf4fwH3C5XnwEAAP__aQiixw== query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM (VALUES (1, '222'), (2, '444')) t1(a,b) JOIN (VALUES (1, 100.0), (3, 32.0)) t2(a,b) ON t1.a = t2.a] @@ -224,12 +224,12 @@ CREATE TABLE nullables (a INT, b INT, c INT, PRIMARY KEY (a)) query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT array_agg(a) FROM (SELECT a FROM data WHERE b = 1 AND c = 1.0 AND d = 1.0 ORDER BY a)] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFFro0AQx9_vU8g8KbdcXDXHsXCgXC5ByCWH5KUUKVt3EMG4srtCS_C7F5U2tTStJS8-7ow_5_9bmD1BJQXu-BE1sFugQMADAj4QCIDAElICtZIZai1V98kAxOIBmEugqOrGdOWUQCYVAjuBKUyJwODA70tMkAtUCxcICDS8KPsxtSqOXD2GghsOBNZFaVAxy7ZDz_ptUcZYvDs4VrRbWXbod6UfLmNsvd1Hh1_OcyN4aaz-_on_RVsHCOwbw6yQQtoSkI05x9OG5wiMtuSCwjm5VAIVinHmkH6HtH3HM8pzhTk3Ui2WYyRKkujmLtps7JA6FxN5o0R0-qXSmV6qN13Bm6mCP13Bn6lCMF0hmKnCJw9MgrqWlcZR-kt_drvVRZHjsOpaNirD_0pm_ZjhuO-5viBQm6FLh0Nc9a0-4GuYfgj_HMHuW9i7ZrJ_DRxcAy-_BKftt6cAAAD__-b08nc= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFGLm0AQx9_7KWSelC6Nq6aEhYLSNEFIkyJ5KUXKnjuIYFzZXeGO4Hc_VO5yHpc7j7z4uDP-nP9vYfYMlRS45yfUwP4BBQIeEPCBQAAElpASqJXMUGupuk8GIBb3wFwCRVU3piunBDKpENgZTGFKBAZHfldiglygWrhAQKDhRdmPqVVx4uohFNxwILApSoOKWbYdetYPizLG4v1x5VjRfm3Zod_VvrmMsc3uEB1XzlMjeG6sf_2Mf0c7BwgcGsOskELaEpCNueTThucIjLbkisMlulQCFYpx6JB-hbR9QzTKc4U5N1ItlmMkSpLo7_9ou7VD6lxN5I0S0em3Sud6q950B2-uDv50B3-uDsF0h2CuDh-8MgnqWlYaR_Gv_dnt1hdFjsO6a9moDP8omfVjhuOh5_qCQG2GLh0OcdW3-oAvYfou_H0Eu69h75bJ_i1wcAu8_BSctl8eAwAA___sfPOP query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT json_agg(a) FROM (SELECT a FROM data WHERE b = 1 AND c = 1.0 AND d = 1.0 ORDER BY a)] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFGLm0AQx9_7KWSelC6Nq6aUhYLSNMGSaknzVqRs3UEE48ruCj2C3_1Quct5XO488uLjzvhz_r-F2TPUUmDCT6iB_QEKBDwg4AOBAAisISPQKJmj1lL1n4xALP4DcwmUddOavpwRyKVCYGcwpakQGBz5vwoPyAWqlQsEBBpeVsOYRpUnru5CwQ0HAtuyMqiYZduhZ321KGMsTo6OFSUbyw79vvTJZYxt92l0_OI8NILHxub7t_hntHeAQNoaZoUUso6AbM0lnja8QGC0I1cULsmlEqhQTDOH9CNk3QueUVEoLLiRarWeIj9-p8nfaLezQ-pcDeRNAtH5d0oXeqfefAVvoQr-fAV_oQrBfIVgoQpvvC8H1I2sNU7SX_uz228uigLHTdeyVTn-UjIfxozHdOCGgkBtxi4dD3E9tIaAT2H6Kvx5ArvPYe-Wyf4tcHALvH4XnHUf7gMAAP__I8nyMg== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlFGLm0AQx9_7KWSelC6Nq6aEhYLSNMGSaknzVqRs3UEE48ruCi3B715UejmPy51HXnzcGX_O_7cwe4FaCkz4GTWwn0CBgAcEfCAQAIE1ZAQaJXPUWqr-kxGIxR9gLoGyblrTlzMCuVQI7AKmNBUCgxP_XeERuUC1coGAQMPLahjTqPLM1d9QcMOBwK6sDCpm2XboWZ8syhiLk9PGsaJka9mh39c-uIyx3SGNThvnfyN4aGy_fI6_RQcHCKStYVZIIesIyNZc82nDCwRGO3LD4RpdKoEKxTR0SN9D1j0jGhWFwoIbqVbrKfL1R5r8ivZ7O6TOzUDeJBCdf6l0qZfqzXfwlurgz3fwl-oQzHcIlurwyiNzRN3IWuMk_q0_u_32oihw3HYtW5XjdyXzYcx4TAduKAjUZuzS8RDXQ2sI-BimL8IfJ7D7FPbumezfAwf3wOs3wVn37l8AAAD__ygF80o= # Test that orderings on GROUP BY columns are propagated through aggregations. statement ok diff --git a/pkg/sql/opt/exec/execbuilder/testdata/distsql_indexjoin b/pkg/sql/opt/exec/execbuilder/testdata/distsql_indexjoin index 2252e3398e60..0333fc620b4a 100644 --- a/pkg/sql/opt/exec/execbuilder/testdata/distsql_indexjoin +++ b/pkg/sql/opt/exec/execbuilder/testdata/distsql_indexjoin @@ -29,18 +29,18 @@ NULL /10 1 {1} 1 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM t WHERE v > 10 AND v < 50] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkLFKBDEYhHufIkylEDCr2KQ6QYRtVjmu0xQxGY7A3mZJsqAceXe5DbJYCJYzXzIz_GdM0XOwJ2boN3QwEnOKjjnHdLHag95_QiuJMM1LudhGwsVE6DNKKCOhcbAfI_e0nulWQcKz2DCusXMKJ5u-dgUSz2EsTFpc7-7E-6LUPUWntNb9cLgRj8PTBpx4-AEwVSIuZWvPxR4J3VX5_4V75jlOmb_G_ZWsqpGgP7JdIcclOb6m6NaaJl_Wf6vhmUujXRP91FA19eo7AAD__5Kmcow= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyMkMFKAzEYhO8-RZiTQsCsIkhOFUTYyyqlN80hJkMJbDdLkgWl5N2lG7B4EHqc-ZKZ4T9iip6DPTBDv6ODkZhTdMw5ppPVHvT-C1pJhGleysk2Ei4mQh9RQhkJjZ39HLml9Uy3ChKexYZxjZ1TONj0vSmQeAljYdLienMnPhal7ik6pbXuh93jjXgans_EiYdfAlMl4lLO_bnYPaG7Ki_fuGWe45T5Z95_yaoaCfo92x1yXJLjW4purWnydf23Gp65NNo10U8NVVOvfgIAAP__TJBy_A== 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#eJyUkEFLxDAUhO_-ijInxcAmFS85rSBCL1XWvWkPsXksgW5TXl5BWfrfpQ2yrrCixzeT-WbIAX30VLs9JdgXGDQKA8eWUoo8S_lB5d9htULoh1FmuVFoIxPsARKkI1hs3VtHG3KeeKWh4Elc6BbswGHv-GMtUHgInRDb4nJdFq-j1jdUGG2trertVXFX3x-Ntrj9MtBMCnGUY3sStyNYM6m_L3yOLMQrczpuXV6fxZf_wW8oDbFPdII_R9ZTo0B-R_mTUxy5pSeO7VKTz8cltwiekmTX5KPqszUP_B42v4bLH-FmuvgMAAD__wIYpYk= +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkEFLxDAUhO_-ijInxcAmFUFyqiBCL1XWvWkPsXkshW5TXl5BWfrfpQ24rrDiHt9M5pshe_TBU-V2FGFfYVArDBwaijHwLKUHpf-A1QptP4wyy7VCE5hg95BWOoLFxr13tCbniVcaCp7Etd2CHbjdOf4sBAqPbSfENrss8uxt1PqGMqOttWW1ubvK7quHg9Nkt98O6kkhjHLoj-K2BGsm9f-NL4GFeGWO5xX59Ul8fg5-TXEIfaQj_CmynmoF8ltK3xzDyA09c2iWmnQ-LblF8BQluSYdZZ-seeDPsPkznP8K19PFVwAAAP__AEKl-Q== # 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#eJyUkEFLw0AUhO_-imVOigvdTfGypwgi9NJK7U1zWLOPEkiz4e0LKCX_XZpFYoWKHt_MznzDHtHFQGt_oAT3AotKo-dYU0qRT1J-sArvcEaj6fpBTnKlUUcmuCOkkZbgsPNvLW3JB-KFgUYg8U071fbcHDx_lAKNx6YVYqeuy0K9DsYsSVnjnFutdzfqfv0wG7W6-zKgsRnEqbLQ5RLVqBEHmack8XuCs6P--9znyEK8sOdLS3s7sy6Civ-AtpT62CU6A11qNmOlQWFP-e9THLimJ471hMnnZspNQqAk2bX5WHXZOg38Hra_hosf4Wq8-gwAAP__myirDw== +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkEFLxDAUhO_-ijAnxcAmXQTJqYIIvXRl3Zv2EJvHUug2JXkFZel_lzZgXWHFPb6ZzHxDjui8o9IeKMK8QqOS6IOvKUYfJik9KNwHjJJoun7gSa4kah8I5ghuuCUY7Ox7S1uyjsJKQcIR26ada_vQHGz4zBkST03LFIy4zjPxNii1JqGVMaYod_c34qF8XJxa3H07kNgMbESeyXyNapTwAy9jIts9wehR_n_wiw9MYaVPt-b6dmGdBWWXgLYUe99FOgGda1ZjJUFuT-n3ox9CTc_B1zMmnZs5NwuOIidXp6PokjUN_BnWf4azX-FqvPoKAAD__6Niq38= # The single join reader should be on node 5, and doesn't need to output v. query T diff --git a/pkg/sql/opt/exec/execbuilder/testdata/distsql_interleaved_join b/pkg/sql/opt/exec/execbuilder/testdata/distsql_interleaved_join index c13831bdb920..c89ffe75a8bc 100644 --- a/pkg/sql/opt/exec/execbuilder/testdata/distsql_interleaved_join +++ b/pkg/sql/opt/exec/execbuilder/testdata/distsql_interleaved_join @@ -236,7 +236,7 @@ SELECT url FROM [EXPLAIN (DISTSQL) OR pid1 >= 31 AND pid1 <= 33 ] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE9r3DAQxe_9FGJOu3RKLDlpqWBBhVJwKd5iemt9ENbEETiSkeTSEvzdi-0u8Yb0Xwohh71ZevPjDX6juQHnDZX6miLIz8ABQQDCBdQIffANxejDJC2FhfkGMkOwrh_SdF0jND4QyBtINnUEEgqXKHSkv1JF2lB4762jcJYBgqGkbTc7faDLBJOHvdbhu-p1IJcm-0lg72yXKEi22SjOvgxZljc7xnMpZVF-2rJ9tVJox_jrg_KmfMvWjOA_le1CraD8IAFCZdurdTtt0M40V7Yz4qA-ek_LfwOEji7TRvHn212YGpk_AWE_JMkURyVQnaO6QPUS1SuoRwQ_pNt8YtItgeQj_iLD2-gG54OhQOYoq3q8J-XSv_D9WX6n8H5rcWTNHzQ-_DQ-T2h8xIMyFKcMn1CGf1jjFcXeu0h_9cKzaUWQaWnZJ9EPoaGPwTezzXLcz9x8YSimReXLoXCzNDe4hvlv4fMjOLsLi_9xzv8JrsdnPwIAAP__gf0kvQ== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE9r3DAQxe_9FGJOu3RKLDnpH8GCCqXgUrzF9Nb6IKyJI3AkI8mlJfi7F9sk8Yb0X3pIDnuz9ObHG_xGcwXOGyr1JUWQX4ADggCEM6gR-uAbitGHSVoKC_MdZIZgXT-k6bpGaHwgkFeQbOoIJBQuUehIf6OKtKHwwVtH4SQDBENJ2252-kjnCSYPe6nDD9XrQC5N9pPA3tsuUZBss1GcfR2yLG92jOdSyqL8_HrL9tVKoh3jb26kt-U7tqYEv5a2C7fC8hsNECrbXqxbaoN2prmwnRHX6qP0tfw_QOjoPG0Uf77dhamZ-RMQ9kOSTHFUAtUpqjNUL1G9gnpE8EO6zSkm3RJIPuIvsryNcHA-GApkDjKrx3vSLv0L35_kdwrvtxYH1vxBY8SPY_QEx0g8KEtxzPIJZvmH9V5R7L2L9FcvPptWBpmWlv0S_RAa-hR8M9ssx_3MzReGYlpUvhwKN0tzg2uY_xY-PYCzu7D4H-f8n-B6fPYzAAD__4MtKf0= query T SELECT url FROM [EXPLAIN (DISTSQL) @@ -246,7 +246,7 @@ SELECT url FROM [EXPLAIN (DISTSQL) OR pid1 >= 31 AND pid1 <= 33 ] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE-L2zAQxe_9FGJOCZ2ylr1LqSCgQim4FKeY3lofhDXrFXglI8mlZfF3L7Yb4oT0Xwolh9wsvfnxBr_RPIF1mgr1SAHEJ-CAkALCHVQInXc1heD8KM2Fuf4KIkEwtuvjeF0h1M4TiCeIJrYEAnIbybekvlBJSpN_54wlf5MAgqaoTDs5vaf7CKOHeVT-m2y8srp-MK0e7UeRvTVtJC_YaiU5-9wnSVZvGM-EEHnxcc225UKhDeOvdsrr4g1bMin_oaxnagFlOwkQStM8LFvqlCcb-U757_3M_w0QWrqPK8mfrzd-bGT6BIRtHwWTHGWKMkN5i_IO5UuoBgTXx30-IaqGQPABf5LhPrreOq_Jkz7IqhpOpFy4F667yY4KT1unB9b8rPHh1_G5oPFJz8owvWZ4QRn-Zo2XFDpnA_3RC0_GFUG6oXmfBNf7mj54V08283E7cdOFphBnlc-H3E7S1OAS5r-Ebw_g5BhO_8U5-yu4Gp59DwAA__8zXSS0 +https://cockroachdb.github.io/distsqlplan/decode.html#eJzslE-L2zAQxe_9FGJOCZ2ylr1LW0FAhVJwKU4xvbU-CGvWK_BKRpJLy-LvXmyzGyek_9JDc8jN0psfb_AbzQNYp6lQ9xRAfAYOCCkg3ECF0HlXUwjOj9JcmOtvIBIEY7s-jtcVQu08gXiAaGJLICC3kXxL6iuVpDT5985Y8lcJIGiKyrST0we6jTB6mHvlv8vGK6vrO9Pq0X4U2TvTRvKCrVaSsy99kmT1hvFMCJEXn16t2bZcSLRh_PWT9KZ4y5ZUyh-l9cwtsOxJA4TSNHfLtjrlyUb-qPyXnub_Bwgt3caV5M_XGz82M30CwraPgkmOMkWZobxGeYPyJVQDguvjLqcQVUMg-IA_yXIXYW-d1-RJ72VWDUfSLtwL111lB4XHrdM9a37SGPHLGJ3hGKUnZZlesjzDLH-z3ksKnbOB_ujFJ-PKIN3QvF-C631NH72rJ5v5uJ246UJTiLPK50NuJ2lqcAnzX8LXe3ByCKf_4pz9FVwNz34EAAD__zwZKfQ= query TTT EXPLAIN SELECT * FROM grandchild2 JOIN parent1 USING(pid1) WHERE @@ -283,7 +283,7 @@ SELECT url FROM [EXPLAIN (DISTSQL) OR gcid2 >= 49 AND gcid2 <= 51 ] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzslUFr2zAUx-_7FOKdHPJGLVluV0FAgzHIGMkIu20-GOs1NbhWkOSxUfLdh-3FrUs21gRy8tH668df8k_wHqG2hlb5A3lQ34ADggCEBBAkIKSQIeycLch769otPbA0P0HFCGW9a0K7nCEU1hGoRwhlqAgULOtArqL8B20oN-Q-2bImdxUDgqGQl1XX-JnuArQd5UPufunivqxMe4JNub1_HmxdXptxyj6WVSCnWBRFmrPvTRwntGCpUmq5-jpj71cf2BAUC3bzJ5ix9YZFkRYDwsWYEQPD5QE6UHKg5O2YkgOV8gMFCP29AaGiuxBpPkct5qiT-Wzh2muMlgBh3QTFNEctUCeoJeoU9TXqG9TvUN9CtkewTXj68T7kWwLF9_gXOU9Omto6Q47MSEK2P6JvZd_a3VX6YuPxajGq5ie9Cz69i0u8C3GSHDHJuYSc5CQ5ySTnEnLkSXLkJOfS4-6InA35na09_dc0i9txSGZL_ez0tnEFfXG26Gr6z3XHdQuGfOhT3n8s6y7qDvgc5v-Er0dw_BIW5zQn58DyHDh9FZzt3_wOAAD__-mfE2o= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzslU2L2zAQhu_9FWJODpmylizvhyCgQimklKSE3lofjDWbNXitIMmlZcl_L7ZZ7zqkpU0gvfhovXp4JT-CeYLaGlrlj-RBfQUOCAIQEkCQgJBChrBztiDvrWu39MDS_AAVI5T1rgntcoZQWEegniCUoSJQsKwDuYry77Sh3JD7aMua3FUMCIZCXlZd4ye6D9B2lI-5-6mLh7Iy7Qk25fbhdbB1eW3GKftQVoGcYlEUac6-NXGc0IKlSqnl6svtjL1bvWdDUizYzXMyY-sNiyItBoiLA0oMFJcD9szJgZN3B5wcuJQPHCD0tweEiu5DpPkctZijTuazhWsvM1oChHUTFNMctUCdoJaoU9TXqG9Q36K-g2yPYJvw8vt9yLcEiu_xN4pezDS1dYYcmZGKbH9E4sq-tbur9GDj8WoxquYnvQ4-vY7LvQ5xkiIxKbqcouQkRcmk6HKK5EmK5KTo_4zBI4o25He29vRXUy5uxySZLfUz1dvGFfTZ2aKr6T_XHdctGPKhT3n_say7qDvga5j_Eb4ewfEhLM5pTs6B5Tlw-k9wtn_zKwAA__9OgRn6 query TTT EXPLAIN diff --git a/pkg/sql/opt/exec/execbuilder/testdata/distsql_numtables b/pkg/sql/opt/exec/execbuilder/testdata/distsql_numtables index 35625b95f3ca..32d152b14b98 100644 --- a/pkg/sql/opt/exec/execbuilder/testdata/distsql_numtables +++ b/pkg/sql/opt/exec/execbuilder/testdata/distsql_numtables @@ -52,13 +52,13 @@ NULL /2000 {1} 1 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT 5, 2+y, * FROM NumToStr WHERE y <= 10 ORDER BY str] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkDFrwzAQhff-ivDWCGKZdtHk1Uta3GzFg2odwWDrzOkMLcH_vdga0hRS2k33Tu97j7sgcqCjHynBvcGiNZiEO0qJZZXyhzp8wBUGfZxmXeXWoGMhuAu014HgcPLvAzXkA8mhgEEg9f2wYSfpRy-fVZxH5aQCg4ZiIHG7J-dcfTyZXWX35fVtdlWJdjHgWa-RSf2Z4Oxi_l7rlUVJDva2UfW4v4sv_4NvKE0cE93g75GLpTWgcKZ82cSzdPQi3G0xeXzefJsQKGne2jzUMa_Wgt_N9ldz-cPcLg9fAQAA___0cqP4 +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkDFrwzAUhPf-CnNrBLFMC0WTVy9pcbMVDar1CAZbMk_P0BL834utoUkhpRnvnu67Q2eE6OngRkow79CwChPHjlKKvFr5QeM_YUqFPkyzrLZV6CITzBnSy0AwOLqPgVpynnhfQsGTuH7YsBP3o-OvOsyjxCQMhZaCJzbFkzGmORyfVVHrXXUhVFFXsItCnOWnNIk7EYxe1P-HvUUW4r2-3lQ_7m7iq3vwLaUphkRX-FvkcrEK5E-U_zbFmTt65dhtNVm-bLnN8JQkX3UWTcindeBlWP8Zrn6F7fLwHQAA___wMqRo # Query which requires a full table scan. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT 5, 2 + y, * FROM NumToStr WHERE y % 1000 = 0 ORDER BY str] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlMtq8zAQhff_U5iBH1qiEku2cxEUvCpkk5Y0u-KFaw3B4FhGkqEl5N2LL5A6JLJJuvBOtzPn8I2YA-RS4Dreowb-ARQIMCDgAQEfCAQQESiUTFBrqaonjWAlvoC7BNK8KE11HBFIpELgBzCpyRA4bOPPDDcYC1RTFwgINHGa1TaFSvex-g7zcm-kNgoIvKSZQcWdh5A6_x3qui7nfLXePjrPTrsEAhvMRfUqaE6IE9IJO62JEzKIjgRkaU7BtIl3CJweyfDw71IZVNOgmzv0J1fLs6vlT1WlEqhQXCp6IcNaPsliSrvsrtl7HXs6vDV0dK3pCd-2ZnZra9hwNmx0bHrCt2zmt7LxhrPxRsemJ3zLZnErG384G390bHrCt2yWfzHuLpTfoC5krnHQJHOrWYhih83s1LJUCb4pmdQ2zfa11tUHArVpbmmzWeXNVRXwt5haxawjpudiZnfusfasat8u9u_JHVjFM7vz7B7nuVW8sDsv7nFe2nvl9nwT-yc7946O_34CAAD__12t7jY= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlM-K2zAQxu99CjNQaIlKLNlOHEHBp0IuaUlzW3zwWkMwOJaRZNgl5N0X_1kSh0Q2yR58s8b65pv5jZgjFFLgJjmgBv4CFAgwIOABAR8IBBATKJVMUWup6iutYC3egLsEsqKsTB2OCaRSIfAjmMzkCBx2yWuOW0wEqrkLBASaJMsbm1Jlh0S9R0V1MFIbBQT-ZLlBxZ0fEXW-O9R1Xc75erMLfzq_nc9vILDFQtT3gi5EnIjO2MWBOBGD-ERAVuZcnDbJHoHTExnfwH-pDKp50K898md307O76c9ZpRKoUNxKeqOGjfwlyznt87tn7_Xs6fjx0EmOZ6CBbjyLR8fDxvNhk-Qz0EDHZ_koH288H2-SfAYa6PiEj_Lxx_PxJ8lnoIGOz-or1t-N9FvUpSw0jtpsbr0bUeyx3aVaVirFf0qmjU17_NvomoBAbdq_tD2si_ZXXeClmFrFrCem12Jmdx6w9qxq3y72n6k7sIoXdufFM85Lqzi0O4fPOK_ss3IHnon9kV17x6dvHwEAAP__5Mvylg== # Query with a restricted span + filter. query T @@ -70,7 +70,7 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyMjzFrwzAUhPf-CnMQsghqd9 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT str FROM NumToStr WHERE y % 1000 = 0 AND str LIKE '%i%' ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlE2rm0AYhff9FcOBkIROiTOaLgYKFvqBtJiSZldcWOclCMaRmRFagv-9RKG5Xm7u9ZKNO-fj4Zxn4PWM2mhK8xM5qF8Q4JDgCMERgWOLjKOxpiDnjL1cGYBE_4EKOMq6af1lO-MojCWoM3zpK4LCIf9d0Z5yTXYTgEOTz8uqj2lsecrt37huT944b8Hxpaw8WcVWq1iwBRNBECilkvSwZh_Y_8-P6Se2iiX7nnz7zJaLcrFUSv087JP06xocu9YrFkseC2Qdh2n9tZ7z-ZGgRMdvKFybG6vJkh53juVbZN0Tnql5Z5rNdnT7VrocpYvpDyhm-oByuoKcqUI4XSGcqUI0XSGaqcILP5M9ucbUjiZNWXAZU9JHGsbamdYW9MOaoo8Zlrue6zc0OT-cimGR1P1RX_AhLJ6F34_g4DEs70kO74Gje-Dtq-Cse_MvAAD__yjQ8xE= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlE2rm0AYhff9FcOBkIROiTOaUgYKFvqBtJiSZldcWOclCMaRmRFagv-9RBe5Xm7u9ZKNO-fj4Zxn4PWM2mhK8xM5qN8Q4JDgCMERgWOLjKOxpiDnjL1cGYBE_4UKOMq6af1lO-MojCWoM3zpK4LCIf9T0Z5yTXYTgEOTz8uqj2lsecrtv7huT944b8Hxtaw8WcVWq1iwBRNBECilkvTwYc0-suv3p_QzW8WS_Ui-f2HLRblYKqV-HfZJ-m0Njl3rFYsljwWyjsO0_lrQ-fxIUKLjNySu3Y3VZEmPW8fyLbLuCdPUvDPNZju6fStdjtLF9CcUs31COV1CzlYinC4RzlYimi4RzVbihd_KnlxjakeTpi24jCvpIw3j7UxrC_ppTdHHDMtdz_UbmpwfTsWwSOr-qC_4EBbPwu9HcPAYlvckh_fA0T3w9lVw1r35HwAA__8kPfVB # # -- Join tests -- @@ -103,7 +103,7 @@ render · · (x, str) · query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT x, str FROM NumToSquare JOIN NumToStr ON x = y WHERE x % 2 = 0] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlV9r2zwUh-_fT2EOvNBSjVj-0zSCgq8GGSwdpXfDF258lhgcy5NkWCn57sPWRmYnk-yJhNzFsR6fc34P6LxDxXNcZTuUwL4CBQIBEAiBQAQEYkgJ1IKvUUou2iMaWOY_gPkEiqpuVPt3SmDNBQJ7B1WoEoHBS_Za4jNmOYqZDwRyVFlRdmVqUewy8ZZUzU5x-b3JBAKBj0WpUDDvJqHe_17AGFuuXm69R8_XP4HAU6OYl1BI9wR4o34VP9R8ffO2mdz2q3XnUwJSZRsERvfk34agpiGUGDOBS9_BX_s-fKepuMhRYN77UtqSv4-cOgAJvdO1hvN_RrHBT7yoUMzu-0yJ39RNQu9uH0Wx2eqfB0UkCQfTHiYJHSY50eOKf-D1jNLhzCdrR73adLz94Jrs08vbn5_HfjDeQHhNBoLLG3g4j4FwvIHomgyElzewOI-BaLyB-JoMRJc3QP3zL6ETLTyjrHklcdSK8dshMN-gzkXyRqzxi-Drrox-fOq47iLPUSr9NtAPy0q_ahscD8cu8NwFXrjAlJppOiGxYBocu8BzF3jhAg8SO6KDIe3_SYfmuEMjTPt5-0M6cpFlhi2yzLBFlhm2yDLDNlmxi6x7l7jNsCVuM2yJ2wxb4jbDtrjnLnE_uMRthi1xm2FL3GbYErcZtsW9cImbTlmWx3folG05lbZd_lP25VTaljk92h7G0NP9fz8DAAD___Wz59Q= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlVFr2zAQx9_3KczBoKUasWSnSQQFPw0yWDpK34Yf3PiWGBzLk2RYKfnuw3ZHZieT7ImEvMWxfr67_w90b1CIFFfJDhXw70CBAAMCARAIgcAUYgKlFGtUSsj6SAss01_AfQJZUVa6_jsmsBYSgb-BznSOwOE5ecnxCZMU5cQHAinqJMubMqXMdol8jYpqp4X6WSUSgcDnLNcouXcTUe-jxzjny9Xz_NZ78Pz330DgsdLciyjEewKi0u_lD1VfXr1torbdes35mIDSyQaB0z35vzGoaQwth83g0jn7Z-eH71SFkClKTDtfimvyz5FTByCid22tfgJfUW7wi8gKlJP7LpPjD30T0bvbB5lttu3PgyQSBb1pD5MEDpOc6HElPolyQml_5pO1w05tOtw_uy7_9PL-Z-fxz4Y7CK7LAbu8g_l5HATDHYTX5SC4vIPFeRyEwx1Mr8tBeHkH1D__MjrRwhOqUhQKB60avx4C0w22uShRyTV-k2LdlGkfHxuuuc5TVLp9y9qHZdG-qhscDk9d4JkLvHCBKTXTdERibBw8dYFnLvDCBe4ldkSzPu3_TQfmuAMjTLt5-306dJFlhi2yzLBFlhm2yDLDNllTF1n3LnGbYUvcZtgStxm2xG2GbXHPXOKeu8Rthi1xm2FL3GbYErcZtsW9cImbjlmWx3fomG05lrZd_mP25Vjaljk92h7G0OP9h98BAAD__yTk6nQ= # # -- Aggregation tests -- diff --git a/pkg/sql/opt/exec/execbuilder/testdata/distsql_union b/pkg/sql/opt/exec/execbuilder/testdata/distsql_union index 1c2c9984700f..e62d046e19e0 100644 --- a/pkg/sql/opt/exec/execbuilder/testdata/distsql_union +++ b/pkg/sql/opt/exec/execbuilder/testdata/distsql_union @@ -49,13 +49,13 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJyslU1r20AQhu_9FWWuXbBnV7 query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT x FROM xyz WHERE x < 3 UNION SELECT x FROM xyz WHERE x >= 3 ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lkFr4zAQhe_7K8JcVxCPbCeNYaGHZSGXdun2tuuD1x6KIbWCJEO7Jf99cQxpHZqRZEGOlvLmzZf3DnqDTjV0Vz2TgeI3IAiQICAFARkIyKEUsNeqJmOUHn4yCrbNCxSJgLbb93Y4LgXUShMUb2BbuyMo4LH6u6MHqhrSywQENGSrdne02ev2udKvty-v_0DAj3ZnSReLW1z86ZMkrRdpURTbu0cQcN_b4QLKgwDV23c3Y6snggIPwn-j762xbVfbZT5dh5kvQ-Z_JMYgZPoWwJzOYkZ_6OyiwfvcvlO6IU3NZGp54FaQifcKeQjjL6Ut6aXE8_FfL85fTeZjQK7XabJjo9NfuprZ5BDiIOSIJvsyoz_0tMnSH1peJ2bHRifk9cyYA4gxCDkiZl9m9Ieexpz6Q6fXidmx0Qn5ZmbMAcQYhBwRsy8z-kNPY878obPrxOzY6IS8mRlzADEGIUfE7MuM_tCXnx-fGDyQ2avO0Nkz5PPJyfA8oeaJxreMUb2u6adW9dFm_Lw_6o4HDRk73uL4se3Gq2HBj2JkxdlEjOdiyYpT3jmNcc5Ycc4756xYSl69YtVrXryOgb5hxRveeRPjjI6OuUoW1TLka4aOnmFU0ZBvGjqqhnzXXOZ819BRNoxqG_J1Q0ffMKpwki-cdBROhhWuPHz5HwAA__9soUkq +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lk9r4zAQxe_7KcpcVxCPbOePYaGHZSGXdun2tuuD1x6KIbWCJEO7Jd99cQxpHZqRZEGOlvLmzS_vHfQGnWrornomA8VvQBAgQUAKAjIQkEMpYK9VTcYoPfxkFGybFygSAW237-1wXAqolSYo3sC2dkdQwGP1d0cPVDWkFwkIaMhW7e5os9ftc6Vfb19e_4GAH-3Oki5ubvHmT58kaX2TFkWxvXtcg4D73g43UB4EqN6-2xlbPREUeBD-K31vjW272i7y6T7MfBky_yMyBjHTtxDodBY0-lNnFw3e5_ad0g1paiZTywO3gky8V8hDGH8pbUkvJJ6P_3px_nIyHwOCvVKXHSud_tPlzC6HIAcxx3TZFxr9qaddlv7U8kpBO1Y6Ma9mBh2AjEHMMUH7QqM_9TTo1J86vVLQjpVOzOuZQQcgYxBzTNC-0OhPPQ0686fOrhS0Y6UT82Zm0AHIGMQcE7QvNPpTX36GfGLwQGavOkNnz5HPJyfDM4WaJxrfNEb1uqafWtVHm_Hz_qg7HjRk7HiL48e2G6-GBT-KkRVnEzGeiyUrTnnnNMY5Y8U575yzYil59ZJVr3jxKgZ6zYo3vPMmxhkdHXOVLKplyNcMHT3DqKIh3zR0VA35rrnM-a6ho2wY1Tbk64aOvmFU4SRfOOkonAwrXHn48j8AAP__pmhLWg== # UNION with partial overlap. query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT x FROM xyz WHERE x <= 4 UNION SELECT x FROM xyz WHERE x > 1 ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lk9r20AQxe_9FGauXbBmJdmxoJBDKfiSlDS3VgdVGoLA0ZrdFSQN_u5FFjiRiWf_CHzUrt-8-fm9w75Bpxq6q57JQPEbEARIEJCCgAwE5FAK2GtVkzFKDz8ZBdvmBYpEQNvtezsclwJqpQmKN7Ct3REU8Fj93dEDVQ3pZQICGrJVuzva7HX7XOnX25fXfyDgR7uzpIvFLS7-9EmS1t8WWVEU27tHEHDf2-EGyoMA1dt3O2OrJ4ICD8J_pe-tsW1X22U-3YeZL0Pmf0TGIGZaoDdyGoWM_szZRYP3uX2ndEOamsnU8sCtIBPvFfIQxl9KW9JLiefjv16cv5rMx4BYr9Rkx0qn_3QV2eQQ5CDm-Cb7IqM_87TJ0p9ZXilmx0on5nVkzAHIGMQcH7MvMvozT2NO_ZnTK8XsWOnEfBMZcwAyBjHHx-yLjP7M05gzf-bsSjE7VjoxbyJjDkDGIOb4mH2R0Z_58vPjE4MHMnvVGTp7hnw-ORmeJ9Q80fiWMarXNf3Uqj7ajJ_3R93xoCFjx1scP7bdeDUs-FGMrDibiPFcLFlxyjunc5wzVpzzzjkrlpJXr1j1mhev50DfsOIN77yZ44yOjrlKNqtlyNcMHT3DWUVDvmnoqBryXXOZ811DR9lwVtuQrxs6-oazCif5wklH4WRY4crDl_8BAAD__93PSSU= +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8lk9r4zAQxe_7KcJcV1CPbOePYaGHZSGXdun2tuuD1x6KIbWCJEO7Jd99cQxpHZqRZEGOlvLmzS_vHfQGnWrornomA8VvQBAgQUAKAjIQkEMpYK9VTcYoPfxkFGybFygSAW237-1wXAqolSYo3sC2dkdQwGP1d0cPVDWkbxIQ0JCt2t3RZq_b50q_3r68_gMBP9qdJV0sbnHxp0-StP62yIqi2N49rkHAfW-HKygPAlRv3_2MrZ4ICjwI_52-t8a2XW1v8ulCzHwZMv8jMwZB0wL9mdNZzOgPnV00eJ_bd0o3pKmZTC0P3Aoy8V4hD2H8pbQlfSPxfPzXi_OXk_kYkOu1uuzY6fSnLmd2OYQ5CDqiy77M6A897bL0h5bXCtqx0wl6NTPoAGYMgo4I2pcZ_aGnQaf-0Om1gnbsdIJezww6gBmDoCOC9mVGf-hp0Jk_dHatoB07naA3M4MOYMYg6IigfZnRH_ryM-QTgwcye9UZOnuOfD45GZ4p1DzR-KYxqtc1_dSqPtqMn_dH3fGgIWPHWxw_tt14NSz4UYysOJuI8VwsWXHKO6cxzhkrznnnnBVLyauXrHrFi1cx0GtWvOGdNzHO6OiYq2RRLUO-ZujoGUYVDfmmoaNqyHfNZc53DR1lw6i2IV83dPQNowon-cJJR-FkWOHKw5f_AQAA__8XqktV # UNION ALL with swapped column orders. query T @@ -114,23 +114,23 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJzEl99r4koUx9_vXyHn6V7IRc query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) INTERSECT ALL (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlk1r20AQhu_9FWZOLd1i7UryhyCQUlJqCE5JfGt9UKxtbHAssZIhbsh_L7ZjUkn2vForCN2iSM_uaOd5PXqmVRzpcfioUwp-kSRBigS5JMgjQT5NBSUmnuk0jc32kT0wip4ocAQtVsk62_57KmgWG03BM2WLbKkpoEl4v9S3Ooy06TokKNJZuFjutknM4jE0m8unzV8S9H2xzLQJOpey83vtOO6so4IgGI0nJOhmnW1v0PRFULzOXnd72-R-05mH6Ty__O75qaA0Cx80BfJFnFe1b1O1vnjnstXJst_WWa9iE2mjo9xK0y2JHjny7j_CdH6ns5ukKwsNm2wSHXRG48nV7d3Vt0nn6_U1CVrqP9nHS_npwiwe5ru_Tr7622u5Nt24i02mTVf6xZP6fHJ9r8KxHTuR10WPFDGOv8RJVznFMz66vZ_bXlaXTbYnIhZV91oUEdlsRGRDEQHdOESkd25EVPVuq_Y4alF1v0WOqmYdVQ05CrpxcLR_rqNu9W677XHUoupBixx1m3XUbchR0I2Do4NzHfWqd9trj6MWVQ9b5KjXrKNeQ46CbhwcHb7H5_CR9W91msSrVFf60nW2Z6ajB73vQRqvzUz_NPFst83-8mbH7b5hIp1m-7tqfzFa7W9tC6wO9-vAUtai_Vr0kKelxZkpO7hfBy6cmS3t16KHPK2KtPM_7eZgpwi7LOzx3fJYWEl-a79OPngY5IOHUT4ADfIBaJCPXp188DDIBw-jfAAa5APQIB991tIBL-mgTj6GdQznYWA4DyPDAQ0MBzSaADZjs_xLajM3bWk4BKwmpzUONJelKZJTVSpedMmPEWC6LM0RG9UBDVwHNJId4cB2hCPdSzPUSneeRrrzNNQd4Eh3gCPdS4M0r3sP6F6aKVa6l2aKle48jXTnaag7wJHuAEe6l-aple48jXTnaag7wJHuAEe6l6Zq_lvb4XVXpdnC6j59-fAvAAD__93yhjY= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlk1r20AQhu_9FWZOLd1i7UryhyCQUlJqCE5JfGt9UKxtbHAssZIhbsh_L7ZjUkn2vForCN2iSM_uaOd5PXqmVRzpcfioUwp-kSRBigS5JMgjQT5NBSUmnuk0jc32kT0wip4ocAQtVsk62_57KmgWG03BM2WLbKkpoEl4v9S3Ooy06TokKNJZuFjutknM4jE0m8unzV8S9H2xzLQJOpey83vtOO6so4IgGI0nAxJ0s862d2j6IiheZ6_bve1yv-nMw3SeX3_3_FRQmoUPmgL5Is4r27cpW1-8d93qZN1v66xXsYm00VFupemWRI8cefkfYTq_09lN0pWFlk02iQ46o_Hk6vbu6tuk8_X6mgQt9Z_s46X8dGEWD_PdXydf_e21XJt23MUm06Yr_eJJfT65vlfh2I6dyOuiR4oYx1_ipKuc4hkf3d7PbS-r2yZbFBKLsnttColsNiSyoZCAdhxC0js3JKp6u1WLLLUou98mS1WzlqqGLAXtOFjaP9dSt3q73RZZalH2oE2Wus1a6jZkKWjHwdLBuZZ61dvttchSi7KHbbLUa9ZSryFLQTsOlg7f47P4yPq3Ok3iVaorffE62zPT0YPe9yCN12amf5p4tttmf3mz43ZfMpFOs_1dtb8Yrfa3tgVWh_t1YClr0X4tesjT0uLMlB3crwMXzsyW9mvRQ55WRdr5n3ZzsFOEXRb2-G55LKwkv7VfJx88DPLBwygfgAb5ADTIR69OPngY5IOHUT4ADfIBaJCPPmvpgJd0UCcfwzqG8zAwnIeR4YAGhgMaTQCbsVn-JbWZm7Y0HAJWk9MaB5rL0hTJqSoVL7rkxwgwXZbmiI3qgAauAxrJjnBgO8KR7qUZaqU7TyPdeRrqDnCkO8CR7qVBmte9B3QvzRQr3UszxUp3nka68zTUHeBId4Aj3Uvz1Ep3nka68zTUHeBId4Aj3UtTNf-t7fC6q9JsYXWfvnz4FwAA__8Mxohm query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) INTERSECT (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v4kYYhe_7K9BctaorPB98WYqUqk1VpIisEu52uXDwbLBEMLKNFDbKf18BCwQPfo-HMb5LMGfm-Mx7Htm8s0US6VH4qjMWfGWceUwwj0nmMcU81mETjy3TZKqzLEk3X9kJhtEbC3yPxYvlKt98PPHYNEk1C95ZHudzzQI2Dp_n-lGHkU7bPvNYpPMwnm-3Wabxa5iub9_WP5jH_ovnuU6D1i1vfVv5vpy2RBAEw9GYeexhlW8usMmHx5JVftwty8MXzQL-4VV39G-c5fFimrc7p3aM9Y-S53VrFmazM98_ehA2Hj6nwq1i0TcWuciLcuH1BqNKTRzXWS2SNNKpjk5W2q5SalP4wObRQudaFlBSRwtdBwveRS7_D7PZk84flm1ZSGq8XuqgNRyN7x6f7v4Zt_6-v2cem-vv-e-3_I-bNH6Zbf-qMGE9mwl7StJcp21ppPZn6fr9CrGdS-TXomdMjJK_kmVb-cWMz24_ONmeW5S6GdQBR4dB7V4RdTapWMXigLqqufB6g1GlJhw5wy9EXY0WUFJlqLOz4Iw63hDqwITtUWekVhV1onqrRDOsAY4Ok9K7ImssUuFWsTiwpmouvN5gVKkJx6KLC1lTowWUVBlr7Cw4s0Y0xBowYXvWGKlVZY2s3irZDGuAo8Ok9K_IGotUuFUsDqypmguvNxhVasKx6PJC1tRoASVVxho7C86skQ2xBkzYnjVGalVZo6q3SjXDGuDoMCmDK7LGIhVuFYsDa6rmwusNRpWacCy6upA1NVpASZWxxs6CM2tUQ6wBE7ZnjZHaJT8XnVn_UWfLZJHpSr8E-ZvMdPSid2eQJat0qr-kyXS7ze7fh61u-0Gks3x3le_-GS52lzYGP4t5Ucw_i9WJmNuJuXRRC-6kHrioZY9WCzJxSScuya079M60mIPzotVCuKil76Tu02pFJt6lxR0LsSiKu6S4R591jxSDe-6TYgWKPaCp4AMsGFCx4gKthmCg5ZAMQI7QQMsRG7iBltPgBQjeYIsNHoAa8QHIESCAHBECyUFduEGY0-BRdDRiCnIDE5yGDO-CY6cxg26d5gzvg80N0liVnVbDstNyWHYgR2Wn5bDsNGUFoKygUQMmFqhR2YEclR3IUdmRHEy8oCkrwNAJ-gmuIDfKLmjUCAWOnUYNunWaNAKQRhiksSk7UKOyAzkqO5KDsgM5fOqnKSsAZQWNGlR2QFl0bgCTqOwAk6jsQI4mnqasBFMj6Rfkgtwou6RRI8EDnaRRA25d0qSRgDTSII1N2YEalR3IUdmRHJQdyFHZJU1ZCSgradSgt3xAWXRuAJPoPR9gEr3oAzmaeJqyEh07_dZckJtlp1GjwAOdolFTvPXJx28_AwAA__8jwRYm +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v4kYYhe_7K9BctaorPB98WYqUqk1VpIisEu52uXDwbLBEMLKNFDbKf18BCwQPfo-HMb5LMGfm-Mx7Htm8s0US6VH4qjMWfGWceUwwj0nmMcU81mETjy3TZKqzLEk3X9kJhtEbC3yPxYvlKt98PPHYNEk1C95ZHudzzQI2Dp_n-lGHkU7bPvNYpPMwnm-3Wabxa5iub9_WP5jH_ovnuU6D1i1vfVv5vpy2RBAEw9G4zzz2sMo3V9jkw2PJKj9ul-Xhi2YB__CqW_o3zvJ4Mc3bnVM_xvpHyfO6NQuz2ZnvHz0IGw-fY-FWuegbm2DkRcHwepNRpSaO66wWSRrpVEcnK21XKbUpfGDzaKFzLQsoqaOFroMF7yKX_4fZ7EnnD8u2LCQ1Xi910BqOxnePT3f_jFt_398zj8319_z3W_7HTRq_zLZ_VZiwns2EPSVprtO2NFL7s3T9foXYziXya9EzJkbJX8myrfxixme3H5xszy1a3RDsgKXDpHavCDubWKxycYFd1WB4vcmoUhOOpOEXwq5GCyipMtjZWXCGHW8IdmDC9rAzUqsKO1G9VqIh2gBLh1HpXZE2FrFwq1xcaFM1GF5vMqrUhGPVxYW0qdECSqqMNnYWnGkjGqINmLA9bYzUqtJGVq-VbIg2wNJhVPpXpI1FLNwqFxfaVA2G15uMKjXhWHV5IW1qtICSKqONnQVn2siGaAMmbE8bI7WqtFHVa6Uaog2wdBiVwRVpYxELt8rFhTZVg-H1JqNKTThWXV1ImxotoKTKaGNnwZk2qiHagAnb08ZI7ZKfjc6s_6izZbLIdKVfhPxNZjp60bszyJJVOtVf0mS63Wb378NWt_0g0lm-u8p3_wwXu0sbg5_FvCjmn8XqRMztxFy6qAV3Ug9c1LJHqwWZuKQTl-TWHXpnWszBedFqIVzU0ndS92m1IhPv0uKOhVgUxV1S3KPPukeKwT33SbECxR7QVPABFgyoWHGBVkMw0HJIBiBHaKDliA3cQMtp8AIEb7DFBg9AjfgA5AgQQI4IgeSgLtwgzGnwKDoaMQW5gQlOQ4Z3wbHTmEG3TnOG98HmBmmsyk6rYdlpOSw7kKOy03JYdpqyAlBW0KgBEwvUqOxAjsoO5KjsSA4mXtCUFWDoBP0EV5AbZRc0aoQCx06jBt06TRoBSCMM0tiUHahR2YEclR3JQdmBHD7105QVgLKCRg0qO6AsOjeASVR2gElUdiBHE09TVoKpkfQLckFulF3SqJHggU7SqAG3LmnSSEAaaZDGpuxAjcoO5KjsSA7KDuSo7JKmrASUlTRq0Fs-oCw6N4BJ9J4PMIle9IEcTTxNWYmOnX5rLsjNstOoUeCBTtGoKd765OO3nwEAAP__u3YYVg== # INTERSECT ALL and INTERSECT with some overlap. query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x < 3) INTERSECT ALL (SELECT y FROM xyz WHERE x >= 1) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9v2jwUxu_fTxGdq3eaJ2In4U-kSkxTpyFVdGq523KREq8gURI5QSqr-O4TpIwloX5iUkW5KyU_-8Tn93D8Qus4ktPwSabk_yBOjAQxcoiRS4w8ChglKp7LNI3V_pEcmETP5NuMlutkk-3_HTCax0qS_0LZMltJ8mkWPqzknQwjqXo2MYpkFi5Xh20StXwK1Xb8vP1NjL4uV5lUvjXm1s-NbTtzy_F9fzKdEaPbTeZbY0HBjlG8yV53O23ysLUWYbooLj_mFOwCRmkWPkry-Y5dVrVnUrW8svi7li3eLPu0zmYdq0gqGRVWCvYkeuTMu38L08W9zG6THi81bLZNpG9NprPru_vrLzPr880NMVrJX9n_Y_7hSi0fF4e__r46L7366bUck27cxyqTqse98kl9fHN9t8axnTuR10XPFDGNP8VJT9jlMz67vVfYnteXjXcnIgZV9zsUEd5uRHhLEQHdOEakf2lERP1ui-44alD1oEOOinYdFS05CrpxdHRwqaNO_W473XHUoOphhxx12nXUaclR0I2jo8NLHXXrd9vtjqMGVY865KjbrqNuS46CbhwdHb3HdfjM-ncyTeJ1KmvddO39mcnoUeY9SOONmsvvKp4ftsk_3h64wx0mkmmWfyvyD5N1_tW-wPrwoAnMeSPaa0SP9DQ3ODNhBg-awKUzM6W9RvRIT4sybf9LOwXYLsOOFnb13XK1sOD6rb0m-dDDIB96GOUD0CAfgAb56DfJhx4G-dDDKB-ABvkANMjHQGvpUC_psEk-Rk0M18PAcD2MDAc0MBzQaAKYjM3qL6nJ3DSl4RAwmpzGONCcV6ZIQVUu9KJz_RgBpvPKHDFRHdDAdUAj2REObEc40r0yQ41019NIdz0NdQc40h3gSPfKIC3q3ge6V2aKke6VmWKku55GuutpqDvAke4AR7pX5qmR7noa6a6noe4AR7oDHOlemarFu7at111UZotW92D3358AAAD__8GFhkA= +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9v2jwUxu_fTxGdq3eaJ2In4U-kSkxTpyFVdGq523KREq8gURI5QSqr-O4TpIwloX5iUkW5KyU_-8Tn93D8Qus4ktPwSabk_yBOjAQxcoiRS4w8ChglKp7LNI3V_pEcmETP5NuMlutkk-3_HTCax0qS_0LZMltJ8mkWPqzknQwjqXo2MYpkFi5Xh20StXwK1Xb8vP1NjL4uV5lUvjXm1s-NbTtzy_F9fzKdDYnR7SbzrbGgYMco3mSv2512edhaizBdFNcfcwp2AaM0Cx8l-XzHLivbMylbXln8fesWb9Z9WmezjlUklYwKKwV7Ej1y5uW_heniXma3SY-XWjbbJtK3JtPZ9d399ZeZ9fnmhhit5K_s_zH_cKWWj4vDX39fnZde_fRajkk77mOVSdXjXvmkPr65vlvj2M6dyOuiZ4qYxp_ipCfs8hmf3d4rbM_r28Y7FBKDsvtdCglvNyS8pZCAdhxD0r80JKJ-u0WHLDUoe9AlS0W7loqWLAXtOFo6uNRSp367nQ5ZalD2sEuWOu1a6rRkKWjH0dLhpZa69dvtdshSg7JHXbLUbddStyVLQTuOlo7e41p8Zv07mSbxOpW1brz2_sxk9CjzHqTxRs3ldxXPD9vkH28P3OEmE8k0y78V-YfJOv9qX2B9eNAE5rwR7TWiR3qaG5yZMIMHTeDSmZnSXiN6pKdFmbb_pZ0CbJdhRwu7-m65Wlhw_dZek3zoYZAPPYzyAWiQD0CDfPSb5EMPg3zoYZQPQIN8ABrkY6C1dKiXdNgkH6MmhuthYLgeRoYDGhgOaDQBTMZm9ZfUZG6a0nAIGE1OYxxozitTpKAqF3rRuX6MANN5ZY6YqA5o4DqgkewIB7YjHOlemaFGuutppLuehroDHOkOcKR7ZZAWde8D3SszxUj3ykwx0l1PI931NNQd4Eh3gCPdK_PUSHc9jXTX01B3gCPdAY50r0zV4l3b1usuKrNFq3uw--9PAAAA___wfIhw query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x < 3) INTERSECT (SELECT y FROM xyz WHERE x >= 1) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mEtv6kYcxff9FNasWtUVngcvS1eiam9VpCtSJexaFg6eBksEI9tIoVG-ewVcIHjw_3gY4x2vM3N85n9-snlnqzTWk-hV5yz8m3HmM8F8JpnPFPNZl818ts7Suc7zNNv95CAYx28sDHyWrNabYvfxzGfzNNMsfGdFUiw1C9k0el7qRx3FOusEzGexLqJkud9mnSWvUbYdvW3_Yz77I1kWOgu9Eff-2QSBnHsyDMPxZMp89rApQm8k2OzDZ-mmOO-WF9GLZiH_8Os7-j3Ji2Q1LzrdSzsjXlr_LHneeosoX1z5_dmDsPHwORVuFYv-4vHaucibcuHNBqMqTZzX2azSLNaZji9W2q9SaVMEwObZQvdeFlBSZws9Bwv-TS7_jPLFky4e1h1ZSmq6XevQG0-mXx-fvv429X799o35bKn_LX4c8Z--ZMnLYv_qNGHVl9W3mbCnNCt01pFGaj9Xrj-oEdu1RL4vesXEJP0lXXdUUM746vbDi-25RanbQR1wdBrU3h1RZ5OKVSwOqKubC282GFVpwpEz_EbUNWgBJVWFOjsLzqjjLaEOTNgRdUZqdVEn6rdKtMMa4Og0Kf07ssYiFW4ViwNr6ubCmw1GVZpwLLq4kTUNWkBJVbHGzoIza0RLrAETdmSNkVpd1sj6rZLtsAY4Ok3K4I6ssUiFW8XiwJq6ufBmg1GVJhyLLm9kTYMWUFJVrLGz4Mwa2RJrwIQdWWOkVpc1qn6rVDusAY5OkzK8I2ssUuFWsTiwpm4uvNlgVKUJx6KrG1nToAWUVBVr7Cw4s0a1xBowYUfWGKnd8nfRlfUfdb5OV7mu9U9QsMtMxy_6cAZ5usnm-q8sne-3Obx92Ov2H8Q6Lw7f8sOb8erw1c7gZzEvi_lnsboQczsxly5qwZ3UQxe17NNqQSYu6cQluXWX3pkWc3BetFoIF7UMnNQDWq3IxHu0uGshFmVxjxT36bPuk2JwzQNSrECxhzQVAoAFAypWXKDVEAy0HJIByBEaaDliAzfQchm8AMEbbLHBA1AjPgA5AgSQI0IgOagLNwhzGTyKjkZMSW5ggtOQ4T1w7DRm0KXTnOEDsLlBGquy02pYdloOyw7kqOy0HJadpqwAlBU0asDEAjUqO5CjsgM5KjuSg4kXNGUFGDpB38GV5EbZBY0aocCx06hBl06TRgDSCIM0NmUHalR2IEdlR3JQdiCHd_00ZQWgrKBRg8oOKIvODWASlR1gEpUdyNHE05SVYGok_YBckhtllzRqJLihkzRqwKVLmjQSkEYapLEpO1CjsgM5KjuSg7IDOSq7pCkrAWUljRr0lA8oi84NYBI95wNMogd9IEcTT1NWomOnn5pLcrPsNGoUuKFTNGrKlz77-OH_AAAA__9uuhYw +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mEtv6kYcxff9FNasWtUVngcvS1eiam9VpCtSJexaFg6eBksEI9tIoVG-ewVcIHjw_3gY4x2vM3N85n9-snlnqzTWk-hV5yz8m3HmM8F8JpnPFPNZl818ts7Suc7zNNv95CAYx28sDHyWrNabYvfxzGfzNNMsfGdFUiw1C9k0el7qRx3FOusEzGexLqJkud9mnSWvUbYdvW3_Yz77I1kWOgu9Eff-2QSBnHsyDMPxZDpgPnvYFKE3Emz24bN0U5y3y4voRbOQf_j1Lf2e5EWymhed7qWfES-tf5Y8b71FlC-u_P7sQdh4-BwLt8pFf_F4_WDkTcHwZpNRlSbO62xWaRbrTMcXK-1XqbQpAmDzbKF7LwsoqbOFnoMF_yaXf0b54kkXD-uOLCU13a516I0n06-PT19_m3q_fvvGfLbU_xY_jvhPX7LkZbF_dZqw6svq20zYU5oVOutII7WfK9cf1IjtWiLfF71iYpL-kq47KihnfHX74cX23KLVLcEOWDpNau-OsLOJxSoXF9jVDYY3m4yqNOFIGn4j7Bq0gJKqgp2dBWfY8ZZgBybsCDsjtbqwE_VrJVqiDbB0GpX-HWljEQu3ysWFNnWD4c0moypNOFZd3EibBi2gpKpoY2fBmTaiJdqACTvSxkitLm1k_VrJlmgDLJ1GZXBH2ljEwq1ycaFN3WB4s8moShOOVZc30qZBCyipKtrYWXCmjWyJNmDCjrQxUqtLG1W_Vqol2gBLp1EZ3pE2FrFwq1xcaFM3GN5sMqrShGPV1Y20adACSqqKNnYWnGmjWqINmLAjbYzUbvnb6Mr6jzpfp6tc1_pHKNhlpuMXfTiDPN1kc_1Xls732xzePux1-w9inReHb_nhzXh1-Gpn8LOYl8X8s1hdiLmdmEsXteBO6qGLWvZptSATl3Tikty6S-9Mizk4L1othItaBk7qAa1WZOI9Wty1EIuyuEeK-_RZ90kxuOYBKVag2EOaCgHAggEVKy7QaggGWg7JAOQIDbQcsYEbaLkMXoDgDbbY4AGoER-AHAECyBEhkBzUhRuEuQweRUcjpiQ3MMFpyPAeOHYaM-jSac7wAdjcII1V2Wk1LDsth2UHclR2Wg7LTlNWAMoKGjVgYoEalR3IUdmBHJUdycHEC5qyAgydoO_gSnKj7IJGjVDg2GnUoEunSSMAaYRBGpuyAzUqO5CjsiM5KDuQw7t-mrICUFbQqEFlB5RF5wYwicoOMInKDuRo4mnKSjA1kn5ALsmNsksaNRLc0EkaNeDSJU0aCUgjDdLYlB2oUdmBHJUdyUHZgRyVXdKUlYCykkYNesoHlEXnBjCJnvMBJtGDPpCjiacpK9Gx00_NJblZdho1CtzQKRo15UufffzwfwAAAP__BrAYYA== # INTERSECT ALL and INTERSECT with swapped column orders. query T @@ -215,23 +215,23 @@ https://cockroachdb.github.io/distsqlplan/decode.html#eJy8l99r4koUx9_vXyHn6V7IRc query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) EXCEPT ALL (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll1r2zAUhu_3K8K52phGLNnOh6HQMTpWKG1pczHYcuHGWhNIYyMr0Kz0v48kDZ3j9LxWXIzv6tqPdKzzvDl-okWa6Mv4QecU_SJJghQJ8klQQIJCGgvKTDrReZ6a9SNb4Dx5pMgTNFtkS7v-91jQJDWaoieyMzvXFNEovpvrGx0n2nQ9EpRoG8_mm20yM3uIzer0cfWXBH2fza02UedUdn4vPc-fdFQUReeXIxJ0tbTrGzR-FpQu7ctur5vcrTrTOJ8Wl988PxaU2_heUySfxXFVhy5V65N3Llu9WfbrOstFahJtdFJYabwm0SMH3v1HnE9vtb3KunKvYaNVpqPO2c9vZ9ejzteLCxI013_sx1P56cTM7qebv95879d38l1acZsaq01XhvvH9PnN9YMKZ3boOF4WPVDEZfolzbrK2z_gg9uHhe1lddNke_LhUHWvRfmQzeZDNpEP0IpdPnrH5kNVb7Vqj6AOVfdbJKhqVlDVhKCgFTtB-8cK6ldvtd8eQR2qHrRIUL9ZQf0mBAWt2Ak6OFbQoHqrg_YI6lD1sEWCBs0KGjQhKGjFTtDhe3wCH1j_RudZush1pa9bb31gOrnX2wbk6dJM9LVJJ5tttpdXG27z6ZLo3G7vqu3F-WJ7a11gdbhfB5ayFh3Wooc8LR3OTLnB_Trw3pm50mEtesjTap_2_qf9Auztwz4LB3y3AhZWkt86rJMPHgb54GGUD0CDfAAa5KNXJx88DPLBwygfgAb5ADTIR5-1dMBLOqiTj2Edw3kYGM7DyHBAA8MBjSaAy9gs_5K6zE1XGg4Bp8npjAPNZWmKFFSVihdd8mMEmC5Lc8RFdUAD1wGNZEc4sB3hSPfSDHXSnaeR7jwNdQc40h3gSPfSIC3q3gO6l2aKk-6lmeKkO08j3Xka6g5wpDvAke6leeqkO08j3Xka6g5wpDvAke6lqVr81vZ43VVptrC6j58__AsAAP__XY-Brg== +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll1r2zAUhu_3K8K52phGLNnOh6HQMTpWKG1pczHYcuHGWhNIYyMr0Kz0v48kDZ3j9LxWXIzv6tqPdKzzvDl-okWa6Mv4QecU_SJJghQJ8klQQIJCGgvKTDrReZ6a9SNb4Dx5pMgTNFtkS7v-91jQJDWaoieyMzvXFNEovpvrGx0n2nQ9EpRoG8_mm20yM3uIzer0cfWXBH2fza02UedUdn4vPc-fdFQUReeXowEJulra9R0aPwtKl_Zlu9dd7ladaZxPi-tvnh8Lym18rymSz-K4skOXsvXJe9et3qz7dZ3lIjWJNjoprDRek-iRAy__I86nt9peZV2517LRKtNR5-znt7PrUefrxQUJmus_9uOp_HRiZvfTzV9vvvfrO_kuvbhNjdWmK8P9Y_r85vpBhTM7dBwvix4o4jL9kmZd5e0f8MHtw8L2srpqskUJcSi716aEyGYTIptICOjFLiG9YxOiqvdatUhRh7L7bVJUNauoakJR0Iudov1jFfWr99pvkaIOZQ_apKjfrKJ-E4qCXuwUHRyraFC910GLFHUoe9gmRYNmFQ2aUBT0Yqfo8D0-hQ-sf6PzLF3kutJXrrc-MJ3c620D8nRpJvrapJPNNtvLqw23-YBJdG63d9X24nyxvbUusDrcrwNLWYsOa9FDnpYOZ6bc4H4deO_MXOmwFj3kabVPe__TfgH29mGfhQO-WwELK8lvHdbJBw-DfPAwygegQT4ADfLRq5MPHgb54GGUD0CDfAAa5KPPWjrgJR3UycewjuE8DAznYWQ4oIHhgEYTwGVsln9JXeamKw2HgNPkdMaB5rI0RQqqSsWLLvkxAkyXpTniojqggeuARrIjHNiOcKR7aYY66c7TSHeehroDHOkOcKR7aZAWde8B3UszxUn30kxx0p2nke48DXUHONId4Ej30jx10p2nke48DXUHONId4Ej30lQtfmt7vO6qNFtY3cfPH_4FAAD__2aEg94= query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT x FROM xyz WHERE x < 2) EXCEPT (SELECT x FROM xyz WHERE x >= 2) ORDER BY x] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v2kgYhe_3V6C52tV6heeDL0uRsmpTNVKURAkXlVouHDwNlghGtpFCo_z3CigQPPg9Hsb4LsGcmeMz73lk88ZmSaRvwxedseA748xjgnlMMo8p5rEOG3lsniZjnWVJuvrKRnAdvbLA91g8my_y1ccjj42TVLPgjeVxPtUsYMPwaaofdBjptO0zj0U6D-Ppept5Gr-E6fLydfmLeexLPM11GrQueevHwvfluCWCILi-HTKP3S3y1QU2evdYssj3u2V5-KxZwN-96o4-x1kez8Z5u3Nox1h_L3latiZhNjny_b0HYePhYyrcKhZ9YZGLPCkXXm8wqtTEfp3FLEkjneroYKX1KqU2hQ9s7i10zmUBJbW30HWw4J3k8muYTR51fjdvy0JSw-VcB62rb5-u7oet_29umMem-mf-9yX_5yKNnyfrvyqMV89mvB6TNNdpWxqR_Vu6fr9CZsfi-LPoERO3yX_JvK38YsBHtx8cbM8tGt0M54Cj3ZR2z8g5m1SsYnHgXNVceL3BqFITjpDhJ3KuRgsoqTLO2Vlw5hxvgnNgvLacMyKryjlRvVKiGdAAR7sx6Z0RNBapcKtYHEBTNRdebzCq1IRjy8WJoKnRAkqqDDR2FpxBI5oADRivLWiMyKqCRlavlGwGNMDRbkz6ZwSNRSrcKhYH0FTNhdcbjCo14dhyeSJoarSAkioDjZ0FZ9DIJkADxmsLGiOyqqBR1SulmgENcLQbk8EZQWORCreKxQE0VXPh9QajSk04tlydCJoaLaCkykBjZ8EZNKoJ0IDx2oLGiOyUn4iOrP-gs3kyy3SlX3_8VWA6etabA8iSRTrW92kyXm-z-fdurVt_EOks31zlm3-uZ5tLK4Mfxbwo5h_F6kDM7cRcuqgFd1IPXNSyR6sFmbikE5fk1h16Z1rMwXnRaiFc1NJ3UvdptSIT79LijoVYFMVdUtyjz7pHisE990mxAsUe0FTwARYMqFhxgVZDMNBySAYgR2ig5YgN3EDLYfACBG-wxQYPQI34AOQIEECOCIHkoC7cIMxh8Cg6GjEFuYEJTkOGd8Gx05hBt05zhvfB5gZprMpOq2HZaTksO5CjstNyWHaasgJQVtCoARML1KjsQI7KDuSo7EgOJl7QlBVg6AT9BFeQG2UXNGqEAsdOowbdOk0aAUgjDNLYlB2oUdmBHJUdyUHZgRw-9dOUFYCygkYNKjugLDo3gElUdoBJVHYgRxNPU1aCqZH0C3JBbpRd0qiR4IFO0qgBty5p0khAGmmQxqbsQI3KDuSo7EgOyg7kqOySpqwElJU0atBbPqAsOjeASfSeDzCJXvSBHE08TVmJjp1-ay7IzbLTqFHggU7RqCne-uj9r98BAAD__8OMEZ4= +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mF1v2kgYhe_3V6C52tV6heeDL0uRsmpTNVKURAkXlVouHDwNlghGtpFCo_z3CigQPPg9Hsb4LsGcmeMz73lk88ZmSaRvwxedseA748xjgnlMMo8p5rEOG3lsniZjnWVJuvrKRnAdvbLA91g8my_y1ccjj42TVLPgjeVxPtUsYMPwaaofdBjptO0zj0U6D-Ppept5Gr-E6fLydfmLeexLPM11GrQueevHwvfluCWCILi-HfaZx-4W-eoKG717LFnk--2yPHzWLODvXnVLn-Msj2fjvN059GOsv5c8LVuTMJsc-f7eg7Dx8DEWbpWLvrAJRp4UDK83GVVqYr_OYpakkU51dLDSepVSm8IHNvcWOueygJLaW-g6WPBOcvk1zCaPOr-bt2UhqeFyroPW1bdPV_fD1v83N8xjU_0z__uS_3ORxs-T9V8VxqtnM16PSZrrtC2NyP4tXb9fIbNjcfxZ9IiJ2-S_ZN5WfjHgo9sPDrbnFpVuiHTA0m5Mu2cknU0sVrm4kK5qMLzeZFSpCUfM8BNJV6MFlFQZ6ewsOJOON0E6MF5b0hmRVSWdqN4p0RBqgKXdnPTOiBqLWLhVLi6oqRoMrzcZVWrCsefiRNTUaAElVYYaOwvOqBFNoAaM1xY1RmRVUSOrd0o2hBpgaTcn_TOixiIWbpWLC2qqBsPrTUaVmnDsuTwRNTVaQEmVocbOgjNqZBOoAeO1RY0RWVXUqOqdUg2hBljazcngjKixiIVb5eKCmqrB8HqTUaUmHHuuTkRNjRZQUmWosbPgjBrVBGrAeG1RY0R2yk9FR9Z_0Nk8mWW60q9A_iowHT3rzQFkySId6_s0Ga-32fx7t9atP4h0lm-u8s0_17PNpZXBj2JeFPOPYnUg5nZiLl3UgjupBy5q2aPVgkxc0olLcusOvTMt5uC8aLUQLmrpO6n7tFqRiXdpccdCLIriLinu0WfdI8XgnvukWIFiD2gq-AALBlSsuECrIRhoOSQDkCM00HLEBm6g5TB4AYI32GKDB6BGfAByBAggR4RAclAXbhDmMHgUHY2YgtzABKchw7vg2GnMoFunOcP7YHODNFZlp9Ww7LQclh3IUdlpOSw7TVkBKCto1ICJBWpUdiBHZQdyVHYkBxMvaMoKMHSCfoIryI2yCxo1QoFjp1GDbp0mjQCkEQZpbMoO1KjsQI7KjuSg7EAOn_ppygpAWUGjBpUdUBadG8AkKjvAJCo7kKOJpykrwdRI-gW5IDfKLmnUSPBAJ2nUgFuXNGkkII00SGNTdqBGZQdyVHYkB2UHclR2SVNWAspKGjXoLR9QFp0bwCR6zweYRC_6QI4mnqasRMdOvzUX5GbZadQo8ECnaNQUb330_tfvAAAA__81gBPO # EXCEPT ALL and EXCEPT with some overlap. query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x >= 1) EXCEPT ALL (SELECT y FROM xyz WHERE x < 3) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9r2zwUxu_fT2HO1TumEUu288dQyBgdK5S2tLkYbL5wY60JpLGRFWhW8t1Hkmad7VSPFRfju6bxTzrW-T05eqZlmsir-FHmFP4gTowEMfKIkU-MAooYZSqdyjxP1faRPXCRPFHoMpovs5Xe_jtiNE2VpPCZ9FwvJIU0ie8X8lbGiVQ9lxglUsfzxW6bTM0fY7UeP61_E6Ov84WWKnTG3Pm5cl1Pnjk8DMOLqwkxul7p0BkLijaM0pV-2e51l_u1M4vzWXH9MadoEzHKdfwgKeQbdlrZgU3ZU8d716rFm1W_rrNapiqRSiaFlaItiR458urf4nx2J_V11uOlhk3WmQyd8-9fzm8mzufLS2K0kL_0_2P-4UzNH2a7v_6-Ny-99-s7eTaduEuVlqrHg_IxfXxzfb_GmR07jpdFjxRxlX5Ks55wywd8dPugsD2vLxrvUD4syu53Jx-83XzwNvIBOnHIR__UfIj6nRYdEtSi7EF3BBXtCiraEBR04iDo4FRBvfqd9jokqEXZw-4I6rUrqNeGoKATB0GHpwrq1--03yFBLcoedUdQv11B_TYEBZ04CDp6jyvwkfVvZZ6ly1zWut262wOTyYPcNyBPV2oqb1Q63W2z_3i943ZXl0Tmev-t2H-4WO6_2hZYHx40gTlvRAeN6JGZ5hZnJuzgQRO4dGa2dNCIHplpUabdf2mvALtl2DPCvrlbvhEW3Lx10CQfZhjkwwyjfAAa5APQIB_9JvkwwyAfZhjlA9AgH4AG-RgYLR2aJR02yceoieFmGBhuhpHhgAaGAxpNAJuxWf0ltZmbtjQcAlaT0xoHmvPKFCmoyoVZdG4eI8B0XpkjNqoDGrgOaCQ7woHtCEe6V2aole5mGulupqHuAEe6AxzpXhmkRd37QPfKTLHSvTJTrHQ300h3Mw11BzjSHeBI98o8tdLdTCPdzTTUHeBId4Aj3StTtXjXds26i8psMeoebf77EwAA___5-4G4 +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMll9r2zwUxu_fT2HO1TumEUu288dQyBgdK5S2tLkYbL5wY60JpLGRFWhW8t1Hkmad7VSPFRfju6bxTzrW-T05eqZlmsir-FHmFP4gTowEMfKIkU-MAooYZSqdyjxP1faRPXCRPFHoMpovs5Xe_jtiNE2VpPCZ9FwvJIU0ie8X8lbGiVQ9lxglUsfzxW6bTM0fY7UeP61_E6Ov84WWKnTG3Pm5cl1Pnjk8DMOLq8mQGF2vdOiMBUUbRulKv-z3us392pnF-ay4wZhTtIkY5Tp-kBTyDTut7sCm7qnjvW_Z4s2yX9dZLVOVSCWTwkrRlkSPHHn3b3E-u5P6OuvxUssm60yGzvn3L-c3E-fz5SUxWshf-v8x_3Cm5g-z3V9_35uX3vv1nTybVtylSkvV40H5mD6-ub5f48yOHcfLokeKuEo_pVlPuOUDPrp9UNie1zeNdykhFnX3O5QQ3m5CeBsJAa04JKR_akJE_VaLLilqUfegQ4qKdhUVbSgKWnFQdHCqol79VntdUtSi7mGHFPXaVdRrQ1HQioOiw1MV9eu32u-SohZ1jzqkqN-uon4bioJWHBQdvcdV-Mj6tzLP0mUua91y3e2ByeRB7huQpys1lTcqne622X-83nG7C0wic73_Vuw_XCz3X20LrA8PmsCcN6KDRvTITHOLMxN28KAJXDozWzpoRI_MtCjT7r-0V4DdMuwZYd_cLd8IC27eOmiSDzMM8mGGUT4ADfIBaJCPfpN8mGGQDzOM8gFokA9Ag3wMjJYOzZIOm-Rj1MRwMwwMN8PIcEADwwGNJoDN2Kz-ktrMTVsaDgGryWmNA815ZYoUVOXCLDo3jxFgOq_MERvVAQ1cBzSSHeHAdoQj3Ssz1Ep3M410N9NQd4Aj3QGOdK8M0qLufaB7ZaZY6V6ZKVa6m2mku5mGugMc6Q5wpHtlnlrpbqaR7mYa6g5wpDvAke6VqVq8a7tm3UVlthh1jzb__QkAAP__A0qD6A== query T SELECT url FROM [EXPLAIN (DISTSQL) (SELECT y FROM xyz WHERE x >= 1) EXCEPT (SELECT y FROM xyz WHERE x < 3) ORDER BY y] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mFtv4kYcxd_7Kax5alVXeC7cLEWialM1UpRECQ8r7fLg4NlgiWBkGylslO--AhYIHvw_Htv4jduZOT7zPz_ZvLNFHOq74FWnzP_KOHOZYC6TzGWKuazLJi5bJvFUp2mcbH6yE9yEb8z3XBYtlqts8_HEZdM40cx_Z1mUzTXz2Th4nutHHYQ66XjMZaHOgmi-3WaZRK9Bsh69rX8wl_0XzTOd-M6IO99Wnif1lcN937-5GzOX3a8y3xkJNvlwWbzKjtulWfCimc8_3PKW_o3SLFpMs0731M-I59Y_Sp7XzixIZ2d-f_QgbDx8joVb5TJ1ZOlYZKVYeLO5qEITx3VWizgJdaLDk5W2qxTaFB6webTQvZQFlNTRQq-GBbeSy_-DdPaks_tlR-aSGq-X2neuv_xz_TB2_r69ZS6b6-_Z7yP-x1USvcy2rw7jVXxNfZvxeoqTTCcdaUT2Z-H6gxKZnYvj16JnTNzFf8XLjvLyAZ_dfniyPbcodEucA5YOY9q7IOdsYrHKpTrnysbCm81FFZqoCRlekXMNWkBJFXHOzkJtzvE2OAfGa885I7KynBPlGyVaAg2wdJiT_gVBYxELt8qlOmjKxsKbzUUVmqjZclERNA1aQEkVgcbOQm3QiDZAA8ZrDxojsrKgkeUbJVsCDbB0mJPBBUFjEQu3yqU6aMrGwpvNRRWaqNlyWRE0DVpASRWBxs5CbdDINkADxmsPGiOysqBR5RulWgINsHSYk-EFQWMRC7fKpTpoysbCm81FFZqo2XJVETQNWkBJFYHGzkJt0Kg2QAPGaw8aI7IqfxGdWf9Rp8t4kepS__54m8B0-KJ3B5DGq2SqH5J4ut1m9_Z-q9t-EOo0233Ld29uFruvNgY_i3lezD-L1YmY24m5rKMWvJZ6WEct-7RakIlLOnFJbt2ld6bFHJwXrRaijlp6tdQDWq3IxHu0uGshFnlxjxT36bPuk2JwzQNSrECxhzQVPIAFAypWXKDVEAy0HJIByBEaaDliAzfQchq8AMEbbLHBA1AjPgA5AgSQI0IgOagLNwhzGjyKjkZMTm5ggtOQ4T1w7DRm0KXTnOEDsLlBGquy02pYdloOyw7kqOy0HJadpqwAlBU0asDEAjUqO5CjsgM5KjuSg4kXNGUFGDpB38Hl5EbZBY0aocCx06hBl06TRgDSCIM0NmUHalR2IEdlR3JQdiCHd_00ZQWgrKBRg8oOKIvODWASlR1gEpUdyNHE05SVYGok_YCckxtllzRqJLihkzRqwKVLmjQSkEYapLEpO1CjsgM5KjuSg7IDOSq7pCkrAWUljRr0lA8oi84NYBI95wNMogd9IEcTT1NWomOnn5pzcrPsNGoUuKFTNGrylz75-O1nAAAA__-ffBGo +https://cockroachdb.github.io/distsqlplan/decode.html#eJy8mEtv8kYYhff9FdasWtUVngs3S59E1aZqpCiJEhaVWhYOngZLBCPbSKFR_nsFfEDw4Pd4GOMdtzNzfOY9j2w-2CKN9X30pnMW_s0485lgPpPMZ4r5rMsmPltm6VTneZptfrIT3MbvLAx8liyWq2Lz8cRn0zTTLPxgRVLMNQvZOHqZ6ycdxTrrBMxnsS6iZL7dZpklb1G2Hr2v_2M--yOZFzoLvRH3_lkFgdTfPB6G4e39eMB89rAqQm8k2OTTZ-mqOO6XF9GrZiH_9Ot7-j3Ji2QxLTrdU0MjXlr_KHlZe7Mon535_dGDsPHwNRduFczUk_VzkRflwpsNRlWaOK6zWqRZrDMdn6y0XaXSpgiAzaOF7rUsoKSOFnoOFvyLXP4Z5bNnXTwsO7KU1Hi91KF389dvN49j79e7O-azuf63-HHEf_qWJa-z7avDeFVfU99mvJ7TrNBZRxqR_Vy5_qBGZufi-L7oGRP36S_psqOCcsBntx-ebM8tGt0W6YCnw5z2rkg6m1ysgnEgXd1ceLPBqEoTjpjhF5KuQQsoqSrS2VlwJh1vg3RgvPakMyKrSzpRv1KiLdQAT4dB6V8RNRa5cKtgHFBTNxfebDCq0oRjz8WFqGnQAkqqCjV2FpxRI9pADRivPWqMyOqiRtavlGwLNcDTYVAGV0SNRS7cKhgH1NTNhTcbjKo04dhzeSFqGrSAkqpCjZ0FZ9TINlADxmuPGiOyuqhR9Sul2kIN8HQYlOEVUWORC7cKxgE1dXPhzQajKk049lxdiJoGLaCkqlBjZ8EZNaoN1IDx2qPGiOySv4rOrP-k82W6yHWtf4GCTWA6ftW7A8jTVTbVj1k63W6ze_uw1W0_iHVe7L7luze3i91XG4Nfxbws5l_F6kTM7cRcuqgFd1IPXdSyT6sFmbikE5fk1l16Z1rMwXnRaiFc1DJwUg9otSIT79HiroVYlMU9Utynz7pPisE1D0ixAsUe0lQIABYMqFhxgVZDMNBySAYgR2ig5YgN3EDLafACBG-wxQYPQI34AOQIEECOCIHkoC7cIMxp8Cg6GjEluYEJTkOG98Cx05hBl05zhg_A5gZprMpOq2HZaTksO5CjstNyWHaasgJQVtCoARML1KjsQI7KDuSo7EgOJl7QlBVg6AR9B1eSG2UXNGqEAsdOowZdOk0aAUgjDNLYlB2oUdmBHJUdyUHZgRze9dOUFYCygkYNKjugLDo3gElUdoBJVHYgRxNPU1aCqZH0A3JJbpRd0qiR4IZO0qgBly5p0khAGmmQxqbsQI3KDuSo7EgOyg7kqOySpqwElJU0atBTPqAsOjeASfScDzCJHvSBHE08TVmJjp1-ai7JzbLTqFHghk7RqClf-uTzh_8DAAD__xG7E9g= # EXCEPT ALL and EXCEPT with swapped column orders. query T diff --git a/pkg/sql/opt/exec/execbuilder/testdata/lookup_join b/pkg/sql/opt/exec/execbuilder/testdata/lookup_join index 18409f34ffd6..e41b232956de 100644 --- a/pkg/sql/opt/exec/execbuilder/testdata/lookup_join +++ b/pkg/sql/opt/exec/execbuilder/testdata/lookup_join @@ -129,7 +129,7 @@ render · · (a, b, c, d) · query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM (SELECT * FROM data WHERE c = 1) AS l NATURAL JOIN data AS r] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzElFGrmzAUx9_3KeQ8Z1yjtrc3MPBp0DF6R-nb8CEzh-JmcySJsFH87kMdVEsbhWL3aPTv_8fvhHMGTQp38oQWxHfgwCACBjEwSIDBCjIGlaEcrSXTftIHtuo3iJBBoavatccZg5wMgjiDK1yJIOAgf5S4R6nQvITAQKGTRdnVVKY4SfMnVdJJYPC5KB0aEaRx8CngQojt7gBZw4Bqd_m_dfKIIHjD5jN8oUL_Q1h5Eb4S_aqr4CcVOiAtgpSzNGJpzNJWw3vtxkf34KK7cBemWpNRaFCNgLLmBv6OPlL1wsOrL293x6NuPn84fKnhTDAMhrN-_nCi-YKipQRNMAwEvT5fUDxfULyUoAmGgaDN8wUl8wUlSwmaYBgIevu_--8G3B5tRdrirO0WtvsR1RH7ZWqpNjl-M5R3Nf3je5frDhRa17_l_cNW969awGGYe8PRKMyvw5G_eaI69qYTfzh5hHvlDa_9zetHml-94Y2_efNI85t_VuHENfFfsuvurPnwNwAA__8ZfQMm +https://cockroachdb.github.io/distsqlplan/decode.html#eJzElFGrmzAUx9_3KeQ8Z1yjttcbGPg06Bi943Lfhg-ZORQ3myNJhI3idx_qoFraKBS7R2P-_H_8Tjgn0KRwL49oQXwHDgwiYBADgwQYbCBnUBsq0Foy3ZUhsFO_QYQMSl03rjvOGRRkEMQJXOkqBAHv8keFbygVmqcQGCh0sqz6mtqUR2n-ZEo6CQw-l5VDI4IsDj4FXAix27-nkLcMqHHnAuvkAUHwli2H-EKl_sew8TJ8JfrV1MFPKnVAWgQZZ1nEsphlnYfXxk2PbsFFN-HOTI0mo9CgmgDl7RX8PX2k-omHFzevd8eTbr58Ony16cxAjKazffx0ouWGotUMzUCMDD0_3lC83FC8mqEZiJGh9PGGkuWGktUMzUCMDL383x14Be4NbU3a4qINF3Y7EtUBh4VqqTEFfjNU9DXD52uf6w8UWjf85cPHTg-_OsBxmHvD0STML8ORv3mmOvamE384uYd74w1v_c3be5qfveHU35ze0_zin1U480z8j-yyO28__A0AAP__5bUEPg== statement ok CREATE TABLE books (title STRING, edition INT, shelf INT, PRIMARY KEY (title, edition)) @@ -263,7 +263,7 @@ render · · (title, edition, shelf, title, editi query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT * FROM authors INNER JOIN books2 ON books2.edition = 1 WHERE books2.title = authors.book] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkU9r8zAMxu_vpzA666Vx2l4MA187RjpKbyMHNxFd1tYK_gMbJd99OB6sHWu2HfVIPz2P5TNYbqkyJ_KgnkACwhJqhN5xQ96zS3IeWrWvoAqEzvYxJLlGaNgRqDOELhwJFFT8n_tZCQgtBdMdx7EBgWP4hHwwewI1H_BisZxevDW7I23ItORmxdV66F13Mu5NmxieU95bfvIvfvfc2Q87-b3djvng00sfmA-xFy_cWcFWCZ3EdSX0QtwJqZRaVdukxKCElqhL1HPUC9TLm1HLq6g_3HxDvmfr6VdHL4Yagdo95X_1HF1Dj46b0SaX65EbhZZ8yN15LlY2t1LAS1hOwuU0XE7CxRe4Hv69BwAA___eYeIR +https://cockroachdb.github.io/distsqlplan/decode.html#eJyUkUFrwzAMhe_7FUZnjcZpC8Mw8LVjpKP0NnJwE9FlTa1gO7BR8t-H48HasWbbUU_69J7lE1iuqTBH8qCeQQLCEkqEznFF3rOLchpa1W-gMoTGdn2IcolQsSNQJwhNaAkUFHzL3SwHhJqCadpxbEDgPnxBPpg9gZoPeLZYTi_eml1LGzI1uVl2sR461xyNe9emDy8x7zU_-R-_B27sp5382W7HfPDxpY_Mh74Tr9xYwVYJHcV1IfRC3AuplFoV27so9UEJLVHnqOeoF6iXV7PmF1l_OfqGfMfW05-ung0lAtV7Sh_ruXcVPTmuRptUrkduFGryIXXnqVjZ1IoBz2E5CefTcD4JZ9_gcrj5CAAA__-cGuJJ #################################### # LOOKUP JOIN ON SECONDARY INDEX # @@ -375,7 +375,7 @@ render · · (a, b) +a query T SELECT url FROM [EXPLAIN (DISTSQL) SELECT t1.a, t2.b FROM small t1 LEFT JOIN large t2 ON t1.a = t2.a AND t2.b % 6 = 0 ORDER BY t1.a] ---- -https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlUGLm0AUx-_9FMMfCi2dso6abHag4GULWRYtwZ6KBxsfwdY4MqPQZcl3L9HSaNiMQnLwlpnJP7_3fm-YvKJUGYXpngzkDwhwuODwwOGDY4GEo9JqS8YoffxKF1hnfyAdjrysmvq4nXBslSbIV9R5XRAk4vRnQRtKM9J3DjgyqtO8aDGVzvepfgnMPi0KcERNLVkgkBw4VFOfftPU6Y4gxYFP5z6pvPyHXQyx8UtFkj0_fo1Z9D1-3LCnaB2C_y-nSPWOwPGs1O-mYr9UXjJVtpVxRCH7EHjsPVtKKddh_JF9YU738dQBD7yLTbgXmzjVrnRGmrJh2YH4hOTwRqeh-qyqOzGUewnvDfBi-uzELWc3wu3Nbjnf2bnT5bm3lDfC7cm7n688b7o875byRrg9eav5yvOny_NvKW-E25P3MF95I_8bGzKVKg1Nek2d43tM2Y6699uoRm_pm1bbFtMtozbXbmRk6u5UdIt12R0dC-yHhTXsDsLiPOzaySNoz5r27WH_mroX1vDSTl5eQ763hld28uoa8oN9Vs7INbFfsnN2cnj3NwAA__8Lbyf- +https://cockroachdb.github.io/distsqlplan/decode.html#eJzMlUGLm0AUx-_9FMMfCi2dso6abHag4GULWRYtwZ6KBxsfwdY4MqPQZcl3L9Gl0dCMQnLwlpnJP7_3fm-YvKJUGYXpngzkDwhwuODwwOGDY4GEo9JqS8YoffxKF1hnfyAdjrysmvq4nXBslSbIV9R5XRAk4vRnQRtKM9J3DjgyqtO8aDGVzvepfgnMPi0KcERNLVkgkBw4VFOfftPU6Y4gxYFP5z6pvHzDLobY-KUiyZ4fv8Ys-h4_bthTtA7B_5VTpHpH4HhW6ndTsV8qL5kq28o4opB9CDz2ni2llOswXn1kX5jz9vnUAw-8i224F9s4Va90RpqyYeGB-ITk8J9eQ_VZVXdiqPcS3hvgxfTpiVtOb4Tbm95yztNzp-tzb6lvhNvTdz9nfd50fd4t9Y1we_pWc9bnT9fn31LfCLen72HO-kb-QTZkKlUamvSqOsd3mbIdde-4UY3e0jetti2mW0Ztrt3IyNTdqegW67I7OhbYDwtr2B2ExXnYtZNH0J417dvD_jV1L6zhpZ28vIZ8bw2v7OTVNeQH-6yckWtiv2Tn7OTw7m8AAAD__48rKi4= # Left join against covering secondary index query TTTTT diff --git a/pkg/sql/opt/memo/interner_test.go b/pkg/sql/opt/memo/interner_test.go index 4b4223b77a6a..4c3af5b1a1cd 100644 --- a/pkg/sql/opt/memo/interner_test.go +++ b/pkg/sql/opt/memo/interner_test.go @@ -219,12 +219,12 @@ func TestInterner(t *testing.T) { }}, {hashFn: in.hasher.HashColType, eqFn: in.hasher.IsColTypeEqual, variations: []testVariation{ - {val1: coltypes.Int, val2: coltypes.Int, equal: true}, - {val1: coltypes.Int, val2: coltypes.Int2, equal: false}, + {val1: coltypes.Int8, val2: coltypes.Int8, equal: true}, + {val1: coltypes.Int8, val2: coltypes.Int2, equal: false}, {val1: coltypes.Float4, val2: coltypes.Float8, equal: false}, {val1: coltypes.VarChar, val2: coltypes.String, equal: false}, {val1: &coltypes.TDecimal{Prec: 19}, val2: &coltypes.TDecimal{Prec: 19, Scale: 2}, equal: false}, - {val1: coltypes.TTuple{coltypes.String, coltypes.Int}, val2: coltypes.TTuple{coltypes.Int, coltypes.String}, equal: false}, + {val1: coltypes.TTuple{coltypes.String, coltypes.Int8}, val2: coltypes.TTuple{coltypes.Int8, coltypes.String}, equal: false}, {val1: coltypes.Int2vector, val2: coltypes.OidVector, equal: false}, }}, diff --git a/pkg/sql/opt/memo/testdata/logprops/constraints-null b/pkg/sql/opt/memo/testdata/logprops/constraints-null index 1a7c7f19e1ee..716c33f70706 100644 --- a/pkg/sql/opt/memo/testdata/logprops/constraints-null +++ b/pkg/sql/opt/memo/testdata/logprops/constraints-null @@ -134,7 +134,7 @@ select └── filters └── gt [type=bool, outer=(1), constraints=(/1: (/NULL - ])] ├── variable: x [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── function: sin [type=float] └── cast: FLOAT8 [type=float] └── variable: x [type=int] diff --git a/pkg/sql/opt/memo/testdata/logprops/insert b/pkg/sql/opt/memo/testdata/logprops/insert index 8525b417766f..6aefa2eb90f1 100644 --- a/pkg/sql/opt/memo/testdata/logprops/insert +++ b/pkg/sql/opt/memo/testdata/logprops/insert @@ -181,23 +181,23 @@ project ├── fd: ()-->(8,11) ├── prune: (8,11) └── insert abcde - ├── columns: y:8(int!null) int:10(int) column11:11(int!null) column12:12(int!null) column14:14(int) + ├── columns: y:8(int!null) int8:10(int) column11:11(int!null) column12:12(int!null) column14:14(int) ├── table columns: a:1(int) b:2(int) c:3(int) d:4(int) rowid:5(int) "e:mutation":6(int) - ├── input columns: y:8(int!null) int:10(int) column11:11(int!null) column14:14(int) column12:12(int!null) column13:13(unknown) + ├── input columns: y:8(int!null) int8:10(int) column11:11(int!null) column14:14(int) column12:12(int!null) column13:13(unknown) ├── side-effects, mutations ├── fd: ()-->(8,11), (10)-->(14) └── project - ├── columns: column14:14(int) y:8(int!null) int:10(int) column11:11(int!null) column12:12(int) column13:13(unknown) + ├── columns: column14:14(int) y:8(int!null) int8:10(int) column11:11(int!null) column12:12(int) column13:13(unknown) ├── side-effects ├── fd: ()-->(8,11,13), (10)-->(14) ├── prune: (8,10-14) ├── project - │ ├── columns: column11:11(int!null) column12:12(int) column13:13(unknown) y:8(int!null) int:10(int) + │ ├── columns: column11:11(int!null) column12:12(int) column13:13(unknown) y:8(int!null) int8:10(int) │ ├── side-effects │ ├── fd: ()-->(8,11,13) │ ├── prune: (8,10-13) │ ├── project - │ │ ├── columns: int:10(int) y:8(int!null) + │ │ ├── columns: int8:10(int) y:8(int!null) │ │ ├── fd: ()-->(8) │ │ ├── prune: (8,10) │ │ ├── select @@ -217,7 +217,7 @@ project │ │ │ ├── variable: y [type=int] │ │ │ └── const: 1 [type=int] │ │ └── projections - │ │ └── cast: INT [type=int, outer=(9)] + │ │ └── cast: INT8 [type=int, outer=(9)] │ │ └── plus [type=float] │ │ ├── variable: z [type=float] │ │ └── const: 1.0 [type=float] @@ -228,6 +228,6 @@ project └── projections └── plus [type=int, outer=(10,11)] ├── plus [type=int] - │ ├── variable: int [type=int] + │ ├── variable: int8 [type=int] │ └── variable: column11 [type=int] └── const: 1 [type=int] diff --git a/pkg/sql/opt/memo/testdata/typing b/pkg/sql/opt/memo/testdata/typing index c4d061fb0bc7..51fddbea96a5 100644 --- a/pkg/sql/opt/memo/testdata/typing +++ b/pkg/sql/opt/memo/testdata/typing @@ -260,8 +260,8 @@ project │ └── columns: x:1(int!null) arr:2(int[]) └── projections ├── arr || arr [type=int[]] - ├── arr || NULL::INT[] [type=int[]] - └── NULL::INT[] || arr [type=int[]] + ├── arr || NULL::INT8[] [type=int[]] + └── NULL::INT8[] || arr [type=int[]] # Array Element Concat build @@ -274,8 +274,8 @@ project └── projections ├── x || arr [type=int[]] ├── arr || x [type=int[]] - ├── x || NULL::INT[] [type=int[]] - └── NULL::INT[] || x [type=int[]] + ├── x || NULL::INT8[] [type=int[]] + └── NULL::INT8[] || x [type=int[]] # Function with fixed return type. build @@ -337,7 +337,7 @@ scalar-group-by │ │ └── columns: x:1(string!null) z:2(decimal!null) │ └── projections │ ├── z = 0 [type=bool] - │ ├── x::INT [type=int] + │ ├── x::INT8 [type=int] │ └── x::JSONB [type=jsonb] └── aggregations ├── array-agg [type=decimal[]] @@ -394,7 +394,7 @@ project │ │ │ │ ├── scan b │ │ │ │ │ └── columns: b.x:4(string!null) z:5(decimal!null) │ │ │ │ └── projections - │ │ │ │ └── z::INT [type=int] + │ │ │ │ └── z::INT8 [type=int] │ │ │ └── filters │ │ │ └── y = column7 [type=bool] │ │ └── aggregations diff --git a/pkg/sql/opt/norm/custom_funcs.go b/pkg/sql/opt/norm/custom_funcs.go index 00ece2a4dc54..61d0e4baa764 100644 --- a/pkg/sql/opt/norm/custom_funcs.go +++ b/pkg/sql/opt/norm/custom_funcs.go @@ -1351,10 +1351,10 @@ func isMonotonicConversion(from, to coltypes.T) bool { to == coltypes.Date } - if from == coltypes.Int || + if from == coltypes.Int8 || from == coltypes.Float8 || from == coltypes.Decimal { - return to == coltypes.Int || + return to == coltypes.Int8 || to == coltypes.Float8 || to == coltypes.Decimal } diff --git a/pkg/sql/opt/norm/testdata/rules/comp b/pkg/sql/opt/norm/testdata/rules/comp index 0fd6f16feb7f..95c22fc69381 100644 --- a/pkg/sql/opt/norm/testdata/rules/comp +++ b/pkg/sql/opt/norm/testdata/rules/comp @@ -85,7 +85,7 @@ select │ ├── key: (1) │ └── fd: (1)-->(2-6) └── filters - └── random()::INT > (i + i) [type=bool, outer=(2), side-effects] + └── random()::INT8 > (i + i) [type=bool, outer=(2), side-effects] # -------------------------------------------------- # NormalizeCmpPlusConst diff --git a/pkg/sql/opt/norm/testdata/rules/prune_cols b/pkg/sql/opt/norm/testdata/rules/prune_cols index 2ee6458d65fa..20afcc18a253 100644 --- a/pkg/sql/opt/norm/testdata/rules/prune_cols +++ b/pkg/sql/opt/norm/testdata/rules/prune_cols @@ -1336,7 +1336,7 @@ group-by │ ├── scan a │ │ └── columns: i:2(int) s:4(string) │ └── projections - │ └── i + s::INT [type=int, outer=(2,4)] + │ └── i + s::INT8 [type=int, outer=(2,4)] └── aggregations └── avg [type=decimal, outer=(5)] └── variable: column5 [type=int] diff --git a/pkg/sql/opt/norm/testdata/rules/scalar b/pkg/sql/opt/norm/testdata/rules/scalar index 79429ca7a263..8b6eaeb4b1ab 100644 --- a/pkg/sql/opt/norm/testdata/rules/scalar +++ b/pkg/sql/opt/norm/testdata/rules/scalar @@ -194,7 +194,7 @@ project ├── a.arr::DECIMAL[] [type=decimal[], outer=(6)] ├── a.s::JSONB [type=jsonb, outer=(4)] ├── a.s::VARCHAR(2) [type=string, outer=(4)] - ├── a.i::INT2::INT8 [type=int, outer=(2)] + ├── a.i::INT2 [type=int, outer=(2)] ├── a.s::CHAR::VARCHAR [type=string, outer=(4)] ├── ARRAY[1,2]::OIDVECTOR [type=oid[]] └── ARRAY[1,2]::INT2VECTOR [type=int[]] @@ -211,7 +211,7 @@ SELECT null::int2vector ---- values - ├── columns: int:1(int) timestamptz:2(timestamptz) char:3(string) oidvector:4(oid[]) int2vector:5(int[]) + ├── columns: int8:1(int) timestamptz:2(timestamptz) char:3(string) oidvector:4(oid[]) int2vector:5(int[]) ├── cardinality: [1 - 1] ├── key: () ├── fd: ()-->(1-5) @@ -1064,7 +1064,7 @@ select │ ├── columns: k:1(int!null) │ └── key: (1) └── filters - └── k = ANY '{1,2,3}'::INT[] [type=bool, outer=(1)] + └── k = ANY '{1,2,3}'::INT8[] [type=bool, outer=(1)] # -------------------------------------------------- # FoldCollate diff --git a/pkg/sql/opt/norm/testdata/rules/side_effects b/pkg/sql/opt/norm/testdata/rules/side_effects index 56f2e0308fa8..dbdaa2e5fb83 100644 --- a/pkg/sql/opt/norm/testdata/rules/side_effects +++ b/pkg/sql/opt/norm/testdata/rules/side_effects @@ -76,7 +76,7 @@ project │ │ └── filters │ │ └── i = 5 [type=bool, outer=(2), constraints=(/2: [/5 - /5]; tight), fd=()-->(2)] │ └── projections - │ └── i + (random() * 10.0)::INT [type=int, outer=(2), side-effects] + │ └── i + (random() * 10.0)::INT8 [type=int, outer=(2), side-effects] └── aggregations └── avg [type=float, outer=(3)] └── variable: f [type=float] @@ -216,7 +216,7 @@ project │ │ │ └── fd: (6)-->(7) │ │ └── filters │ │ └── x = i [type=bool, outer=(2,6), constraints=(/2: (/NULL - ]; /6: (/NULL - ]), fd=(2)==(6), (6)==(2)] - │ └── (random() * 10.0)::INT [type=int] + │ └── (random() * 10.0)::INT8 [type=int] └── const: 5 [type=int] # Don't decorrelate CASE ELSE branch if there are side effects. diff --git a/pkg/sql/opt/optbuilder/testdata/aggregate b/pkg/sql/opt/optbuilder/testdata/aggregate index 2d0e07d1b7b3..d05027aef8a9 100644 --- a/pkg/sql/opt/optbuilder/testdata/aggregate +++ b/pkg/sql/opt/optbuilder/testdata/aggregate @@ -966,7 +966,7 @@ scalar-group-by │ ├── values │ │ └── tuple [type=tuple] │ └── projections - │ ├── cast: INT [type=int] + │ ├── cast: INT8 [type=int] │ │ └── null [type=unknown] │ └── tuple [type=tuple{unknown, unknown}] │ ├── null [type=unknown] @@ -1620,7 +1620,7 @@ project │ │ ├── values │ │ │ └── tuple [type=tuple] │ │ └── projections - │ │ ├── cast: INT [type=int] + │ │ ├── cast: INT8 [type=int] │ │ │ └── const: 1 [type=int] │ │ ├── cast: FLOAT8 [type=float] │ │ │ └── const: 2.0 [type=float] @@ -1651,7 +1651,7 @@ scalar-group-by │ ├── values │ │ └── tuple [type=tuple] │ └── projections - │ ├── cast: INT [type=int] + │ ├── cast: INT8 [type=int] │ │ └── const: 2 [type=int] │ ├── cast: FLOAT8 [type=float] │ │ └── const: 3.0 [type=float] @@ -1675,7 +1675,7 @@ scalar-group-by │ ├── values │ │ └── tuple [type=tuple] │ └── projections - │ ├── cast: INT [type=int] + │ ├── cast: INT8 [type=int] │ │ └── const: 1 [type=int] │ ├── cast: FLOAT8 [type=float] │ │ └── const: 2.0 [type=float] @@ -1699,7 +1699,7 @@ scalar-group-by │ ├── values │ │ └── tuple [type=tuple] │ └── projections - │ ├── cast: INT [type=int] + │ ├── cast: INT8 [type=int] │ │ └── const: 1 [type=int] │ ├── cast: FLOAT8 [type=float] │ │ └── const: 1.0 [type=float] @@ -1723,7 +1723,7 @@ scalar-group-by │ ├── values │ │ └── tuple [type=tuple] │ └── projections - │ ├── cast: INT [type=int] + │ ├── cast: INT8 [type=int] │ │ └── const: 1 [type=int] │ ├── cast: FLOAT8 [type=float] │ │ └── const: 1.0 [type=float] diff --git a/pkg/sql/opt/optbuilder/testdata/insert b/pkg/sql/opt/optbuilder/testdata/insert index 76bdbba96d21..e66d20664114 100644 --- a/pkg/sql/opt/optbuilder/testdata/insert +++ b/pkg/sql/opt/optbuilder/testdata/insert @@ -664,7 +664,7 @@ project │ │ ├── scan xyz │ │ │ └── columns: xyz.x:7(string!null) y:8(int) z:9(float) │ │ └── projections - │ │ └── cast: INT [type=int] + │ │ └── cast: INT8 [type=int] │ │ └── variable: xyz.x [type=string] │ └── projections │ ├── const: 10 [type=int] diff --git a/pkg/sql/opt/optbuilder/testdata/project b/pkg/sql/opt/optbuilder/testdata/project index 6eb08882d862..71b95dce90df 100644 --- a/pkg/sql/opt/optbuilder/testdata/project +++ b/pkg/sql/opt/optbuilder/testdata/project @@ -217,7 +217,7 @@ error (42846): invalid cast: tuple{int, float} -> TIMESTAMP build SELECT CAST(x AS int[]) FROM b ---- -error (42846): invalid cast: int -> INT[] +error (42846): invalid cast: int -> INT8[] exec-ddl CREATE TABLE abc (a INT PRIMARY KEY, b INT, c INT) diff --git a/pkg/sql/opt/optbuilder/testdata/scalar b/pkg/sql/opt/optbuilder/testdata/scalar index bd9968e05ebb..e56761627b61 100644 --- a/pkg/sql/opt/optbuilder/testdata/scalar +++ b/pkg/sql/opt/optbuilder/testdata/scalar @@ -307,7 +307,7 @@ cast: FLOAT8 [type=float] build-scalar 1.1::int ---- -cast: INT [type=int] +cast: INT8 [type=int] └── const: 1.1 [type=decimal] build-scalar @@ -318,7 +318,7 @@ const: '2010-05-12 00:00:00+00:00' [type=timestamp] build-scalar '123'::int ---- -cast: INT [type=int] +cast: INT8 [type=int] └── const: 123 [type=int] build-scalar vars=(int, int) @@ -607,7 +607,7 @@ null [type=unknown] build-scalar NULL::int ---- -cast: INT [type=int] +cast: INT8 [type=int] └── null [type=unknown] build-scalar vars=(int[]) @@ -720,14 +720,14 @@ concat [type=int[]] ├── array: [type=int[]] │ ├── const: 1 [type=int] │ └── const: 2 [type=int] - └── cast: INT[] [type=int[]] + └── cast: INT8[] [type=int[]] └── null [type=unknown] build-scalar NULL || ARRAY[1, 2] ---- concat [type=int[]] - ├── cast: INT[] [type=int[]] + ├── cast: INT8[] [type=int[]] │ └── null [type=unknown] └── array: [type=int[]] ├── const: 1 [type=int] diff --git a/pkg/sql/opt/optbuilder/testdata/select b/pkg/sql/opt/optbuilder/testdata/select index d2b0ef63c207..3bfbd60c4f3e 100644 --- a/pkg/sql/opt/optbuilder/testdata/select +++ b/pkg/sql/opt/optbuilder/testdata/select @@ -684,7 +684,7 @@ project │ ├── columns: column1:1(int) │ └── tuple [type=tuple{int}] │ └── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -709,7 +709,7 @@ project │ └── variable: column2 [type=int] └── tuple [type=tuple{int, int}] ├── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -726,7 +726,7 @@ project │ ├── columns: column1:1(int) │ └── tuple [type=tuple{int}] │ └── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -752,7 +752,7 @@ project │ └── variable: column2 [type=int] └── tuple [type=tuple{int, int}] ├── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] # Tests with an empty IN tuple. @@ -775,7 +775,7 @@ project │ └── gt [type=bool] │ ├── variable: column1 [type=int] │ └── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -806,7 +806,7 @@ project │ └── variable: column2 [type=int] └── tuple [type=tuple{int, int}] ├── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -829,7 +829,7 @@ project │ └── gt [type=bool] │ ├── variable: column1 [type=int] │ └── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -861,7 +861,7 @@ project │ └── variable: column2 [type=int] └── tuple [type=tuple{int, int}] ├── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -884,7 +884,7 @@ project │ └── gt [type=bool] │ ├── variable: column1 [type=int] │ └── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -916,7 +916,7 @@ project │ └── variable: column2 [type=int] └── tuple [type=tuple{int, int}] ├── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -939,7 +939,7 @@ project │ └── gt [type=bool] │ ├── variable: column1 [type=int] │ └── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] build @@ -971,7 +971,7 @@ project │ └── variable: column2 [type=int] └── tuple [type=tuple{int, int}] ├── const: 1 [type=int] - └── cast: INT [type=int] + └── cast: INT8 [type=int] └── null [type=unknown] exec-ddl @@ -1069,7 +1069,7 @@ select build SELECT * FROM a WHERE (x > 10)::INT[] ---- -error (42846): invalid cast: bool -> INT[] +error (42846): invalid cast: bool -> INT8[] build SELECT * FROM a WHERE x = $1 diff --git a/pkg/sql/opt/optbuilder/testdata/srfs b/pkg/sql/opt/optbuilder/testdata/srfs index 3da97ab2046c..7a2516195e16 100644 --- a/pkg/sql/opt/optbuilder/testdata/srfs +++ b/pkg/sql/opt/optbuilder/testdata/srfs @@ -799,7 +799,7 @@ project │ │ ├── scan t │ │ │ └── columns: a:1(string) t.rowid:2(int!null) │ │ └── projections - │ │ └── cast: INT [type=int] + │ │ └── cast: INT8 [type=int] │ │ └── variable: a [type=string] │ └── aggregations │ ├── max [type=string] @@ -823,7 +823,7 @@ project │ └── zip │ └── function: generate_series [type=int] │ ├── const: 0 [type=int] - │ └── cast: INT [type=int] + │ └── cast: INT8 [type=int] │ └── variable: b [type=string] └── const: 1 [type=int] diff --git a/pkg/sql/opt/xform/testdata/external/hibernate b/pkg/sql/opt/xform/testdata/external/hibernate index eb3cc6514944..1d4c3d78b45d 100644 --- a/pkg/sql/opt/xform/testdata/external/hibernate +++ b/pkg/sql/opt/xform/testdata/external/hibernate @@ -1107,7 +1107,7 @@ semi-join │ │ ├── key: (7) │ │ └── fd: (7)-->(10) │ └── filters - │ └── phone.id = $1::INT [type=bool, outer=(7), constraints=(/7: (/NULL - ])] + │ └── phone.id = $1::INT8 [type=bool, outer=(7), constraints=(/7: (/NULL - ])] └── filters └── person.id = person_id [type=bool, outer=(1,10), constraints=(/1: (/NULL - ]; /10: (/NULL - ]), fd=(1)==(10), (10)==(1)] @@ -1150,7 +1150,7 @@ semi-join │ │ ├── key: (7) │ │ └── fd: (7)-->(10) │ └── filters - │ └── phone.id = $1::INT [type=bool, outer=(7), constraints=(/7: (/NULL - ])] + │ └── phone.id = $1::INT8 [type=bool, outer=(7), constraints=(/7: (/NULL - ])] └── filters └── person.id = person_id [type=bool, outer=(1,10), constraints=(/1: (/NULL - ]; /10: (/NULL - ]), fd=(1)==(10), (10)==(1)] diff --git a/pkg/sql/parser/parse_test.go b/pkg/sql/parser/parse_test.go index ef55e7993562..d5635845cb54 100644 --- a/pkg/sql/parser/parse_test.go +++ b/pkg/sql/parser/parse_test.go @@ -96,8 +96,8 @@ func TestParse(t *testing.T) { {`CREATE TABLE a ()`}, {`EXPLAIN CREATE TABLE a ()`}, - {`CREATE TABLE a (b INT)`}, - {`CREATE TABLE a (b INT, c INT)`}, + {`CREATE TABLE a (b INT8)`}, + {`CREATE TABLE a (b INT8, c INT8)`}, {`CREATE TABLE a (b CHAR)`}, {`CREATE TABLE a (b CHAR(3))`}, {`CREATE TABLE a (b VARCHAR)`}, @@ -106,104 +106,104 @@ func TestParse(t *testing.T) { {`CREATE TABLE a (b STRING(3))`}, {`CREATE TABLE a (b FLOAT4)`}, {`CREATE TABLE a (b FLOAT8)`}, - {`CREATE TABLE a (b SERIAL)`}, + {`CREATE TABLE a (b SERIAL8)`}, {`CREATE TABLE a (b TIME)`}, {`CREATE TABLE a (b UUID)`}, {`CREATE TABLE a (b INET)`}, {`CREATE TABLE a (b "char")`}, - {`CREATE TABLE a (b INT NULL)`}, - {`CREATE TABLE a (b INT CONSTRAINT maybe NULL)`}, - {`CREATE TABLE a (b INT NOT NULL)`}, - {`CREATE TABLE a (b INT CONSTRAINT always NOT NULL)`}, - {`CREATE TABLE a (b INT PRIMARY KEY)`}, - {`CREATE TABLE a (b INT UNIQUE)`}, - {`CREATE TABLE a (b INT NULL PRIMARY KEY)`}, - {`CREATE TABLE a (b INT DEFAULT 1)`}, - {`CREATE TABLE a (b INT CONSTRAINT one DEFAULT 1)`}, - {`CREATE TABLE a (b INT DEFAULT now())`}, - {`CREATE TABLE a (a INT CHECK (a > 0))`}, - {`CREATE TABLE a (a INT CONSTRAINT positive CHECK (a > 0))`}, - {`CREATE TABLE a (a INT DEFAULT 1 CHECK (a > 0))`}, - {`CREATE TABLE a (a INT CONSTRAINT one DEFAULT 1 CHECK (a > 0))`}, - {`CREATE TABLE a (a INT DEFAULT 1 CONSTRAINT positive CHECK (a > 0))`}, - {`CREATE TABLE a (a INT CONSTRAINT one DEFAULT 1 CONSTRAINT positive CHECK (a > 0))`}, - {`CREATE TABLE a (a INT CONSTRAINT one CHECK (a > 0) CONSTRAINT two CHECK (a < 10))`}, + {`CREATE TABLE a (b INT8 NULL)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT maybe NULL)`}, + {`CREATE TABLE a (b INT8 NOT NULL)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT always NOT NULL)`}, + {`CREATE TABLE a (b INT8 PRIMARY KEY)`}, + {`CREATE TABLE a (b INT8 UNIQUE)`}, + {`CREATE TABLE a (b INT8 NULL PRIMARY KEY)`}, + {`CREATE TABLE a (b INT8 DEFAULT 1)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT one DEFAULT 1)`}, + {`CREATE TABLE a (b INT8 DEFAULT now())`}, + {`CREATE TABLE a (a INT8 CHECK (a > 0))`}, + {`CREATE TABLE a (a INT8 CONSTRAINT positive CHECK (a > 0))`}, + {`CREATE TABLE a (a INT8 DEFAULT 1 CHECK (a > 0))`}, + {`CREATE TABLE a (a INT8 CONSTRAINT one DEFAULT 1 CHECK (a > 0))`}, + {`CREATE TABLE a (a INT8 DEFAULT 1 CONSTRAINT positive CHECK (a > 0))`}, + {`CREATE TABLE a (a INT8 CONSTRAINT one DEFAULT 1 CONSTRAINT positive CHECK (a > 0))`}, + {`CREATE TABLE a (a INT8 CONSTRAINT one CHECK (a > 0) CONSTRAINT two CHECK (a < 10))`}, // "0" lost quotes previously. - {`CREATE TABLE a (b INT, c STRING, PRIMARY KEY (b, c, "0"))`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE RESTRICT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE RESTRICT)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b, c) REFERENCES other)`}, - {`CREATE TABLE a (b INT, c STRING, FOREIGN KEY (b, c) REFERENCES other (x, y))`}, - {`CREATE TABLE a (b INT, c STRING, CONSTRAINT s FOREIGN KEY (b, c) REFERENCES other (x, y))`}, - {`CREATE TABLE a (b INT, c STRING, INDEX (b, c))`}, - {`CREATE TABLE a (b INT, c STRING, INDEX d (b, c))`}, - {`CREATE TABLE a (b INT, c STRING, CONSTRAINT d UNIQUE (b, c))`}, - {`CREATE TABLE a (b INT, c STRING, CONSTRAINT d UNIQUE (b, c) INTERLEAVE IN PARENT d (e, f))`}, - {`CREATE TABLE a (b INT, UNIQUE (b))`}, - {`CREATE TABLE a (b INT, UNIQUE (b) STORING (c))`}, - {`CREATE TABLE a (b INT, INDEX (b))`}, - {`CREATE TABLE a (b INT, INVERTED INDEX (b))`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE RESTRICT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE RESTRICT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE RESTRICT ON UPDATE RESTRICT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE CASCADE)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE CASCADE ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE SET NULL)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE SET NULL ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE SET DEFAULT ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE RESTRICT ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE SET DEFAULT ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE CASCADE ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON DELETE SET NULL ON UPDATE RESTRICT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE CASCADE)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE SET NULL)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo ON UPDATE SET DEFAULT)`}, - {`CREATE TABLE a (b INT, c INT REFERENCES foo (bar))`}, - {`CREATE TABLE a (b INT, INDEX (b) STORING (c))`}, - {`CREATE TABLE a (b INT, c STRING, INDEX (b ASC, c DESC) STORING (c))`}, - {`CREATE TABLE a (b INT, INDEX (b) INTERLEAVE IN PARENT c (d, e))`}, - {`CREATE TABLE a (b INT, FAMILY (b))`}, - {`CREATE TABLE a (b INT, c STRING, FAMILY foo (b), FAMILY (c))`}, - {`CREATE TABLE a (b INT) INTERLEAVE IN PARENT foo (c, d)`}, - {`CREATE TABLE a (b INT) INTERLEAVE IN PARENT foo (c) CASCADE`}, - {`CREATE TABLE a.b (b INT)`}, - {`CREATE TABLE IF NOT EXISTS a (b INT)`}, - {`CREATE TABLE a (b INT AS (a + b) STORED)`}, - {`CREATE TABLE view (view INT)`}, - - {`CREATE TABLE a (b INT CONSTRAINT c PRIMARY KEY)`}, - {`CREATE TABLE a (b INT CONSTRAINT c NULL)`}, - {`CREATE TABLE a (b INT CONSTRAINT c UNIQUE)`}, - {`CREATE TABLE a (b INT CONSTRAINT c DEFAULT d)`}, - {`CREATE TABLE a (b INT CONSTRAINT c CHECK (d))`}, - {`CREATE TABLE a (b INT CONSTRAINT c REFERENCES d)`}, - - {`CREATE TABLE a (b INT) PARTITION BY LIST (b) (PARTITION p1 VALUES IN (1, DEFAULT), PARTITION p2 VALUES IN ((1, 2), (3, 4)))`}, + {`CREATE TABLE a (b INT8, c STRING, PRIMARY KEY (b, c, "0"))`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b, c) REFERENCES other)`}, + {`CREATE TABLE a (b INT8, c STRING, FOREIGN KEY (b, c) REFERENCES other (x, y))`}, + {`CREATE TABLE a (b INT8, c STRING, CONSTRAINT s FOREIGN KEY (b, c) REFERENCES other (x, y))`}, + {`CREATE TABLE a (b INT8, c STRING, INDEX (b, c))`}, + {`CREATE TABLE a (b INT8, c STRING, INDEX d (b, c))`}, + {`CREATE TABLE a (b INT8, c STRING, CONSTRAINT d UNIQUE (b, c))`}, + {`CREATE TABLE a (b INT8, c STRING, CONSTRAINT d UNIQUE (b, c) INTERLEAVE IN PARENT d (e, f))`}, + {`CREATE TABLE a (b INT8, UNIQUE (b))`}, + {`CREATE TABLE a (b INT8, UNIQUE (b) STORING (c))`}, + {`CREATE TABLE a (b INT8, INDEX (b))`}, + {`CREATE TABLE a (b INT8, INVERTED INDEX (b))`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE RESTRICT ON UPDATE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE CASCADE)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE CASCADE ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE SET NULL)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE SET NULL ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE SET DEFAULT ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE RESTRICT ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE SET DEFAULT ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE CASCADE ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON DELETE SET NULL ON UPDATE RESTRICT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE CASCADE)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE SET NULL)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo ON UPDATE SET DEFAULT)`}, + {`CREATE TABLE a (b INT8, c INT8 REFERENCES foo (bar))`}, + {`CREATE TABLE a (b INT8, INDEX (b) STORING (c))`}, + {`CREATE TABLE a (b INT8, c STRING, INDEX (b ASC, c DESC) STORING (c))`}, + {`CREATE TABLE a (b INT8, INDEX (b) INTERLEAVE IN PARENT c (d, e))`}, + {`CREATE TABLE a (b INT8, FAMILY (b))`}, + {`CREATE TABLE a (b INT8, c STRING, FAMILY foo (b), FAMILY (c))`}, + {`CREATE TABLE a (b INT8) INTERLEAVE IN PARENT foo (c, d)`}, + {`CREATE TABLE a (b INT8) INTERLEAVE IN PARENT foo (c) CASCADE`}, + {`CREATE TABLE a.b (b INT8)`}, + {`CREATE TABLE IF NOT EXISTS a (b INT8)`}, + {`CREATE TABLE a (b INT8 AS (a + b) STORED)`}, + {`CREATE TABLE view (view INT8)`}, + + {`CREATE TABLE a (b INT8 CONSTRAINT c PRIMARY KEY)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT c NULL)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT c UNIQUE)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT c DEFAULT d)`}, + {`CREATE TABLE a (b INT8 CONSTRAINT c CHECK (d))`}, + {`CREATE TABLE a (b INT8 CONSTRAINT c REFERENCES d)`}, + + {`CREATE TABLE a (b INT8) PARTITION BY LIST (b) (PARTITION p1 VALUES IN (1, DEFAULT), PARTITION p2 VALUES IN ((1, 2), (3, 4)))`}, // This monstrosity was added on the assumption that it's more readable // than all on one line. Feel free to rip it out if you come across it // and disagree. {regexp.MustCompile(`\n\s*`).ReplaceAllLiteralString( - `CREATE TABLE a (b INT, c INT, d INT) PARTITION BY LIST (b) ( + `CREATE TABLE a (b INT8, c INT8, d INT8) PARTITION BY LIST (b) ( PARTITION p1 VALUES IN (1) PARTITION BY LIST (c) ( PARTITION p1_1 VALUES IN (3), PARTITION p1_2 VALUES IN (4, 5) ), PARTITION p2 VALUES IN (6) PARTITION BY RANGE (c) ( @@ -458,16 +458,16 @@ func TestParse(t *testing.T) { {`PREPARE a AS SELECT 1`}, {`PREPARE a AS EXPLAIN SELECT 1`}, - {`PREPARE a (INT) AS SELECT $1`}, + {`PREPARE a (INT8) AS SELECT $1`}, {`PREPARE a (STRING, STRING) AS SELECT $1, $2`}, {`PREPARE a AS INSERT INTO a VALUES (1)`}, - {`PREPARE a (INT) AS INSERT INTO a VALUES ($1)`}, + {`PREPARE a (INT8) AS INSERT INTO a VALUES ($1)`}, {`PREPARE a AS UPDATE a SET b = 1`}, - {`PREPARE a (INT) AS UPDATE a SET b = $1`}, + {`PREPARE a (INT8) AS UPDATE a SET b = $1`}, {`PREPARE a AS UPSERT INTO a VALUES (1)`}, - {`PREPARE a (INT) AS UPSERT INTO a VALUES ($1)`}, + {`PREPARE a (INT8) AS UPSERT INTO a VALUES ($1)`}, {`PREPARE a AS DELETE FROM a`}, - {`PREPARE a (INT) AS DELETE FROM a WHERE b = $1`}, + {`PREPARE a (INT8) AS DELETE FROM a WHERE b = $1`}, {`PREPARE a AS BACKUP DATABASE a TO 'b'`}, {`PREPARE a (STRING) AS BACKUP DATABASE a TO $1`}, {`PREPARE a AS RESTORE DATABASE a FROM 'b'`}, @@ -481,11 +481,11 @@ func TestParse(t *testing.T) { {`PREPARE a AS CANCEL SESSIONS IF EXISTS SELECT 1`}, {`PREPARE a (STRING) AS CANCEL SESSIONS IF EXISTS SELECT $1`}, {`PREPARE a AS CANCEL JOBS SELECT 1`}, - {`PREPARE a (INT) AS CANCEL JOBS SELECT $1`}, + {`PREPARE a (INT8) AS CANCEL JOBS SELECT $1`}, {`PREPARE a AS PAUSE JOBS SELECT 1`}, - {`PREPARE a (INT) AS PAUSE JOBS SELECT $1`}, + {`PREPARE a (INT8) AS PAUSE JOBS SELECT $1`}, {`PREPARE a AS RESUME JOBS SELECT 1`}, - {`PREPARE a (INT) AS RESUME JOBS SELECT $1`}, + {`PREPARE a (INT8) AS RESUME JOBS SELECT $1`}, {`PREPARE a AS IMPORT TABLE a CREATE USING 'b' CSV DATA ('c') WITH temp = 'd'`}, {`PREPARE a (STRING, STRING, STRING) AS IMPORT TABLE a CREATE USING $1 CSV DATA ($2) WITH temp = $3`}, @@ -635,7 +635,6 @@ func TestParse(t *testing.T) { {`SELECT * FROM t AS "of" AS OF SYSTEM TIME '2016-01-01'`}, {`SELECT BOOL 'foo', 'foo'::BOOL`}, - {`SELECT INT 'foo', 'foo'::INT`}, {`SELECT BIT '10', '10'::BIT`}, {`SELECT VARBIT '1', '1'::VARBIT`}, {`SELECT INT2 'foo', 'foo'::INT2`}, @@ -652,7 +651,7 @@ func TestParse(t *testing.T) { {`SELECT TIMESTAMP 'foo', 'foo'::TIMESTAMP`}, {`SELECT TIMESTAMPTZ 'foo', 'foo'::TIMESTAMPTZ`}, {`SELECT JSONB 'foo', 'foo'::JSONB`}, - {`SELECT SERIAL 'foo', 'foo'::SERIAL`}, + {`SELECT SERIAL8 'foo', 'foo'::SERIAL8`}, {`SELECT 'foo'::DECIMAL(1)`}, {`SELECT 'foo'::DECIMAL(1,2)`}, @@ -751,7 +750,7 @@ func TestParse(t *testing.T) { {`SELECT a FROM t WHERE a IS NOT true`}, {`SELECT a FROM t WHERE a IS false`}, {`SELECT a FROM t WHERE a IS NOT false`}, - {`SELECT a FROM t WHERE a IS OF (INT)`}, + {`SELECT a FROM t WHERE a IS OF (INT8)`}, {`SELECT a FROM t WHERE a IS NOT OF (FLOAT8, STRING)`}, {`SELECT a FROM t WHERE a IS DISTINCT FROM b`}, {`SELECT a FROM t WHERE a IS NOT DISTINCT FROM b`}, @@ -1002,19 +1001,19 @@ func TestParse(t *testing.T) { {`ALTER TABLE a RENAME COLUMN c1 TO c2`}, {`ALTER TABLE IF EXISTS a RENAME COLUMN c1 TO c2`}, - {`ALTER TABLE a ADD COLUMN b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`EXPLAIN ALTER TABLE a ADD COLUMN b INT`}, - {`ALTER TABLE a ADD COLUMN IF NOT EXISTS b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`ALTER TABLE IF EXISTS a ADD COLUMN b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`ALTER TABLE IF EXISTS a ADD COLUMN IF NOT EXISTS b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`ALTER TABLE a ADD COLUMN b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`ALTER TABLE a ADD COLUMN IF NOT EXISTS b INT, ADD CONSTRAINT a_idx UNIQUE (a) NOT VALID`}, - {`ALTER TABLE IF EXISTS a ADD COLUMN b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`ALTER TABLE IF EXISTS a ADD COLUMN IF NOT EXISTS b INT, ADD CONSTRAINT a_idx UNIQUE (a)`}, - {`ALTER TABLE a ADD COLUMN b INT FAMILY fam_a`}, - {`ALTER TABLE a ADD COLUMN b INT CREATE FAMILY`}, - {`ALTER TABLE a ADD COLUMN b INT CREATE FAMILY fam_b`}, - {`ALTER TABLE a ADD COLUMN b INT CREATE IF NOT EXISTS FAMILY fam_b`}, + {`ALTER TABLE a ADD COLUMN b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`EXPLAIN ALTER TABLE a ADD COLUMN b INT8`}, + {`ALTER TABLE a ADD COLUMN IF NOT EXISTS b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`ALTER TABLE IF EXISTS a ADD COLUMN b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`ALTER TABLE IF EXISTS a ADD COLUMN IF NOT EXISTS b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`ALTER TABLE a ADD COLUMN b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`ALTER TABLE a ADD COLUMN IF NOT EXISTS b INT8, ADD CONSTRAINT a_idx UNIQUE (a) NOT VALID`}, + {`ALTER TABLE IF EXISTS a ADD COLUMN b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`ALTER TABLE IF EXISTS a ADD COLUMN IF NOT EXISTS b INT8, ADD CONSTRAINT a_idx UNIQUE (a)`}, + {`ALTER TABLE a ADD COLUMN b INT8 FAMILY fam_a`}, + {`ALTER TABLE a ADD COLUMN b INT8 CREATE FAMILY`}, + {`ALTER TABLE a ADD COLUMN b INT8 CREATE FAMILY fam_b`}, + {`ALTER TABLE a ADD COLUMN b INT8 CREATE IF NOT EXISTS FAMILY fam_b`}, {`ALTER TABLE a DROP COLUMN b, DROP CONSTRAINT a_idx`}, {`ALTER TABLE a DROP COLUMN IF EXISTS b, DROP CONSTRAINT a_idx`}, @@ -1036,7 +1035,7 @@ func TestParse(t *testing.T) { {`ALTER TABLE a ALTER COLUMN b DROP NOT NULL`}, {`ALTER TABLE a ALTER COLUMN b DROP STORED`}, - {`ALTER TABLE a ALTER COLUMN b SET DATA TYPE INT`}, + {`ALTER TABLE a ALTER COLUMN b SET DATA TYPE INT8`}, {`ALTER TABLE a ALTER COLUMN b SET DATA TYPE STRING COLLATE en USING b::STRING`}, {`ALTER TABLE a ALTER COLUMN b SET DATA TYPE DECIMAL(10)[]`}, @@ -1191,8 +1190,8 @@ func TestParse(t *testing.T) { {`IMPORT TABLE foo CREATE USING 'nodelocal:///some/file' CSV DATA ('path/to/some/file', $1) WITH temp = 'path/to/temp'`}, {`EXPLAIN IMPORT TABLE foo CREATE USING 'nodelocal:///some/file' CSV DATA ('path/to/some/file', $1) WITH temp = 'path/to/temp'`}, {`IMPORT TABLE foo CREATE USING 'nodelocal:///some/file' MYSQLOUTFILE DATA ('path/to/some/file', $1)`}, - {`IMPORT TABLE foo (id INT PRIMARY KEY, email STRING, age INT) CSV DATA ('path/to/some/file', $1) WITH temp = 'path/to/temp'`}, - {`IMPORT TABLE foo (id INT, email STRING, age INT) CSV DATA ('path/to/some/file', $1) WITH comma = ',', "nullif" = 'n/a', temp = $2`}, + {`IMPORT TABLE foo (id INT8 PRIMARY KEY, email STRING, age INT8) CSV DATA ('path/to/some/file', $1) WITH temp = 'path/to/temp'`}, + {`IMPORT TABLE foo (id INT8, email STRING, age INT8) CSV DATA ('path/to/some/file', $1) WITH comma = ',', "nullif" = 'n/a', temp = $2`}, {`IMPORT TABLE foo FROM PGDUMPCREATE 'nodelocal:///foo/bar' WITH temp = 'path/to/temp'`}, {`IMPORT PGDUMP 'nodelocal:///foo/bar' WITH temp = 'path/to/temp'`}, @@ -1246,9 +1245,9 @@ func TestParse2(t *testing.T) { {`CREATE DATABASE a TEMPLATE = invalid`, `CREATE DATABASE a TEMPLATE = 'invalid'`}, {`CREATE TABLE a (b INT, UNIQUE INDEX foo (b))`, - `CREATE TABLE a (b INT, CONSTRAINT foo UNIQUE (b))`}, + `CREATE TABLE a (b INT8, CONSTRAINT foo UNIQUE (b))`}, {`CREATE TABLE a (b INT, UNIQUE INDEX foo (b) INTERLEAVE IN PARENT c (d))`, - `CREATE TABLE a (b INT, CONSTRAINT foo UNIQUE (b) INTERLEAVE IN PARENT c (d))`}, + `CREATE TABLE a (b INT8, CONSTRAINT foo UNIQUE (b) INTERLEAVE IN PARENT c (d))`}, {`CREATE TABLE a (UNIQUE INDEX (b) PARTITION BY LIST (c) (PARTITION d VALUES IN (1)))`, `CREATE TABLE a (UNIQUE (b) PARTITION BY LIST (c) (PARTITION d VALUES IN (1)))`}, {`CREATE INDEX ON a (b) COVERING (c)`, `CREATE INDEX ON a (b) STORING (c)`}, @@ -1258,10 +1257,10 @@ func TestParse2(t *testing.T) { {`CREATE UNIQUE INDEX a ON b USING GIN (c)`, `CREATE UNIQUE INVERTED INDEX a ON b (c)`}, - {`CREATE TABLE a (b BIGSERIAL, c SMALLSERIAL)`, - `CREATE TABLE a (b SERIAL8, c SERIAL2)`}, - {`CREATE TABLE a (b BIGINT, c SMALLINT, d INTEGER)`, - `CREATE TABLE a (b INT8, c INT2, d INT)`}, + {`CREATE TABLE a (b BIGSERIAL, c SMALLSERIAL, d SERIAL)`, + `CREATE TABLE a (b SERIAL8, c SERIAL2, d SERIAL8)`}, + {`CREATE TABLE a (b BIGINT, c SMALLINT, d INTEGER, e INT)`, + `CREATE TABLE a (b INT8, c INT2, d INT8, e INT8)`}, {`CREATE TABLE a (b FLOAT, c FLOAT(10), d FLOAT(40), e REAL, f DOUBLE PRECISION)`, `CREATE TABLE a (b FLOAT8, c FLOAT4, d FLOAT8, e FLOAT4, f FLOAT8)`}, {`CREATE TABLE a (b NUMERIC, c NUMERIC(10), d DEC)`, @@ -1286,8 +1285,8 @@ func TestParse2(t *testing.T) { {`SELECT TIMESTAMP WITHOUT TIME ZONE 'foo'`, `SELECT TIMESTAMP 'foo'`}, {`SELECT CAST('foo' AS TIMESTAMP WITHOUT TIME ZONE)`, `SELECT CAST('foo' AS TIMESTAMP)`}, {`SELECT CAST(1 AS "timestamp")`, `SELECT CAST(1 AS TIMESTAMP)`}, - {`SELECT CAST(1 AS _int8)`, `SELECT CAST(1 AS INT[])`}, - {`SELECT CAST(1 AS "_int8")`, `SELECT CAST(1 AS INT[])`}, + {`SELECT CAST(1 AS _int8)`, `SELECT CAST(1 AS INT8[])`}, + {`SELECT CAST(1 AS "_int8")`, `SELECT CAST(1 AS INT8[])`}, {`SELECT 'a' FROM t@{FORCE_INDEX=bar}`, `SELECT 'a' FROM t@bar`}, @@ -1770,80 +1769,80 @@ func TestParse2(t *testing.T) { {`SHOW GRANTS ON role.*`, `SHOW GRANTS ON TABLE role.*`}, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE NO ACTION)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE NO ACTION)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT ON DELETE RESTRICT)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT ON DELETE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE RESTRICT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT ON DELETE NO ACTION)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT ON DELETE NO ACTION)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE RESTRICT)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE ON DELETE CASCADE)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE ON DELETE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE CASCADE)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE ON DELETE NO ACTION)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE ON DELETE NO ACTION)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE CASCADE)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL ON DELETE SET NULL)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL ON DELETE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE SET NULL)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL ON DELETE NO ACTION)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL ON DELETE NO ACTION)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE SET NULL)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT ON DELETE SET DEFAULT)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT ON DELETE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE SET DEFAULT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT ON DELETE NO ACTION)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT ON DELETE NO ACTION)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE SET DEFAULT)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE NO ACTION ON DELETE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT ON DELETE CASCADE)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE RESTRICT ON DELETE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE CASCADE ON UPDATE RESTRICT)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE ON DELETE SET NULL)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE CASCADE)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE CASCADE ON DELETE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE SET NULL ON UPDATE CASCADE)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL ON DELETE SET DEFAULT)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE SET NULL)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET NULL ON DELETE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE SET DEFAULT ON UPDATE SET NULL)`, }, { - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT ON DELETE RESTRICT)`, - `CREATE TABLE a (b INT, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE SET DEFAULT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON UPDATE SET DEFAULT ON DELETE RESTRICT)`, + `CREATE TABLE a (b INT8, FOREIGN KEY (b) REFERENCES other ON DELETE RESTRICT ON UPDATE SET DEFAULT)`, }, {`ALTER TABLE a ALTER b DROP STORED`, `ALTER TABLE a ALTER COLUMN b DROP STORED`}, - {`ALTER TABLE a ADD b INT`, `ALTER TABLE a ADD COLUMN b INT`}, - {`ALTER TABLE a ADD IF NOT EXISTS b INT`, `ALTER TABLE a ADD COLUMN IF NOT EXISTS b INT`}, - {`ALTER TABLE a ADD b INT FAMILY fam_a`, `ALTER TABLE a ADD COLUMN b INT FAMILY fam_a`}, + {`ALTER TABLE a ADD b INT8`, `ALTER TABLE a ADD COLUMN b INT8`}, + {`ALTER TABLE a ADD IF NOT EXISTS b INT8`, `ALTER TABLE a ADD COLUMN IF NOT EXISTS b INT8`}, + {`ALTER TABLE a ADD b INT8 FAMILY fam_a`, `ALTER TABLE a ADD COLUMN b INT8 FAMILY fam_a`}, {`ALTER TABLE a DROP b`, `ALTER TABLE a DROP COLUMN b`}, {`ALTER TABLE a ALTER b DROP NOT NULL`, `ALTER TABLE a ALTER COLUMN b DROP NOT NULL`}, - {`ALTER TABLE a ALTER b TYPE INT`, `ALTER TABLE a ALTER COLUMN b SET DATA TYPE INT`}, + {`ALTER TABLE a ALTER b TYPE INT8`, `ALTER TABLE a ALTER COLUMN b SET DATA TYPE INT8`}, {`EXPLAIN ANALYZE SELECT 1`, `EXPLAIN ANALYZE (DISTSQL) SELECT 1`}, {`SET a = INDEX`, `SET a = "index"`}, @@ -1851,24 +1850,24 @@ func TestParse2(t *testing.T) { // Regression for #31589 {`CREATE TABLE FAMILY (x INT)`, - `CREATE TABLE "family" (x INT)`}, + `CREATE TABLE "family" (x INT8)`}, {`CREATE TABLE INDEX (x INT)`, - `CREATE TABLE "index" (x INT)`}, + `CREATE TABLE "index" (x INT8)`}, {`CREATE TABLE NOTHING (x INT)`, - `CREATE TABLE "nothing" (x INT)`}, + `CREATE TABLE "nothing" (x INT8)`}, // Ensure MINVALUE/MAXVALUE are not reserved. {`CREATE TABLE MINVALUE (x INT)`, - `CREATE TABLE minvalue (x INT)`}, + `CREATE TABLE minvalue (x INT8)`}, {`CREATE TABLE MAXVALUE (x INT)`, - `CREATE TABLE maxvalue (x INT)`}, + `CREATE TABLE maxvalue (x INT8)`}, {`CREATE TABLE foo (MINVALUE INT)`, - `CREATE TABLE foo (minvalue INT)`}, + `CREATE TABLE foo (minvalue INT8)`}, {`CREATE TABLE foo (MAXVALUE INT)`, - `CREATE TABLE foo (maxvalue INT)`}, + `CREATE TABLE foo (maxvalue INT8)`}, {`CREATE TABLE a (b INT) PARTITION BY RANGE (b) (PARTITION p1 VALUES FROM (MINVALUE) TO (1), PARTITION p2 VALUES FROM (2, MAXVALUE) TO (4, 4), PARTITION p3 VALUES FROM (4, 4) TO (MAXVALUE))`, - `CREATE TABLE a (b INT) PARTITION BY RANGE (b) (PARTITION p1 VALUES FROM (minvalue) TO (1), PARTITION p2 VALUES FROM (2, maxvalue) TO (4, 4), PARTITION p3 VALUES FROM (4, 4) TO (maxvalue))`}, + `CREATE TABLE a (b INT8) PARTITION BY RANGE (b) (PARTITION p1 VALUES FROM (minvalue) TO (1), PARTITION p2 VALUES FROM (2, maxvalue) TO (4, 4), PARTITION p3 VALUES FROM (4, 4) TO (maxvalue))`}, } for _, d := range testData { stmts, err := parser.Parse(d.sql) @@ -1896,10 +1895,10 @@ func TestParseTree(t *testing.T) { }{ {`SELECT 1`, `SELECT (1)`}, {`SELECT -1+2`, `SELECT ((-1) + (2))`}, - {`SELECT -1:::INT`, `SELECT (-((1):::INT))`}, - {`SELECT 1 = 2::INT`, `SELECT ((1) = ((2)::INT))`}, - {`SELECT 1 = ANY 2::INT`, `SELECT ((1) = ANY ((2)::INT))`}, - {`SELECT 1 = ANY ARRAY[1]:::INT`, `SELECT ((1) = ANY ((ARRAY[(1)]):::INT))`}, + {`SELECT -1:::INT8`, `SELECT (-((1):::INT8))`}, + {`SELECT 1 = 2::INT8`, `SELECT ((1) = ((2)::INT8))`}, + {`SELECT 1 = ANY 2::INT8`, `SELECT ((1) = ANY ((2)::INT8))`}, + {`SELECT 1 = ANY ARRAY[1]:::INT8`, `SELECT ((1) = ANY ((ARRAY[(1)]):::INT8))`}, } for _, d := range testData { @@ -1989,26 +1988,26 @@ CREATE TABLE test ( ^ `}, {`CREATE TABLE test ( - foo INT DEFAULT 1 DEFAULT 2 + foo INT8 DEFAULT 1 DEFAULT 2 )`, `multiple default values specified for column "foo" at or near ")" CREATE TABLE test ( - foo INT DEFAULT 1 DEFAULT 2 + foo INT8 DEFAULT 1 DEFAULT 2 ) ^ `}, {`CREATE TABLE test ( - foo INT REFERENCES t1 REFERENCES t2 + foo INT8 REFERENCES t1 REFERENCES t2 )`, `multiple foreign key constraints specified for column "foo" at or near ")" CREATE TABLE test ( - foo INT REFERENCES t1 REFERENCES t2 + foo INT8 REFERENCES t1 REFERENCES t2 ) ^ `}, {`CREATE TABLE test ( - foo INT FAMILY a FAMILY b + foo INT8 FAMILY a FAMILY b )`, `multiple column families specified for column "foo" at or near ")" CREATE TABLE test ( - foo INT FAMILY a FAMILY b + foo INT8 FAMILY a FAMILY b ) ^ `}, @@ -2017,18 +2016,18 @@ SELECT family FROM test ^ HINT: try \h SELECT`}, {`CREATE TABLE test ( - foo INT NOT NULL NULL + foo INT8 NOT NULL NULL )`, `conflicting NULL/NOT NULL declarations for column "foo" at or near ")" CREATE TABLE test ( - foo INT NOT NULL NULL + foo INT8 NOT NULL NULL ) ^ `}, {`CREATE TABLE test ( - foo INT NULL NOT NULL + foo INT8 NULL NOT NULL )`, `conflicting NULL/NOT NULL declarations for column "foo" at or near ")" CREATE TABLE test ( - foo INT NULL NOT NULL + foo INT8 NULL NOT NULL ) ^ `}, @@ -2632,30 +2631,30 @@ func TestUnimplementedSyntax(t *testing.T) { {`SET LOCAL foo = bar`, 32562, ``}, {`SET foo FROM CURRENT`, 0, `set from current`}, - {`CREATE TEMP TABLE a(b INT)`, 5807, ``}, - {`CREATE UNLOGGED TABLE a(b INT)`, 0, `create unlogged`}, + {`CREATE TEMP TABLE a(b INT8)`, 5807, ``}, + {`CREATE UNLOGGED TABLE a(b INT8)`, 0, `create unlogged`}, {`CREATE TEMP VIEW a AS SELECT b`, 5807, ``}, {`CREATE TEMP SEQUENCE a`, 5807, ``}, {`CREATE TABLE a(LIKE b)`, 30840, ``}, - {`CREATE TABLE a(b INT) WITH OIDS`, 0, `create table with oids`}, - {`CREATE TABLE a(b INT) WITH foo = bar`, 0, `create table with foo`}, + {`CREATE TABLE a(b INT8) WITH OIDS`, 0, `create table with oids`}, + {`CREATE TABLE a(b INT8) WITH foo = bar`, 0, `create table with foo`}, {`CREATE TABLE a AS SELECT b WITH NO DATA`, 0, `create table as with no data`}, - {`CREATE TABLE a(b INT AS (123) VIRTUAL)`, 0, `virtual computed columns`}, - {`CREATE TABLE a(b INT REFERENCES c(x) MATCH FULL`, 20305, `match full`}, - {`CREATE TABLE a(b INT REFERENCES c(x) MATCH PARTIAL`, 20305, `match partial`}, - {`CREATE TABLE a(b INT REFERENCES c(x) MATCH SIMPLE`, 20305, `match simple`}, + {`CREATE TABLE a(b INT8 AS (123) VIRTUAL)`, 0, `virtual computed columns`}, + {`CREATE TABLE a(b INT8 REFERENCES c(x) MATCH FULL`, 20305, `match full`}, + {`CREATE TABLE a(b INT8 REFERENCES c(x) MATCH PARTIAL`, 20305, `match partial`}, + {`CREATE TABLE a(b INT8 REFERENCES c(x) MATCH SIMPLE`, 20305, `match simple`}, - {`CREATE TABLE a(b INT, FOREIGN KEY (b) REFERENCES c(x) DEFERRABLE)`, 31632, `deferrable`}, - {`CREATE TABLE a(b INT, FOREIGN KEY (b) REFERENCES c(x) INITIALLY DEFERRED)`, 31632, `initially deferred`}, - {`CREATE TABLE a(b INT, FOREIGN KEY (b) REFERENCES c(x) INITIALLY IMMEDIATE)`, 31632, `initially immediate`}, - {`CREATE TABLE a(b INT, FOREIGN KEY (b) REFERENCES c(x) DEFERRABLE INITIALLY DEFERRED)`, 31632, `initially deferred`}, - {`CREATE TABLE a(b INT, FOREIGN KEY (b) REFERENCES c(x) DEFERRABLE INITIALLY IMMEDIATE)`, 31632, `initially immediate`}, - {`CREATE TABLE a(b INT, UNIQUE (b) DEFERRABLE)`, 31632, `deferrable`}, - {`CREATE TABLE a(b INT, CHECK (b > 0) DEFERRABLE)`, 31632, `deferrable`}, + {`CREATE TABLE a(b INT8, FOREIGN KEY (b) REFERENCES c(x) DEFERRABLE)`, 31632, `deferrable`}, + {`CREATE TABLE a(b INT8, FOREIGN KEY (b) REFERENCES c(x) INITIALLY DEFERRED)`, 31632, `initially deferred`}, + {`CREATE TABLE a(b INT8, FOREIGN KEY (b) REFERENCES c(x) INITIALLY IMMEDIATE)`, 31632, `initially immediate`}, + {`CREATE TABLE a(b INT8, FOREIGN KEY (b) REFERENCES c(x) DEFERRABLE INITIALLY DEFERRED)`, 31632, `initially deferred`}, + {`CREATE TABLE a(b INT8, FOREIGN KEY (b) REFERENCES c(x) DEFERRABLE INITIALLY IMMEDIATE)`, 31632, `initially immediate`}, + {`CREATE TABLE a(b INT8, UNIQUE (b) DEFERRABLE)`, 31632, `deferrable`}, + {`CREATE TABLE a(b INT8, CHECK (b > 0) DEFERRABLE)`, 31632, `deferrable`}, {`CREATE SEQUENCE a AS DOUBLE PRECISION`, 25110, `FLOAT8`}, {`CREATE SEQUENCE a OWNED BY b`, 26382, ``}, @@ -2720,7 +2719,7 @@ func TestUnimplementedSyntax(t *testing.T) { {`SELECT COLLATION FOR (a)`, 32563, ``}, {`SELECT CURRENT_TIME`, 26097, `current_time`}, {`SELECT CURRENT_TIME()`, 26097, `current_time`}, - {`SELECT TREAT (a AS INT)`, 0, `treat`}, + {`SELECT TREAT (a AS INT8)`, 0, `treat`}, {`SELECT a(b) WITHIN GROUP (ORDER BY c)`, 0, `within group`}, {`CREATE TABLE a(b BOX)`, 21286, `box`}, diff --git a/pkg/sql/parser/sql.y b/pkg/sql/parser/sql.y index b9373adecbaf..76fff8e2045a 100644 --- a/pkg/sql/parser/sql.y +++ b/pkg/sql/parser/sql.y @@ -6510,7 +6510,7 @@ const_typename: } | SERIAL { - $$.val = coltypes.Serial + $$.val = coltypes.Serial8 } | SERIAL2 { @@ -6600,11 +6600,11 @@ opt_numeric_modifiers: numeric: INT { - $$.val = coltypes.Int + $$.val = coltypes.Int8 } | INTEGER { - $$.val = coltypes.Int + $$.val = coltypes.Int8 } | INT2 { diff --git a/pkg/sql/partition_test.go b/pkg/sql/partition_test.go index 76a188d80071..028c7610337b 100644 --- a/pkg/sql/partition_test.go +++ b/pkg/sql/partition_test.go @@ -65,8 +65,8 @@ func TestRemovePartitioningOSS(t *testing.T) { t.Fatal(err) } exp := `CREATE TABLE kv ( - k INT NOT NULL, - v INT NULL, + k INT8 NOT NULL, + v INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (k ASC), INDEX foo (v ASC) PARTITION BY RANGE (v) ( PARTITION p2 VALUES FROM (1) TO (2) @@ -122,8 +122,8 @@ func TestRemovePartitioningOSS(t *testing.T) { sqlDB.Exec(t, `ALTER INDEX t.kv@foo PARTITION BY NOTHING`) exp = `CREATE TABLE kv ( - k INT NOT NULL, - v INT NULL, + k INT8 NOT NULL, + v INT8 NULL, CONSTRAINT "primary" PRIMARY KEY (k ASC), INDEX foo (v ASC), FAMILY fam_0_k (k), diff --git a/pkg/sql/pgwire/types_test.go b/pkg/sql/pgwire/types_test.go index 8f81cc24a613..61eb37679ef6 100644 --- a/pkg/sql/pgwire/types_test.go +++ b/pkg/sql/pgwire/types_test.go @@ -97,7 +97,7 @@ func TestWriteBinaryArray(t *testing.T) { // writeBuffer is equivalent to writing to two different writeBuffers and // then concatenating the result. st := cluster.MakeTestingClusterSettings() - ary, _ := tree.ParseDArrayFromString(tree.NewTestingEvalContext(st), "{1}", coltypes.Int) + ary, _ := tree.ParseDArrayFromString(tree.NewTestingEvalContext(st), "{1}", coltypes.Int8) defaultConv := makeTestingConvCfg() diff --git a/pkg/sql/schema_changer_test.go b/pkg/sql/schema_changer_test.go index 04fa1509c053..ae01ee2fbe0d 100644 --- a/pkg/sql/schema_changer_test.go +++ b/pkg/sql/schema_changer_test.go @@ -1702,7 +1702,7 @@ func TestSchemaChangeReverseMutations(t *testing.T) { // Create a k-v table. if _, err := sqlDB.Exec(` CREATE DATABASE t; -CREATE TABLE t.test (k INT PRIMARY KEY, v INT); +CREATE TABLE t.test (k INT PRIMARY KEY, v INT8); `); err != nil { t.Fatal(err) } @@ -1722,12 +1722,12 @@ CREATE TABLE t.test (k INT PRIMARY KEY, v INT); // Create a column that is not NULL. This schema change doesn't return an // error only because we've turned off the synchronous execution path; it // will eventually fail when run by the asynchronous path. - {`ALTER TABLE t.public.test ADD COLUMN a INT UNIQUE DEFAULT 0, ADD COLUMN c INT`, + {`ALTER TABLE t.public.test ADD COLUMN a INT8 UNIQUE DEFAULT 0, ADD COLUMN c INT8`, jobs.StatusFailed}, // Add an index over a column that will be purged. This index will // eventually not get added. The column aa will also be dropped as // a result. - {`ALTER TABLE t.public.test ADD COLUMN aa INT, ADD CONSTRAINT foo UNIQUE (a)`, + {`ALTER TABLE t.public.test ADD COLUMN aa INT8, ADD CONSTRAINT foo UNIQUE (a)`, jobs.StatusFailed}, // The purge of column 'a' doesn't influence these schema changes. @@ -1737,7 +1737,7 @@ CREATE TABLE t.test (k INT PRIMARY KEY, v INT); jobs.StatusSucceeded}, // Add unique column 'b' moves along creating column b and the index on // it. - {`ALTER TABLE t.public.test ADD COLUMN b INT UNIQUE`, + {`ALTER TABLE t.public.test ADD COLUMN b INT8 UNIQUE`, jobs.StatusSucceeded}, // #27033: Add a column followed by an index on the column. {`ALTER TABLE t.public.test ADD COLUMN d STRING NOT NULL DEFAULT 'something'`, @@ -1749,7 +1749,7 @@ CREATE TABLE t.test (k INT PRIMARY KEY, v INT); // Add an index over a column 'c' that will be purged. This index will // eventually not get added. The column bb will also be dropped as // a result. - {`ALTER TABLE t.public.test ADD COLUMN bb INT, ADD CONSTRAINT bar UNIQUE (c)`, + {`ALTER TABLE t.public.test ADD COLUMN bb INT8, ADD CONSTRAINT bar UNIQUE (c)`, jobs.StatusFailed}, // Cascading of purges. column 'c' -> column 'bb' -> constraint 'idx_bb'. {`ALTER TABLE t.public.test ADD CONSTRAINT idx_bb UNIQUE (bb)`, @@ -2234,9 +2234,9 @@ func TestCRUDWhileColumnBackfill(t *testing.T) { if _, err := sqlDB.Exec(` CREATE DATABASE t; CREATE TABLE t.test ( - k INT NOT NULL, - v INT, - length INT NOT NULL, + k INT8 NOT NULL, + v INT8, + length INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (k), INDEX v_idx (v), FAMILY "primary" (k, v, length) @@ -2254,7 +2254,7 @@ INSERT INTO t.test (k, v, length) VALUES (2, 3, 1); var wg sync.WaitGroup wg.Add(2) go func() { - if _, err := sqlDB.Exec(`ALTER TABLE t.test ADD id INT NOT NULL DEFAULT 2, ADD u INT NOT NULL AS (v+1) STORED;`); err != nil { + if _, err := sqlDB.Exec(`ALTER TABLE t.test ADD id INT8 NOT NULL DEFAULT 2, ADD u INT8 NOT NULL AS (v+1) STORED;`); err != nil { t.Error(err) } wg.Done() @@ -2266,7 +2266,7 @@ INSERT INTO t.test (k, v, length) VALUES (2, 3, 1); go func() { // Create a column that uses the above column in an expression. - if _, err := sqlDB.Exec(`ALTER TABLE t.test ADD z INT AS (k + id) STORED;`); err != nil { + if _, err := sqlDB.Exec(`ALTER TABLE t.test ADD z INT8 AS (k + id) STORED;`); err != nil { t.Error(err) } wg.Done() @@ -2359,9 +2359,9 @@ INSERT INTO t.test (k, v, length) VALUES (2, 3, 1); t.Fatalf("expected table name %s, got %s", `test`, scanName) } expect := `CREATE TABLE test ( - k INT NOT NULL, - v INT NULL, - length INT NOT NULL, + k INT8 NOT NULL, + v INT8 NULL, + length INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (k ASC), INDEX v_idx (v ASC), FAMILY "primary" (k, v, length) @@ -2461,7 +2461,7 @@ func TestBackfillCompletesOnChunkBoundary(t *testing.T) { if _, err := sqlDB.Exec(` CREATE DATABASE t; - CREATE TABLE t.test (k INT PRIMARY KEY, v INT, pi DECIMAL DEFAULT (DECIMAL '3.14')); + CREATE TABLE t.test (k INT8 PRIMARY KEY, v INT8, pi DECIMAL DEFAULT (DECIMAL '3.14')); CREATE UNIQUE INDEX vidx ON t.test (v); `); err != nil { t.Fatal(err) diff --git a/pkg/sql/schemachange/alter_column_type_test.go b/pkg/sql/schemachange/alter_column_type_test.go index a1d124643c39..75222dc4f3ba 100644 --- a/pkg/sql/schemachange/alter_column_type_test.go +++ b/pkg/sql/schemachange/alter_column_type_test.go @@ -97,7 +97,7 @@ func TestColumnConversions(t *testing.T) { {SemanticType: sqlbase.ColumnType_BYTES}: ColumnConversionImpossible, }, - {SemanticType: sqlbase.ColumnType_INT}: { + {SemanticType: sqlbase.ColumnType_INT, Width: 64}: { { SemanticType: sqlbase.ColumnType_INT, VisibleType: sqlbase.ColumnType_BIGINT, @@ -199,7 +199,7 @@ func TestColumnConversions(t *testing.T) { defer sqlDB.Exec(t, "DROP DATABASE d") sqlDB.Exec(t, fmt.Sprintf( - "CREATE TABLE d.t (i int primary key, a %s)", columnType(from).SQLString())) + "CREATE TABLE d.t (i int8 primary key, a %s)", columnType(from).SQLString())) // We're just going to use an ugly, two-dimensional switch // structure here to establish some values that we want to diff --git a/pkg/sql/sem/tree/col_types_test.go b/pkg/sql/sem/tree/col_types_test.go index 6c6fabd77cbe..7eda953124c4 100644 --- a/pkg/sql/sem/tree/col_types_test.go +++ b/pkg/sql/sem/tree/col_types_test.go @@ -34,7 +34,6 @@ func TestParseColumnType(t *testing.T) { {"BIT(2)", &coltypes.TBitArray{Width: 2}}, {"VARBIT(2)", &coltypes.TBitArray{Width: 2, Variable: true}}, {"BOOL", &coltypes.TBool{}}, - {"INT", &coltypes.TInt{}}, {"INT2", &coltypes.TInt{Width: 16}}, {"INT4", &coltypes.TInt{Width: 32}}, {"INT8", &coltypes.TInt{Width: 64}}, @@ -65,28 +64,63 @@ func TestParseColumnType(t *testing.T) { {"VARCHAR(2) COLLATE en", &coltypes.TCollatedString{TString: coltypes.TString{Variant: coltypes.TStringVariantVARCHAR, N: 2}, Locale: "en"}}, } for i, d := range testData { - sql := fmt.Sprintf("CREATE TABLE a (b %s)", d.str) - stmt, err := parser.ParseOne(sql) - if err != nil { - t.Errorf("%d: %s", i, err) - continue - } - if sql != stmt.String() { - t.Errorf("%d: expected %s, but got %s", i, sql, stmt) - } - createTable, ok := stmt.(*tree.CreateTable) - if !ok { - t.Errorf("%d: expected tree.CreateTable, but got %T", i, stmt) - continue - } - columnDef, ok2 := createTable.Defs[0].(*tree.ColumnTableDef) - if !ok2 { - t.Errorf("%d: expected tree.ColumnTableDef, but got %T", i, createTable.Defs[0]) - continue - } - if !reflect.DeepEqual(d.expectedType, columnDef.Type) { - t.Errorf("%d: expected %s, but got %s", i, d.expectedType, columnDef.Type) - continue - } + t.Run(d.str, func(t *testing.T) { + sql := fmt.Sprintf("CREATE TABLE a (b %s)", d.str) + stmt, err := parser.ParseOne(sql) + if err != nil { + t.Fatalf("%d: %s", i, err) + } + if sql != stmt.String() { + t.Errorf("%d: expected %s, but got %s", i, sql, stmt) + } + createTable, ok := stmt.(*tree.CreateTable) + if !ok { + t.Fatalf("%d: expected tree.CreateTable, but got %T", i, stmt) + } + columnDef, ok2 := createTable.Defs[0].(*tree.ColumnTableDef) + if !ok2 { + t.Fatalf("%d: expected tree.ColumnTableDef, but got %T", i, createTable.Defs[0]) + } + if !reflect.DeepEqual(d.expectedType, columnDef.Type) { + t.Fatalf("%d: expected %s, but got %s", i, d.expectedType, columnDef.Type) + } + }) + } +} + +func TestParseColumnTypeAliases(t *testing.T) { + testData := []struct { + str string + expectedStr string + expectedType coltypes.T + }{ + // FLOAT has always been FLOAT8 + {"FLOAT", "CREATE TABLE a (b FLOAT8)", &coltypes.TFloat{Short: false}}, + // A "naked" INT is 64 bits, for historical compatibility. + {"INT", "CREATE TABLE a (b INT8)", &coltypes.TInt{Width: 64}}, + {"INTEGER", "CREATE TABLE a (b INT8)", &coltypes.TInt{Width: 64}}, + } + for i, d := range testData { + t.Run(d.str, func(t *testing.T) { + sql := fmt.Sprintf("CREATE TABLE a (b %s)", d.str) + stmt, err := parser.ParseOne(sql) + if err != nil { + t.Fatalf("%d: %s", i, err) + } + if d.expectedStr != stmt.String() { + t.Errorf("%d: expected %s, but got %s", i, d.expectedStr, stmt) + } + createTable, ok := stmt.(*tree.CreateTable) + if !ok { + t.Fatalf("%d: expected tree.CreateTable, but got %T", i, stmt) + } + columnDef, ok2 := createTable.Defs[0].(*tree.ColumnTableDef) + if !ok2 { + t.Fatalf("%d: expected tree.ColumnTableDef, but got %T", i, createTable.Defs[0]) + } + if !reflect.DeepEqual(d.expectedType, columnDef.Type) { + t.Fatalf("%d: expected %s, but got %s", i, d.expectedType, columnDef.Type) + } + }) } } diff --git a/pkg/sql/sem/tree/format_test.go b/pkg/sql/sem/tree/format_test.go index e96bf2436edf..f1cc7f846029 100644 --- a/pkg/sql/sem/tree/format_test.go +++ b/pkg/sql/sem/tree/format_test.go @@ -40,8 +40,8 @@ func TestFormatStatement(t *testing.T) { {`CREATE USER foo WITH PASSWORD 'bar'`, tree.FmtShowPasswords, `CREATE USER 'foo' WITH PASSWORD 'bar'`}, - {`CREATE TABLE foo (x INT)`, tree.FmtAnonymize, - `CREATE TABLE _ (_ INT)`}, + {`CREATE TABLE foo (x INT8)`, tree.FmtAnonymize, + `CREATE TABLE _ (_ INT8)`}, {`INSERT INTO foo(x) TABLE bar`, tree.FmtAnonymize, `INSERT INTO _(_) TABLE _`}, {`UPDATE foo SET x = y`, tree.FmtAnonymize, @@ -120,8 +120,8 @@ func TestFormatTableName(t *testing.T) { stmt string expected string }{ - {`CREATE TABLE foo (x INT)`, - `CREATE TABLE xoxoxo (x INT)`}, + {`CREATE TABLE foo (x INT8)`, + `CREATE TABLE xoxoxo (x INT8)`}, {`INSERT INTO foo(x) TABLE bar`, `INSERT INTO xoxoxo(x) TABLE xoxoxo`}, {`UPDATE foo SET x = y`, @@ -217,11 +217,13 @@ func TestFormatExpr(t *testing.T) { {`3.00:::DECIMAL`, tree.FmtParsableNumerics, "3.00"}, {`(-3.00):::DECIMAL`, tree.FmtParsableNumerics, "(-3.00)"}, - {`1`, tree.FmtParsable, "1:::INT"}, - {`9223372036854775807`, tree.FmtParsable, "9223372036854775807:::INT"}, + {`1`, tree.FmtParsable, "1:::INT8"}, + {`1:::INT`, tree.FmtParsable, "1:::INT8"}, + {`9223372036854775807`, tree.FmtParsable, "9223372036854775807:::INT8"}, {`9223372036854775808`, tree.FmtParsable, "9223372036854775808:::DECIMAL"}, - {`-1`, tree.FmtParsable, "(-1):::INT"}, - {`-9223372036854775808`, tree.FmtParsable, "(-9223372036854775808):::INT"}, + {`-1`, tree.FmtParsable, "(-1):::INT8"}, + {`(-1):::INT`, tree.FmtParsable, "(-1):::INT8"}, + {`-9223372036854775808`, tree.FmtParsable, "(-9223372036854775808):::INT8"}, {`-9223372036854775809`, tree.FmtParsable, "(-9223372036854775809):::DECIMAL"}, {`(-92233.1):::FLOAT`, tree.FmtParsable, "(-92233.1):::FLOAT8"}, {`92233.00:::DECIMAL`, tree.FmtParsable, "92233.00:::DECIMAL"}, @@ -229,7 +231,7 @@ func TestFormatExpr(t *testing.T) { {`B'00100'`, tree.FmtParsable, "B'00100'"}, {`unique_rowid() + 123`, tree.FmtParsable, - `unique_rowid() + 123:::INT`}, + `unique_rowid() + 123:::INT8`}, {`sqrt(123.0) + 456`, tree.FmtParsable, `sqrt(123.0:::DECIMAL) + 456:::DECIMAL`}, {`ROW()`, tree.FmtParsable, `()`}, @@ -255,7 +257,7 @@ func TestFormatExpr(t *testing.T) { `'63616665-6630-3064-6465-616462656562':::UUID`}, {`(123:::INT, 123:::DECIMAL)`, tree.FmtCheckEquivalence, - `(123:::INT, 123:::DECIMAL)`}, + `(123:::INT8, 123:::DECIMAL)`}, {`(1, COALESCE(NULL, 123), ARRAY[45.6])`, tree.FmtHideConstants, `(_, COALESCE(_, _), ARRAY[_])`}, @@ -307,7 +309,7 @@ func TestFormatExpr2(t *testing.T) { }, }, tree.DNull, tree.NewDString("foo")), tree.FmtParsable, - `(NULL::INT, 'foo':::STRING)`, + `(NULL::INT8, 'foo':::STRING)`, }, {tree.NewDTuple( types.TTuple{ diff --git a/pkg/sql/sem/tree/normalize_test.go b/pkg/sql/sem/tree/normalize_test.go index 58cae368fad9..51d8f5525781 100644 --- a/pkg/sql/sem/tree/normalize_test.go +++ b/pkg/sql/sem/tree/normalize_test.go @@ -41,7 +41,13 @@ func TestNormalizeExpr(t *testing.T) { }{ {`(a)`, `a`}, {`((((a))))`, `a`}, - {`CAST(NULL AS INTEGER)`, `CAST(NULL AS INT)`}, + // This loss of type information occurs because we wind up trying + // to reconstitute a data from from a datum. Ideally, this would + // be addressed by future work on + // https://github.com/cockroachdb/cockroach/issues/32639 + {`CAST(NULL AS INT2)`, `CAST(NULL AS INT8)`}, + {`CAST(NULL AS INT4)`, `CAST(NULL AS INT8)`}, + {`CAST(NULL AS INT8)`, `CAST(NULL AS INT8)`}, {`+a`, `a`}, {`-(-a)`, `a`}, {`-+-a`, `a`}, @@ -212,10 +218,10 @@ func TestNormalizeExpr(t *testing.T) { {`NULL IS NOT DISTINCT FROM d`, `d IS NULL`}, {`NULL IS DISTINCT FROM d`, `d IS NOT NULL`}, // #15454: ensure that operators are pretty-printed correctly after normalization. - {`(random() + 1.0)::INT`, `(random() + 1.0)::INT`}, - {`('a' || left('b', random()::INT)) COLLATE en`, `('a' || left('b', random()::INT)) COLLATE en`}, + {`(random() + 1.0)::INT8`, `(random() + 1.0)::INT8`}, + {`('a' || left('b', random()::INT8)) COLLATE en`, `('a' || left('b', random()::INT8)) COLLATE en`}, {`NULL COLLATE en`, `CAST(NULL AS STRING) COLLATE en`}, - {`(1.0 + random()) IS OF (INT)`, `(1.0 + random()) IS OF (INT)`}, + {`(1.0 + random()) IS OF (INT8)`, `(1.0 + random()) IS OF (INT8)`}, // #14687: ensure that negative divisors flip the inequality when rotating. {`1 < a / -2`, `a < -2`}, {`1 <= a / -2`, `a <= -2`}, diff --git a/pkg/sql/sem/tree/parse_array_test.go b/pkg/sql/sem/tree/parse_array_test.go index 5006a8697244..da33370ed0d1 100644 --- a/pkg/sql/sem/tree/parse_array_test.go +++ b/pkg/sql/sem/tree/parse_array_test.go @@ -29,17 +29,17 @@ func TestParseArray(t *testing.T) { typ coltypes.T expected Datums }{ - {`{}`, coltypes.Int, Datums{}}, - {`{1}`, coltypes.Int, Datums{NewDInt(1)}}, - {`{1,2}`, coltypes.Int, Datums{NewDInt(1), NewDInt(2)}}, - {` { 1 , 2 } `, coltypes.Int, Datums{NewDInt(1), NewDInt(2)}}, + {`{}`, coltypes.Int8, Datums{}}, + {`{1}`, coltypes.Int8, Datums{NewDInt(1)}}, + {`{1,2}`, coltypes.Int8, Datums{NewDInt(1), NewDInt(2)}}, + {` { 1 , 2 } `, coltypes.Int8, Datums{NewDInt(1), NewDInt(2)}}, {` { 1 , - "2" } `, coltypes.Int, Datums{NewDInt(1), NewDInt(2)}}, - {`{1,2,3}`, coltypes.Int, Datums{NewDInt(1), NewDInt(2), NewDInt(3)}}, - {`{"1"}`, coltypes.Int, Datums{NewDInt(1)}}, - {` { "1" , "2"}`, coltypes.Int, Datums{NewDInt(1), NewDInt(2)}}, - {` { "1" , 2}`, coltypes.Int, Datums{NewDInt(1), NewDInt(2)}}, - {`{1,NULL}`, coltypes.Int, Datums{NewDInt(1), DNull}}, + "2" } `, coltypes.Int8, Datums{NewDInt(1), NewDInt(2)}}, + {`{1,2,3}`, coltypes.Int8, Datums{NewDInt(1), NewDInt(2), NewDInt(3)}}, + {`{"1"}`, coltypes.Int8, Datums{NewDInt(1)}}, + {` { "1" , "2"}`, coltypes.Int8, Datums{NewDInt(1), NewDInt(2)}}, + {` { "1" , 2}`, coltypes.Int8, Datums{NewDInt(1), NewDInt(2)}}, + {`{1,NULL}`, coltypes.Int8, Datums{NewDInt(1), DNull}}, {`{hello}`, coltypes.String, Datums{NewDString(`hello`)}}, {`{hel @@ -159,18 +159,18 @@ func TestParseArrayError(t *testing.T) { typ coltypes.T expectedError string }{ - {``, coltypes.Int, "array must be enclosed in { and }"}, - {`1`, coltypes.Int, "array must be enclosed in { and }"}, - {`1,2`, coltypes.Int, "array must be enclosed in { and }"}, - {`{1,2`, coltypes.Int, "malformed array"}, - {`{1,2,`, coltypes.Int, "malformed array"}, - {`{`, coltypes.Int, "malformed array"}, - {`{,}`, coltypes.Int, "malformed array"}, - {`{}{}`, coltypes.Int, "extra text after closing right brace"}, - {`{} {}`, coltypes.Int, "extra text after closing right brace"}, - {`{{}}`, coltypes.Int, "nested arrays not supported"}, - {`{1, {1}}`, coltypes.Int, "nested arrays not supported"}, - {`{hello}`, coltypes.Int, `could not parse "hello" as type int: strconv.ParseInt: parsing "hello": invalid syntax`}, + {``, coltypes.Int8, "array must be enclosed in { and }"}, + {`1`, coltypes.Int8, "array must be enclosed in { and }"}, + {`1,2`, coltypes.Int8, "array must be enclosed in { and }"}, + {`{1,2`, coltypes.Int8, "malformed array"}, + {`{1,2,`, coltypes.Int8, "malformed array"}, + {`{`, coltypes.Int8, "malformed array"}, + {`{,}`, coltypes.Int8, "malformed array"}, + {`{}{}`, coltypes.Int8, "extra text after closing right brace"}, + {`{} {}`, coltypes.Int8, "extra text after closing right brace"}, + {`{{}}`, coltypes.Int8, "nested arrays not supported"}, + {`{1, {1}}`, coltypes.Int8, "nested arrays not supported"}, + {`{hello}`, coltypes.Int8, `could not parse "hello" as type int: strconv.ParseInt: parsing "hello": invalid syntax`}, {`{"hello}`, coltypes.String, `malformed array`}, // It might be unnecessary to disallow this, but Postgres does. {`{he"lo}`, coltypes.String, "malformed array"}, diff --git a/pkg/sql/sem/tree/testdata/pretty/20.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/20.align-deindent.golden index 1cce03b0618a..e218f6fdb445 100644 --- a/pkg/sql/sem/tree/testdata/pretty/20.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/20.align-deindent.golden @@ -4,11 +4,11 @@ - CREATE TABLE t ( a - INT, + INT8, b - INT, + INT8, c - INT, + INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -25,12 +25,12 @@ PARTITION BY LIST ( ) ) -10: ----------- +11: +----------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -50,9 +50,9 @@ PARTITION BY LIST ( 23: ----------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -70,9 +70,9 @@ PARTITION BY LIST (a) ( 27: --------------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -88,9 +88,9 @@ PARTITION BY LIST (a) ( 30: ------------------------------ CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -104,9 +104,9 @@ PARTITION BY LIST (a) ( 31: ------------------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -115,9 +115,9 @@ PARTITION BY LIST (a) ( PARTITION p2 VALUES IN (2) ) -56: --------------------------------------------------------- -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) +59: +----------------------------------------------------------- +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) ( PARTITION p1 VALUES IN (1), @@ -126,12 +126,12 @@ PARTITION BY LIST (a) ( 78: ------------------------------------------------------------------------------ -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) -163: -------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) +166: +---------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) diff --git a/pkg/sql/sem/tree/testdata/pretty/20.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/20.align-only.golden index 1cce03b0618a..e218f6fdb445 100644 --- a/pkg/sql/sem/tree/testdata/pretty/20.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/20.align-only.golden @@ -4,11 +4,11 @@ - CREATE TABLE t ( a - INT, + INT8, b - INT, + INT8, c - INT, + INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -25,12 +25,12 @@ PARTITION BY LIST ( ) ) -10: ----------- +11: +----------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -50,9 +50,9 @@ PARTITION BY LIST ( 23: ----------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -70,9 +70,9 @@ PARTITION BY LIST (a) ( 27: --------------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -88,9 +88,9 @@ PARTITION BY LIST (a) ( 30: ------------------------------ CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -104,9 +104,9 @@ PARTITION BY LIST (a) ( 31: ------------------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -115,9 +115,9 @@ PARTITION BY LIST (a) ( PARTITION p2 VALUES IN (2) ) -56: --------------------------------------------------------- -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) +59: +----------------------------------------------------------- +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) ( PARTITION p1 VALUES IN (1), @@ -126,12 +126,12 @@ PARTITION BY LIST (a) ( 78: ------------------------------------------------------------------------------ -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) -163: -------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) +166: +---------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) diff --git a/pkg/sql/sem/tree/testdata/pretty/20.ref.golden b/pkg/sql/sem/tree/testdata/pretty/20.ref.golden index 1cce03b0618a..e218f6fdb445 100644 --- a/pkg/sql/sem/tree/testdata/pretty/20.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/20.ref.golden @@ -4,11 +4,11 @@ - CREATE TABLE t ( a - INT, + INT8, b - INT, + INT8, c - INT, + INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -25,12 +25,12 @@ PARTITION BY LIST ( ) ) -10: ----------- +11: +----------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -50,9 +50,9 @@ PARTITION BY LIST ( 23: ----------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 ( @@ -70,9 +70,9 @@ PARTITION BY LIST (a) ( 27: --------------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -88,9 +88,9 @@ PARTITION BY LIST (a) ( 30: ------------------------------ CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -104,9 +104,9 @@ PARTITION BY LIST (a) ( 31: ------------------------------- CREATE TABLE t ( - a INT, - b INT, - c INT, + a INT8, + b INT8, + c INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT p2 (i) @@ -115,9 +115,9 @@ PARTITION BY LIST (a) ( PARTITION p2 VALUES IN (2) ) -56: --------------------------------------------------------- -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) +59: +----------------------------------------------------------- +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) ( PARTITION p1 VALUES IN (1), @@ -126,12 +126,12 @@ PARTITION BY LIST (a) ( 78: ------------------------------------------------------------------------------ -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) -163: -------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE t (a INT, b INT, c INT, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) +166: +---------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE t (a INT8, b INT8, c INT8, PRIMARY KEY (a, b)) INTERLEAVE IN PARENT p2 (i) PARTITION BY LIST (a) (PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)) diff --git a/pkg/sql/sem/tree/testdata/pretty/6.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/6.align-deindent.golden index 9e35d61c725d..035df6700cb0 100644 --- a/pkg/sql/sem/tree/testdata/pretty/6.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/6.align-deindent.golden @@ -28,25 +28,25 @@ VALUES ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -89,25 +89,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -149,25 +149,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -209,25 +209,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -266,25 +266,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -319,25 +319,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -359,25 +359,25 @@ VALUES ('a', 'b'), ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -397,25 +397,25 @@ VALUES ('a', 'b'), ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -434,33 +434,33 @@ VALUES ('a', 'b'), ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -24: ------------------------- +25: +------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), @@ -468,149 +468,149 @@ VALUES ('a', 'b'), ('e', 'f'), ('f', 'g'), ( - ARRAY[NULL::INT] + ARRAY[NULL::INT8] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -26: --------------------------- +27: +--------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), + (ARRAY[NULL::INT8]), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -27: ---------------------------- +28: +---------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), + (ARRAY[NULL::INT8]), ( - ARRAY[NULL::INT, 1] + ARRAY[NULL::INT8, 1] ), ( - ARRAY[1, NULL::INT] + ARRAY[1, NULL::INT8] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -29: ------------------------------ +30: +------------------------------ INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -35: ------------------------------------ +37: +------------------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), ( - ARRAY[NULL::INT, NULL::INT] + ARRAY[NULL::INT8, NULL::INT8] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -37: -------------------------------------- +39: +--------------------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), - (ARRAY[NULL::INT, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), + (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -187: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +192: +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ INSERT INTO kv2 (k, v) -VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT]), (ARRAY[NULL::INT, 1]), (ARRAY[1, NULL::INT]), (ARRAY[NULL::INT, NULL::INT]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) +VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT8]), (ARRAY[NULL::INT8, 1]), (ARRAY[1, NULL::INT8]), (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -210: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT]), (ARRAY[NULL::INT, 1]), (ARRAY[1, NULL::INT]), (ARRAY[NULL::INT, NULL::INT]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) +215: +----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT8]), (ARRAY[NULL::INT8, 1]), (ARRAY[1, NULL::INT8]), (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) diff --git a/pkg/sql/sem/tree/testdata/pretty/6.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/6.align-only.golden index 9e35d61c725d..035df6700cb0 100644 --- a/pkg/sql/sem/tree/testdata/pretty/6.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/6.align-only.golden @@ -28,25 +28,25 @@ VALUES ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -89,25 +89,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -149,25 +149,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -209,25 +209,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -266,25 +266,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -319,25 +319,25 @@ VALUES ( ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -359,25 +359,25 @@ VALUES ('a', 'b'), ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -397,25 +397,25 @@ VALUES ('a', 'b'), ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -434,33 +434,33 @@ VALUES ('a', 'b'), ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -24: ------------------------- +25: +------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), @@ -468,149 +468,149 @@ VALUES ('a', 'b'), ('e', 'f'), ('f', 'g'), ( - ARRAY[NULL::INT] + ARRAY[NULL::INT8] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -26: --------------------------- +27: +--------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), + (ARRAY[NULL::INT8]), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -27: ---------------------------- +28: +---------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), + (ARRAY[NULL::INT8]), ( - ARRAY[NULL::INT, 1] + ARRAY[NULL::INT8, 1] ), ( - ARRAY[1, NULL::INT] + ARRAY[1, NULL::INT8] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -29: ------------------------------ +30: +------------------------------ INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -35: ------------------------------------ +37: +------------------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), ( - ARRAY[NULL::INT, NULL::INT] + ARRAY[NULL::INT8, NULL::INT8] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -37: -------------------------------------- +39: +--------------------------------------- INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), - (ARRAY[NULL::INT, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), + (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -187: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +192: +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ INSERT INTO kv2 (k, v) -VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT]), (ARRAY[NULL::INT, 1]), (ARRAY[1, NULL::INT]), (ARRAY[NULL::INT, NULL::INT]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) +VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT8]), (ARRAY[NULL::INT8, 1]), (ARRAY[1, NULL::INT8]), (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -210: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT]), (ARRAY[NULL::INT, 1]), (ARRAY[1, NULL::INT]), (ARRAY[NULL::INT, NULL::INT]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) +215: +----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT8]), (ARRAY[NULL::INT8, 1]), (ARRAY[1, NULL::INT8]), (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) diff --git a/pkg/sql/sem/tree/testdata/pretty/6.ref.golden b/pkg/sql/sem/tree/testdata/pretty/6.ref.golden index 49330d44ea63..5dceaf690866 100644 --- a/pkg/sql/sem/tree/testdata/pretty/6.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/6.ref.golden @@ -28,25 +28,25 @@ VALUES ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -91,25 +91,25 @@ VALUES ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -152,25 +152,25 @@ VALUES ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -208,25 +208,25 @@ VALUES ), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -252,25 +252,25 @@ VALUES ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), ( @@ -292,33 +292,33 @@ VALUES ('f', 'g'), ( ARRAY[ - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -23: ------------------------ +24: +------------------------ INSERT INTO kv2 (k, v) @@ -327,31 +327,31 @@ VALUES ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), + (ARRAY[NULL::INT8]), ( ARRAY[ - NULL::INT, + NULL::INT8, 1 ] ), ( ARRAY[ 1, - NULL::INT + NULL::INT8 ] ), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -26: --------------------------- +27: +--------------------------- INSERT INTO kv2 (k, v) @@ -360,21 +360,21 @@ VALUES ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), ( ARRAY[ - NULL::INT, - NULL::INT + NULL::INT8, + NULL::INT8 ] ), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -34: ----------------------------------- +36: +------------------------------------ INSERT INTO kv2 (k, v) @@ -383,24 +383,24 @@ VALUES ('c', 'd'), ('e', 'f'), ('f', 'g'), - (ARRAY[NULL::INT]), - (ARRAY[NULL::INT, 1]), - (ARRAY[1, NULL::INT]), - (ARRAY[NULL::INT, NULL::INT]), + (ARRAY[NULL::INT8]), + (ARRAY[NULL::INT8, 1]), + (ARRAY[1, NULL::INT8]), + (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -184: ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +189: +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- INSERT INTO kv2 (k, v) VALUES - ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT]), (ARRAY[NULL::INT, 1]), (ARRAY[1, NULL::INT]), (ARRAY[NULL::INT, NULL::INT]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) + ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT8]), (ARRAY[NULL::INT8, 1]), (ARRAY[1, NULL::INT8]), (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) -210: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT]), (ARRAY[NULL::INT, 1]), (ARRAY[1, NULL::INT]), (ARRAY[NULL::INT, NULL::INT]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) +215: +----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +INSERT INTO kv2 (k, v) VALUES ('a', 'b'), ('c', 'd'), ('e', 'f'), ('f', 'g'), (ARRAY[NULL::INT8]), (ARRAY[NULL::INT8, 1]), (ARRAY[1, NULL::INT8]), (ARRAY[NULL::INT8, NULL::INT8]), (9 / 3 * 1 / 3), (2.0), (2.4 + 4.6) diff --git a/pkg/sql/sem/tree/testdata/pretty/comparison.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/comparison.align-deindent.golden index cce4d33297c7..48782aa9ac77 100644 --- a/pkg/sql/sem/tree/testdata/pretty/comparison.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/comparison.align-deindent.golden @@ -16,7 +16,7 @@ SELECT ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -42,7 +42,7 @@ SELECT 1 ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -66,7 +66,7 @@ SELECT 1 = 1, ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -88,7 +88,7 @@ SELECT 1 = 1, ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -110,7 +110,7 @@ SELECT 1 = 1, ) ), x - = y::INT, + = y::INT8, y[123] = min(z), a @@ -119,8 +119,8 @@ SELECT 1 = 1, 123 ) -18: ------------------- +19: +------------------- SELECT 1 = 1, (1 + 2) = ( @@ -129,7 +129,7 @@ SELECT 1 = 1, x ) ), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -146,7 +146,7 @@ SELECT 1 = 1, 3 * foo(x) ), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -160,7 +160,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -173,7 +173,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY ( @@ -185,7 +185,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) @@ -195,7 +195,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) @@ -203,12 +203,12 @@ SELECT 1 = 1, ------------------------------ SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) -87: ---------------------------------------------------------------------------------------- -SELECT 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT, y[123] = min(z), a = ANY (SELECT 123) +88: +---------------------------------------------------------------------------------------- +SELECT 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) diff --git a/pkg/sql/sem/tree/testdata/pretty/comparison.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/comparison.align-only.golden index cce4d33297c7..48782aa9ac77 100644 --- a/pkg/sql/sem/tree/testdata/pretty/comparison.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/comparison.align-only.golden @@ -16,7 +16,7 @@ SELECT ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -42,7 +42,7 @@ SELECT 1 ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -66,7 +66,7 @@ SELECT 1 = 1, ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -88,7 +88,7 @@ SELECT 1 = 1, ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -110,7 +110,7 @@ SELECT 1 = 1, ) ), x - = y::INT, + = y::INT8, y[123] = min(z), a @@ -119,8 +119,8 @@ SELECT 1 = 1, 123 ) -18: ------------------- +19: +------------------- SELECT 1 = 1, (1 + 2) = ( @@ -129,7 +129,7 @@ SELECT 1 = 1, x ) ), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -146,7 +146,7 @@ SELECT 1 = 1, 3 * foo(x) ), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -160,7 +160,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -173,7 +173,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY ( @@ -185,7 +185,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) @@ -195,7 +195,7 @@ SELECT 1 = 1, SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) @@ -203,12 +203,12 @@ SELECT 1 = 1, ------------------------------ SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) -87: ---------------------------------------------------------------------------------------- -SELECT 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT, y[123] = min(z), a = ANY (SELECT 123) +88: +---------------------------------------------------------------------------------------- +SELECT 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) diff --git a/pkg/sql/sem/tree/testdata/pretty/comparison.ref.golden b/pkg/sql/sem/tree/testdata/pretty/comparison.ref.golden index 27e74cde1b46..805159b0801b 100644 --- a/pkg/sql/sem/tree/testdata/pretty/comparison.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/comparison.ref.golden @@ -16,7 +16,7 @@ SELECT ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -42,7 +42,7 @@ SELECT ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -65,7 +65,7 @@ SELECT ) ), x - = y::INT, + = y::INT8, y[123] = min( z @@ -88,7 +88,7 @@ SELECT ) ), x - = y::INT, + = y::INT8, y[123] = min(z), a @@ -97,8 +97,8 @@ SELECT 123 ) -15: ---------------- +16: +---------------- SELECT 1 = 1, (1 + 2) @@ -108,7 +108,7 @@ SELECT x ) ), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -123,7 +123,7 @@ SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a @@ -138,7 +138,7 @@ SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY ( @@ -152,7 +152,7 @@ SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) @@ -163,7 +163,7 @@ SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) @@ -172,17 +172,17 @@ SELECT SELECT 1 = 1, (1 + 2) = (3 * foo(x)), - x = y::INT, + x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) -84: ------------------------------------------------------------------------------------- +85: +------------------------------------------------------------------------------------- SELECT - 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT, y[123] = min(z), a = ANY (SELECT 123) + 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) -87: ---------------------------------------------------------------------------------------- -SELECT 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT, y[123] = min(z), a = ANY (SELECT 123) +88: +---------------------------------------------------------------------------------------- +SELECT 1 = 1, (1 + 2) = (3 * foo(x)), x = y::INT8, y[123] = min(z), a = ANY (SELECT 123) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-deindent.golden index 116d89fd1f93..4669b4baf02f 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-deindent.golden @@ -4,26 +4,26 @@ - CREATE TABLE t ( a - INT + INT8 ) INTERLEAVE IN PARENT p2 ( i, test ) RESTRICT -9: ---------- +10: +---------- CREATE TABLE t ( - a INT + a INT8 ) INTERLEAVE IN PARENT p2 ( i, test ) RESTRICT -22: ----------------------- -CREATE TABLE t (a INT) +23: +----------------------- +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 ( i, test @@ -31,11 +31,11 @@ INTERLEAVE IN PARENT p2 ( 42: ------------------------------------------ -CREATE TABLE t (a INT) +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 (i, test) RESTRICT -65: ------------------------------------------------------------------ -CREATE TABLE t (a INT) INTERLEAVE IN PARENT p2 (i, test) RESTRICT +66: +------------------------------------------------------------------ +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 (i, test) RESTRICT diff --git a/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-only.golden index 116d89fd1f93..4669b4baf02f 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.align-only.golden @@ -4,26 +4,26 @@ - CREATE TABLE t ( a - INT + INT8 ) INTERLEAVE IN PARENT p2 ( i, test ) RESTRICT -9: ---------- +10: +---------- CREATE TABLE t ( - a INT + a INT8 ) INTERLEAVE IN PARENT p2 ( i, test ) RESTRICT -22: ----------------------- -CREATE TABLE t (a INT) +23: +----------------------- +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 ( i, test @@ -31,11 +31,11 @@ INTERLEAVE IN PARENT p2 ( 42: ------------------------------------------ -CREATE TABLE t (a INT) +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 (i, test) RESTRICT -65: ------------------------------------------------------------------ -CREATE TABLE t (a INT) INTERLEAVE IN PARENT p2 (i, test) RESTRICT +66: +------------------------------------------------------------------ +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 (i, test) RESTRICT diff --git a/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.ref.golden b/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.ref.golden index 116d89fd1f93..4669b4baf02f 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_interleaved_drop.ref.golden @@ -4,26 +4,26 @@ - CREATE TABLE t ( a - INT + INT8 ) INTERLEAVE IN PARENT p2 ( i, test ) RESTRICT -9: ---------- +10: +---------- CREATE TABLE t ( - a INT + a INT8 ) INTERLEAVE IN PARENT p2 ( i, test ) RESTRICT -22: ----------------------- -CREATE TABLE t (a INT) +23: +----------------------- +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 ( i, test @@ -31,11 +31,11 @@ INTERLEAVE IN PARENT p2 ( 42: ------------------------------------------ -CREATE TABLE t (a INT) +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 (i, test) RESTRICT -65: ------------------------------------------------------------------ -CREATE TABLE t (a INT) INTERLEAVE IN PARENT p2 (i, test) RESTRICT +66: +------------------------------------------------------------------ +CREATE TABLE t (a INT8) INTERLEAVE IN PARENT p2 (i, test) RESTRICT diff --git a/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-deindent.golden index 850aa43b9007..1a87857f1abd 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-deindent.golden @@ -4,7 +4,7 @@ - CREATE TABLE students_by_list ( id - SERIAL, + SERIAL8, name STRING, email @@ -31,10 +31,10 @@ PARTITION BY LIST ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email @@ -64,7 +64,7 @@ PARTITION BY LIST ( 16: ---------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -93,7 +93,7 @@ PARTITION BY LIST ( 17: ----------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -121,7 +121,7 @@ PARTITION BY LIST ( 19: ------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -148,7 +148,7 @@ PARTITION BY LIST ( 29: ----------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -173,7 +173,7 @@ PARTITION BY LIST (country) ( 34: ---------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -197,7 +197,7 @@ PARTITION BY LIST (country) ( 41: ----------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -219,7 +219,7 @@ PARTITION BY LIST (country) ( 47: ----------------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -238,7 +238,7 @@ PARTITION BY LIST (country) ( 51: --------------------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -251,9 +251,9 @@ PARTITION BY LIST (country) ( PARTITION default VALUES IN (DEFAULT) ) -142: ----------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) +143: +----------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) ( PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), @@ -262,11 +262,11 @@ PARTITION BY LIST (country) ( 159: --------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) -302: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) +303: +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-only.golden index 850aa43b9007..1a87857f1abd 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_partition_list.align-only.golden @@ -4,7 +4,7 @@ - CREATE TABLE students_by_list ( id - SERIAL, + SERIAL8, name STRING, email @@ -31,10 +31,10 @@ PARTITION BY LIST ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email @@ -64,7 +64,7 @@ PARTITION BY LIST ( 16: ---------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -93,7 +93,7 @@ PARTITION BY LIST ( 17: ----------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -121,7 +121,7 @@ PARTITION BY LIST ( 19: ------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -148,7 +148,7 @@ PARTITION BY LIST ( 29: ----------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -173,7 +173,7 @@ PARTITION BY LIST (country) ( 34: ---------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -197,7 +197,7 @@ PARTITION BY LIST (country) ( 41: ----------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -219,7 +219,7 @@ PARTITION BY LIST (country) ( 47: ----------------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -238,7 +238,7 @@ PARTITION BY LIST (country) ( 51: --------------------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -251,9 +251,9 @@ PARTITION BY LIST (country) ( PARTITION default VALUES IN (DEFAULT) ) -142: ----------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) +143: +----------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) ( PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), @@ -262,11 +262,11 @@ PARTITION BY LIST (country) ( 159: --------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) -302: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) +303: +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_partition_list.ref.golden b/pkg/sql/sem/tree/testdata/pretty/create_partition_list.ref.golden index 850aa43b9007..1a87857f1abd 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_partition_list.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_partition_list.ref.golden @@ -4,7 +4,7 @@ - CREATE TABLE students_by_list ( id - SERIAL, + SERIAL8, name STRING, email @@ -31,10 +31,10 @@ PARTITION BY LIST ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email @@ -64,7 +64,7 @@ PARTITION BY LIST ( 16: ---------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -93,7 +93,7 @@ PARTITION BY LIST ( 17: ----------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -121,7 +121,7 @@ PARTITION BY LIST ( 19: ------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -148,7 +148,7 @@ PARTITION BY LIST ( 29: ----------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -173,7 +173,7 @@ PARTITION BY LIST (country) ( 34: ---------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -197,7 +197,7 @@ PARTITION BY LIST (country) ( 41: ----------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -219,7 +219,7 @@ PARTITION BY LIST (country) ( 47: ----------------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -238,7 +238,7 @@ PARTITION BY LIST (country) ( 51: --------------------------------------------------- CREATE TABLE students_by_list ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -251,9 +251,9 @@ PARTITION BY LIST (country) ( PARTITION default VALUES IN (DEFAULT) ) -142: ----------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) +143: +----------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) ( PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), @@ -262,11 +262,11 @@ PARTITION BY LIST (country) ( 159: --------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) -302: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_list (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) +303: +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_list (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, id)) PARTITION BY LIST (country) (PARTITION north_america VALUES IN ('CA', 'US'), PARTITION australia VALUES IN ('AU', 'NZ'), PARTITION default VALUES IN (DEFAULT)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-deindent.golden index 28e4ace8870c..7b164309f613 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-deindent.golden @@ -4,7 +4,7 @@ - CREATE TABLE students_by_range ( id - SERIAL, + SERIAL8, name STRING, email @@ -34,10 +34,10 @@ PARTITION BY RANGE ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email @@ -70,7 +70,7 @@ PARTITION BY RANGE ( 16: ---------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -102,7 +102,7 @@ PARTITION BY RANGE ( 17: ----------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -133,7 +133,7 @@ PARTITION BY RANGE ( 19: ------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -163,7 +163,7 @@ PARTITION BY RANGE ( 21: --------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -191,7 +191,7 @@ PARTITION BY RANGE ( 23: ----------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -217,7 +217,7 @@ PARTITION BY RANGE ( 26: -------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -241,7 +241,7 @@ PARTITION BY RANGE ( 27: --------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -263,7 +263,7 @@ PARTITION BY RANGE ( 34: ---------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -284,7 +284,7 @@ PARTITION BY RANGE ( 35: ----------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -308,7 +308,7 @@ PARTITION BY RANGE ( 37: ------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -335,7 +335,7 @@ PARTITION BY RANGE ( 42: ------------------------------------------ CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -360,7 +360,7 @@ PARTITION BY RANGE ( 46: ---------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -383,7 +383,7 @@ PARTITION BY RANGE ( 47: ----------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -404,7 +404,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 48: ------------------------------------------------ CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -423,7 +423,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 49: ------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -440,7 +440,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 62: -------------------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -456,7 +456,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 65: ----------------------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -468,9 +468,9 @@ PARTITION BY RANGE (expected_graduation_date) ( PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue) ) -160: ----------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) +161: +----------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) ( PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue) @@ -478,11 +478,11 @@ PARTITION BY RANGE (expected_graduation_date) ( 168: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) -329: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) +330: +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-only.golden index 28e4ace8870c..7b164309f613 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_partition_range.align-only.golden @@ -4,7 +4,7 @@ - CREATE TABLE students_by_range ( id - SERIAL, + SERIAL8, name STRING, email @@ -34,10 +34,10 @@ PARTITION BY RANGE ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email @@ -70,7 +70,7 @@ PARTITION BY RANGE ( 16: ---------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -102,7 +102,7 @@ PARTITION BY RANGE ( 17: ----------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -133,7 +133,7 @@ PARTITION BY RANGE ( 19: ------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -163,7 +163,7 @@ PARTITION BY RANGE ( 21: --------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -191,7 +191,7 @@ PARTITION BY RANGE ( 23: ----------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -217,7 +217,7 @@ PARTITION BY RANGE ( 26: -------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -241,7 +241,7 @@ PARTITION BY RANGE ( 27: --------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -263,7 +263,7 @@ PARTITION BY RANGE ( 34: ---------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -284,7 +284,7 @@ PARTITION BY RANGE ( 35: ----------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -308,7 +308,7 @@ PARTITION BY RANGE ( 37: ------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -335,7 +335,7 @@ PARTITION BY RANGE ( 42: ------------------------------------------ CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -360,7 +360,7 @@ PARTITION BY RANGE ( 46: ---------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -383,7 +383,7 @@ PARTITION BY RANGE ( 47: ----------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -404,7 +404,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 48: ------------------------------------------------ CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -423,7 +423,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 49: ------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -440,7 +440,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 62: -------------------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -456,7 +456,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 65: ----------------------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -468,9 +468,9 @@ PARTITION BY RANGE (expected_graduation_date) ( PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue) ) -160: ----------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) +161: +----------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) ( PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue) @@ -478,11 +478,11 @@ PARTITION BY RANGE (expected_graduation_date) ( 168: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) -329: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) +330: +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_partition_range.ref.golden b/pkg/sql/sem/tree/testdata/pretty/create_partition_range.ref.golden index 2c3fb71bb8a4..ece42d19a5f3 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_partition_range.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_partition_range.ref.golden @@ -4,7 +4,7 @@ - CREATE TABLE students_by_range ( id - SERIAL, + SERIAL8, name STRING, email @@ -34,10 +34,10 @@ PARTITION BY RANGE ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email @@ -70,7 +70,7 @@ PARTITION BY RANGE ( 16: ---------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -102,7 +102,7 @@ PARTITION BY RANGE ( 17: ----------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -133,7 +133,7 @@ PARTITION BY RANGE ( 19: ------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -163,7 +163,7 @@ PARTITION BY RANGE ( 21: --------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -191,7 +191,7 @@ PARTITION BY RANGE ( 23: ----------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -217,7 +217,7 @@ PARTITION BY RANGE ( 26: -------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -241,7 +241,7 @@ PARTITION BY RANGE ( 27: --------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -263,7 +263,7 @@ PARTITION BY RANGE ( 34: ---------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -284,7 +284,7 @@ PARTITION BY RANGE ( 41: ----------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -304,7 +304,7 @@ PARTITION BY RANGE ( 42: ------------------------------------------ CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -323,7 +323,7 @@ PARTITION BY RANGE ( 47: ----------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -340,7 +340,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 62: -------------------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -356,7 +356,7 @@ PARTITION BY RANGE (expected_graduation_date) ( 65: ----------------------------------------------------------------- CREATE TABLE students_by_range ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -368,9 +368,9 @@ PARTITION BY RANGE (expected_graduation_date) ( PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue) ) -160: ----------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) +161: +----------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) ( PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue) @@ -378,11 +378,11 @@ PARTITION BY RANGE (expected_graduation_date) ( 168: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) -329: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students_by_range (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) +330: +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ +CREATE TABLE students_by_range (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (expected_graduation_date, id)) PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current VALUES FROM ('2017-08-15') TO (maxvalue)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-deindent.golden index 186c9e3b46e4..5f0b6cbf9dc6 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-deindent.golden @@ -4,7 +4,7 @@ - CREATE TABLE students ( id - SERIAL, + SERIAL8, name STRING, email @@ -64,10 +64,10 @@ PARTITION BY LIST ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email @@ -130,7 +130,7 @@ PARTITION BY LIST ( 16: ---------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -192,7 +192,7 @@ PARTITION BY LIST ( 17: ----------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -253,7 +253,7 @@ PARTITION BY LIST ( 19: ------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -313,7 +313,7 @@ PARTITION BY LIST ( 29: ----------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -367,7 +367,7 @@ PARTITION BY LIST (country) ( 31: ------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -417,7 +417,7 @@ PARTITION BY LIST (country) ( 34: ---------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -462,7 +462,7 @@ PARTITION BY LIST (country) ( 35: ----------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -502,7 +502,7 @@ PARTITION BY LIST (country) ( 39: --------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -541,7 +541,7 @@ PARTITION BY LIST (country) ( 42: ------------------------------------------ CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -586,7 +586,7 @@ PARTITION BY LIST (country) ( 44: -------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -637,7 +637,7 @@ PARTITION BY LIST (country) ( 49: ------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -684,7 +684,7 @@ PARTITION BY LIST (country) ( 53: ----------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -723,7 +723,7 @@ PARTITION BY LIST (country) ( 55: ------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -758,7 +758,7 @@ PARTITION BY LIST (country) ( 56: -------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -789,7 +789,7 @@ PARTITION BY LIST (country) ( 67: ------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -825,7 +825,7 @@ PARTITION BY LIST (country) ( 69: --------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -860,7 +860,7 @@ PARTITION BY LIST (country) ( 70: ---------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -893,7 +893,7 @@ PARTITION BY LIST (country) ( 71: ----------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -930,7 +930,7 @@ PARTITION BY LIST (country) ( 74: -------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -965,7 +965,7 @@ PARTITION BY LIST (country) ( 75: --------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -998,7 +998,7 @@ PARTITION BY LIST (country) ( 82: ---------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1034,7 +1034,7 @@ PARTITION BY LIST (country) ( 84: ------------------------------------------------------------------------------------ CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1073,7 +1073,7 @@ PARTITION BY LIST (country) ( 86: -------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1115,7 +1115,7 @@ PARTITION BY LIST (country) ( 88: ---------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1160,7 +1160,7 @@ PARTITION BY LIST (country) ( 89: ----------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1203,7 +1203,7 @@ PARTITION BY LIST (country) ( 93: --------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1242,7 +1242,7 @@ PARTITION BY LIST (country) ( 94: ---------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1279,7 +1279,7 @@ PARTITION BY LIST (country) ( 95: ----------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1314,7 +1314,7 @@ PARTITION BY LIST (country) ( 96: ------------------------------------------------------------------------------------------------ CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1347,7 +1347,7 @@ PARTITION BY LIST (country) ( 97: ------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1378,7 +1378,7 @@ PARTITION BY LIST (country) ( 98: -------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1407,7 +1407,7 @@ PARTITION BY LIST (country) ( 99: --------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1434,7 +1434,7 @@ PARTITION BY LIST (country) ( 100: ---------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1459,7 +1459,7 @@ PARTITION BY LIST (country) ( 109: ------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1483,7 +1483,7 @@ PARTITION BY LIST (country) ( 112: ---------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1506,7 +1506,7 @@ PARTITION BY LIST (country) ( 113: ----------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1528,7 +1528,7 @@ PARTITION BY LIST (country) ( 116: -------------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1546,9 +1546,9 @@ PARTITION BY LIST (country) ( ) ) -160: ----------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +161: +----------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) ( PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), @@ -1562,7 +1562,7 @@ PARTITION BY LIST (country) ( 222: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) ( @@ -1573,7 +1573,7 @@ PARTITION BY LIST (country) ( 225: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue)) @@ -1581,11 +1581,11 @@ PARTITION BY LIST (country) ( 470: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) -631: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) +632: +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-only.golden index 186c9e3b46e4..5f0b6cbf9dc6 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_subpartition.align-only.golden @@ -4,7 +4,7 @@ - CREATE TABLE students ( id - SERIAL, + SERIAL8, name STRING, email @@ -64,10 +64,10 @@ PARTITION BY LIST ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email @@ -130,7 +130,7 @@ PARTITION BY LIST ( 16: ---------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -192,7 +192,7 @@ PARTITION BY LIST ( 17: ----------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -253,7 +253,7 @@ PARTITION BY LIST ( 19: ------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -313,7 +313,7 @@ PARTITION BY LIST ( 29: ----------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -367,7 +367,7 @@ PARTITION BY LIST (country) ( 31: ------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -417,7 +417,7 @@ PARTITION BY LIST (country) ( 34: ---------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -462,7 +462,7 @@ PARTITION BY LIST (country) ( 35: ----------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -502,7 +502,7 @@ PARTITION BY LIST (country) ( 39: --------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -541,7 +541,7 @@ PARTITION BY LIST (country) ( 42: ------------------------------------------ CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -586,7 +586,7 @@ PARTITION BY LIST (country) ( 44: -------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -637,7 +637,7 @@ PARTITION BY LIST (country) ( 49: ------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -684,7 +684,7 @@ PARTITION BY LIST (country) ( 53: ----------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -723,7 +723,7 @@ PARTITION BY LIST (country) ( 55: ------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -758,7 +758,7 @@ PARTITION BY LIST (country) ( 56: -------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -789,7 +789,7 @@ PARTITION BY LIST (country) ( 67: ------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -825,7 +825,7 @@ PARTITION BY LIST (country) ( 69: --------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -860,7 +860,7 @@ PARTITION BY LIST (country) ( 70: ---------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -893,7 +893,7 @@ PARTITION BY LIST (country) ( 71: ----------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -930,7 +930,7 @@ PARTITION BY LIST (country) ( 74: -------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -965,7 +965,7 @@ PARTITION BY LIST (country) ( 75: --------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -998,7 +998,7 @@ PARTITION BY LIST (country) ( 82: ---------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1034,7 +1034,7 @@ PARTITION BY LIST (country) ( 84: ------------------------------------------------------------------------------------ CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1073,7 +1073,7 @@ PARTITION BY LIST (country) ( 86: -------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1115,7 +1115,7 @@ PARTITION BY LIST (country) ( 88: ---------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1160,7 +1160,7 @@ PARTITION BY LIST (country) ( 89: ----------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1203,7 +1203,7 @@ PARTITION BY LIST (country) ( 93: --------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1242,7 +1242,7 @@ PARTITION BY LIST (country) ( 94: ---------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1279,7 +1279,7 @@ PARTITION BY LIST (country) ( 95: ----------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1314,7 +1314,7 @@ PARTITION BY LIST (country) ( 96: ------------------------------------------------------------------------------------------------ CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1347,7 +1347,7 @@ PARTITION BY LIST (country) ( 97: ------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1378,7 +1378,7 @@ PARTITION BY LIST (country) ( 98: -------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1407,7 +1407,7 @@ PARTITION BY LIST (country) ( 99: --------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1434,7 +1434,7 @@ PARTITION BY LIST (country) ( 100: ---------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1459,7 +1459,7 @@ PARTITION BY LIST (country) ( 109: ------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1483,7 +1483,7 @@ PARTITION BY LIST (country) ( 112: ---------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1506,7 +1506,7 @@ PARTITION BY LIST (country) ( 113: ----------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1528,7 +1528,7 @@ PARTITION BY LIST (country) ( 116: -------------------------------------------------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -1546,9 +1546,9 @@ PARTITION BY LIST (country) ( ) ) -160: ----------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +161: +----------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) ( PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), @@ -1562,7 +1562,7 @@ PARTITION BY LIST (country) ( 222: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) ( @@ -1573,7 +1573,7 @@ PARTITION BY LIST (country) ( 225: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue)) @@ -1581,11 +1581,11 @@ PARTITION BY LIST (country) ( 470: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) -631: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) +632: +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_subpartition.ref.golden b/pkg/sql/sem/tree/testdata/pretty/create_subpartition.ref.golden index fa927da84a43..da8b6355625d 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_subpartition.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_subpartition.ref.golden @@ -4,7 +4,7 @@ - CREATE TABLE students ( id - SERIAL, + SERIAL8, name STRING, email @@ -64,10 +64,10 @@ PARTITION BY LIST ( ) ) -14: --------------- +15: +--------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email @@ -130,7 +130,7 @@ PARTITION BY LIST ( 16: ---------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, @@ -192,7 +192,7 @@ PARTITION BY LIST ( 17: ----------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country @@ -253,7 +253,7 @@ PARTITION BY LIST ( 19: ------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -313,7 +313,7 @@ PARTITION BY LIST ( 29: ----------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -367,7 +367,7 @@ PARTITION BY LIST (country) ( 31: ------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -417,7 +417,7 @@ PARTITION BY LIST (country) ( 34: ---------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -462,7 +462,7 @@ PARTITION BY LIST (country) ( 35: ----------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -503,7 +503,7 @@ PARTITION BY LIST (country) ( 46: ---------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -541,7 +541,7 @@ PARTITION BY LIST (country) ( 49: ------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -577,7 +577,7 @@ PARTITION BY LIST (country) ( 50: -------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -608,7 +608,7 @@ PARTITION BY LIST (country) ( 55: ------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -635,7 +635,7 @@ PARTITION BY LIST (country) ( 73: ------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -660,7 +660,7 @@ PARTITION BY LIST (country) ( 76: ---------------------------------------------------------------------------- CREATE TABLE students ( - id SERIAL, + id SERIAL8, name STRING, email STRING, country STRING, @@ -680,9 +680,9 @@ PARTITION BY LIST (country) ( ) ) -160: ----------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +161: +----------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) ( @@ -698,7 +698,7 @@ PARTITION BY LIST (country) ( 182: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) ( @@ -711,7 +711,7 @@ PARTITION BY LIST (country) ( 183: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), @@ -721,7 +721,7 @@ PARTITION BY LIST (country) ( 222: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') @@ -730,7 +730,7 @@ PARTITION BY LIST (country) ( 225: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) ( PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue)) @@ -738,11 +738,11 @@ PARTITION BY LIST (country) ( 470: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) -631: -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -CREATE TABLE students (id SERIAL, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) +632: +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE students (id SERIAL8, name STRING, email STRING, country STRING, expected_graduation_date DATE, PRIMARY KEY (country, expected_graduation_date, id)) PARTITION BY LIST (country) (PARTITION australia VALUES IN ('AU', 'NZ') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_au VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_au VALUES FROM ('2017-08-15') TO (maxvalue)), PARTITION north_america VALUES IN ('US', 'CA') PARTITION BY RANGE (expected_graduation_date) (PARTITION graduated_us VALUES FROM (minvalue) TO ('2017-08-15'), PARTITION current_us VALUES FROM ('2017-08-15') TO (maxvalue))) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_table.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/create_table.align-deindent.golden index 801033f529d7..df110fccb498 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_table.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_table.align-deindent.golden @@ -4,7 +4,7 @@ - CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -25,15 +25,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -65,7 +65,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -77,7 +77,7 @@ CREATE TABLE product_information ( --------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -98,15 +98,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -137,7 +137,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -145,10 +145,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -18: ------------------- +19: +------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -169,15 +169,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -187,9 +187,8 @@ CREATE TABLE product_information ( catalog_url STRING(50) UNIQUE, - date_added - DATE - DEFAULT current_date(), + date_added DATE + DEFAULT current_date(), misc JSONB, full_name STRING @@ -208,7 +207,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -216,10 +215,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -19: -------------------- +20: +-------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -240,15 +239,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -261,15 +260,14 @@ CREATE TABLE product_information ( date_added DATE DEFAULT current_date(), misc JSONB, - full_name - STRING - AS ( - concat( - first_name, - ' ', - last_name - ) - ) STORED, + full_name STRING + AS ( + concat( + first_name, + ' ', + last_name + ) + ) STORED, CONSTRAINT price_check CHECK ( list_price @@ -277,7 +275,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -285,10 +283,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -20: --------------------- +21: +--------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -309,14 +307,14 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -344,7 +342,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -352,10 +350,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -21: ---------------------- +22: +---------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -375,14 +373,14 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -410,7 +408,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -418,10 +416,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -23: ------------------------ +24: +------------------------ CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -441,13 +439,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -475,7 +473,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -486,7 +484,7 @@ CREATE TABLE product_information ( 25: ------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -505,13 +503,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -539,7 +537,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -550,7 +548,7 @@ CREATE TABLE product_information ( 26: -------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -569,13 +567,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -602,7 +600,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -613,7 +611,7 @@ CREATE TABLE product_information ( 27: --------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -631,13 +629,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -663,7 +661,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -674,7 +672,7 @@ CREATE TABLE product_information ( 28: ---------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -692,13 +690,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), @@ -723,7 +721,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -734,7 +732,7 @@ CREATE TABLE product_information ( 30: ------------------------------ CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -752,13 +750,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -782,7 +780,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -793,7 +791,7 @@ CREATE TABLE product_information ( 34: ---------------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -811,13 +809,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -839,7 +837,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -850,7 +848,7 @@ CREATE TABLE product_information ( 37: ------------------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -867,13 +865,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -895,7 +893,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -906,7 +904,7 @@ CREATE TABLE product_information ( 38: -------------------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -919,13 +917,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -947,7 +945,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -958,7 +956,58 @@ CREATE TABLE product_information ( 40: ---------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 + NOT NULL + PRIMARY KEY, + product_name STRING(50) + NOT NULL + UNIQUE, + product_description STRING(2000), + category_id STRING(1) + NOT NULL + CHECK ( + category_id + IN ('A', 'B', 'C') + ), + weight_class INT8, + warranty_period INT8 + CONSTRAINT valid_warranty + CHECK ( + warranty_period BETWEEN 0 AND 24 + ), + supplier_id INT8, + product_status STRING(20), + list_price DECIMAL(8,2), + min_price DECIMAL(8,2), + catalog_url STRING(50) UNIQUE, + date_added DATE + DEFAULT current_date(), + misc JSONB, + full_name STRING + AS ( + concat( + first_name, + ' ', + last_name + ) + ) STORED, + CONSTRAINT price_check CHECK ( + list_price + >= min_price + ), + INDEX date_added_idx (date_added), + INDEX supp_id_prod_status_idx (supplier_id, product_status), + customer_id INT8 + REFERENCES customers_2 ( + id + ) ON DELETE CASCADE ON UPDATE CASCADE, + INVERTED INDEX details (misc) +) + +41: +----------------------------------------- +CREATE TABLE product_information ( + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, @@ -969,13 +1018,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -997,7 +1046,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1007,7 +1056,7 @@ CREATE TABLE product_information ( 43: ------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, @@ -1018,13 +1067,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1045,7 +1094,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1055,7 +1104,7 @@ CREATE TABLE product_information ( 44: -------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1064,13 +1113,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1091,7 +1140,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1101,7 +1150,7 @@ CREATE TABLE product_information ( 50: -------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1109,13 +1158,13 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1132,7 +1181,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1142,7 +1191,7 @@ CREATE TABLE product_information ( 51: --------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1150,13 +1199,13 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1172,7 +1221,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1182,7 +1231,7 @@ CREATE TABLE product_information ( 53: ----------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1190,12 +1239,12 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1211,7 +1260,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1221,18 +1270,18 @@ CREATE TABLE product_information ( 55: ------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1248,7 +1297,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1258,18 +1307,18 @@ CREATE TABLE product_information ( 59: ----------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1283,7 +1332,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1293,18 +1342,18 @@ CREATE TABLE product_information ( 61: ------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1316,7 +1365,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1326,18 +1375,18 @@ CREATE TABLE product_information ( 68: -------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1348,7 +1397,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1358,16 +1407,16 @@ CREATE TABLE product_information ( 74: -------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1378,7 +1427,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1388,16 +1437,16 @@ CREATE TABLE product_information ( 80: -------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1408,24 +1457,24 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -84: ------------------------------------------------------------------------------------- +85: +------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1436,21 +1485,21 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) 87: --------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1461,20 +1510,20 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -91: -------------------------------------------------------------------------------------------- +92: +-------------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1485,12 +1534,12 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -827: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE product_information (product_id INT NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), weight_class INT, warranty_period INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), supplier_id INT, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), misc JSONB, full_name STRING AS (concat(first_name, ' ', last_name)) STORED, CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc)) +832: +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE product_information (product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), weight_class INT8, warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), misc JSONB, full_name STRING AS (concat(first_name, ' ', last_name)) STORED, CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_table.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/create_table.align-only.golden index 801033f529d7..df110fccb498 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_table.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_table.align-only.golden @@ -4,7 +4,7 @@ - CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -25,15 +25,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -65,7 +65,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -77,7 +77,7 @@ CREATE TABLE product_information ( --------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -98,15 +98,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -137,7 +137,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -145,10 +145,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -18: ------------------- +19: +------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -169,15 +169,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -187,9 +187,8 @@ CREATE TABLE product_information ( catalog_url STRING(50) UNIQUE, - date_added - DATE - DEFAULT current_date(), + date_added DATE + DEFAULT current_date(), misc JSONB, full_name STRING @@ -208,7 +207,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -216,10 +215,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -19: -------------------- +20: +-------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -240,15 +239,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -261,15 +260,14 @@ CREATE TABLE product_information ( date_added DATE DEFAULT current_date(), misc JSONB, - full_name - STRING - AS ( - concat( - first_name, - ' ', - last_name - ) - ) STORED, + full_name STRING + AS ( + concat( + first_name, + ' ', + last_name + ) + ) STORED, CONSTRAINT price_check CHECK ( list_price @@ -277,7 +275,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -285,10 +283,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -20: --------------------- +21: +--------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -309,14 +307,14 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -344,7 +342,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -352,10 +350,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -21: ---------------------- +22: +---------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -375,14 +373,14 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -410,7 +408,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -418,10 +416,10 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -23: ------------------------ +24: +------------------------ CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -441,13 +439,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -475,7 +473,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -486,7 +484,7 @@ CREATE TABLE product_information ( 25: ------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -505,13 +503,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -539,7 +537,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -550,7 +548,7 @@ CREATE TABLE product_information ( 26: -------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name @@ -569,13 +567,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -602,7 +600,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -613,7 +611,7 @@ CREATE TABLE product_information ( 27: --------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -631,13 +629,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -663,7 +661,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -674,7 +672,7 @@ CREATE TABLE product_information ( 28: ---------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -692,13 +690,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), @@ -723,7 +721,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -734,7 +732,7 @@ CREATE TABLE product_information ( 30: ------------------------------ CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -752,13 +750,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -782,7 +780,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -793,7 +791,7 @@ CREATE TABLE product_information ( 34: ---------------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -811,13 +809,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -839,7 +837,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -850,7 +848,7 @@ CREATE TABLE product_information ( 37: ------------------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -867,13 +865,13 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -895,7 +893,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -906,7 +904,7 @@ CREATE TABLE product_information ( 38: -------------------------------------- CREATE TABLE product_information ( - product_id INT + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) @@ -919,13 +917,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -947,7 +945,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) @@ -958,7 +956,58 @@ CREATE TABLE product_information ( 40: ---------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 + NOT NULL + PRIMARY KEY, + product_name STRING(50) + NOT NULL + UNIQUE, + product_description STRING(2000), + category_id STRING(1) + NOT NULL + CHECK ( + category_id + IN ('A', 'B', 'C') + ), + weight_class INT8, + warranty_period INT8 + CONSTRAINT valid_warranty + CHECK ( + warranty_period BETWEEN 0 AND 24 + ), + supplier_id INT8, + product_status STRING(20), + list_price DECIMAL(8,2), + min_price DECIMAL(8,2), + catalog_url STRING(50) UNIQUE, + date_added DATE + DEFAULT current_date(), + misc JSONB, + full_name STRING + AS ( + concat( + first_name, + ' ', + last_name + ) + ) STORED, + CONSTRAINT price_check CHECK ( + list_price + >= min_price + ), + INDEX date_added_idx (date_added), + INDEX supp_id_prod_status_idx (supplier_id, product_status), + customer_id INT8 + REFERENCES customers_2 ( + id + ) ON DELETE CASCADE ON UPDATE CASCADE, + INVERTED INDEX details (misc) +) + +41: +----------------------------------------- +CREATE TABLE product_information ( + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, @@ -969,13 +1018,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -997,7 +1046,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1007,7 +1056,7 @@ CREATE TABLE product_information ( 43: ------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, @@ -1018,13 +1067,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1045,7 +1094,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1055,7 +1104,7 @@ CREATE TABLE product_information ( 44: -------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1064,13 +1113,13 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1091,7 +1140,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1101,7 +1150,7 @@ CREATE TABLE product_information ( 50: -------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1109,13 +1158,13 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1132,7 +1181,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1142,7 +1191,7 @@ CREATE TABLE product_information ( 51: --------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1150,13 +1199,13 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1172,7 +1221,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1182,7 +1231,7 @@ CREATE TABLE product_information ( 53: ----------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) @@ -1190,12 +1239,12 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1211,7 +1260,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1221,18 +1270,18 @@ CREATE TABLE product_information ( 55: ------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1248,7 +1297,7 @@ CREATE TABLE product_information ( ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1258,18 +1307,18 @@ CREATE TABLE product_information ( 59: ----------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1283,7 +1332,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1293,18 +1342,18 @@ CREATE TABLE product_information ( 61: ------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1316,7 +1365,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1326,18 +1375,18 @@ CREATE TABLE product_information ( 68: -------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1348,7 +1397,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1358,16 +1407,16 @@ CREATE TABLE product_information ( 74: -------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1378,7 +1427,7 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 ( id ) ON DELETE CASCADE ON UPDATE CASCADE, @@ -1388,16 +1437,16 @@ CREATE TABLE product_information ( 80: -------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1408,24 +1457,24 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -84: ------------------------------------------------------------------------------------- +85: +------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1436,21 +1485,21 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) 87: --------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1461,20 +1510,20 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -91: -------------------------------------------------------------------------------------------- +92: +-------------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1485,12 +1534,12 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -827: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE product_information (product_id INT NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), weight_class INT, warranty_period INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), supplier_id INT, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), misc JSONB, full_name STRING AS (concat(first_name, ' ', last_name)) STORED, CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc)) +832: +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE product_information (product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), weight_class INT8, warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), misc JSONB, full_name STRING AS (concat(first_name, ' ', last_name)) STORED, CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc)) diff --git a/pkg/sql/sem/tree/testdata/pretty/create_table.ref.golden b/pkg/sql/sem/tree/testdata/pretty/create_table.ref.golden index afc2083d501b..6cebcdd31f5b 100644 --- a/pkg/sql/sem/tree/testdata/pretty/create_table.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/create_table.ref.golden @@ -4,7 +4,7 @@ - CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -25,15 +25,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -65,7 +65,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -77,7 +77,7 @@ CREATE TABLE product_information ( --------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -98,15 +98,15 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), supplier_id - INT, + INT8, product_status STRING(20), list_price @@ -137,7 +137,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -145,11 +145,11 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -20: --------------------- +21: +--------------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -170,14 +170,14 @@ CREATE TABLE product_information ( ) ), weight_class - INT, + INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -208,7 +208,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -216,11 +216,11 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -21: ---------------------- +22: +---------------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -240,14 +240,14 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -278,7 +278,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -290,7 +290,7 @@ CREATE TABLE product_information ( -------------------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -310,14 +310,14 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -347,7 +347,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -359,7 +359,7 @@ CREATE TABLE product_information ( --------------------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -379,14 +379,14 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price @@ -415,7 +415,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -427,7 +427,7 @@ CREATE TABLE product_information ( ---------------------------- CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -447,14 +447,14 @@ CREATE TABLE product_information ( 'C' ) ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), @@ -482,7 +482,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -494,7 +494,7 @@ CREATE TABLE product_information ( ------------------------------ CREATE TABLE product_information ( product_id - INT + INT8 NOT NULL PRIMARY KEY, product_name @@ -510,14 +510,14 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -544,7 +544,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -552,11 +552,11 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -33: ---------------------------------- +34: +---------------------------------- CREATE TABLE product_information ( product_id - INT NOT NULL PRIMARY KEY, + INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL @@ -570,19 +570,18 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), - catalog_url - STRING(50) UNIQUE, + catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), @@ -604,7 +603,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 ( id ) @@ -612,15 +611,13 @@ CREATE TABLE product_information ( INVERTED INDEX details (misc) ) -34: ----------------------------------- +35: +----------------------------------- CREATE TABLE product_information ( product_id - INT NOT NULL PRIMARY KEY, + INT8 NOT NULL PRIMARY KEY, product_name - STRING(50) - NOT NULL - UNIQUE, + STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id @@ -630,14 +627,14 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -657,25 +654,22 @@ CREATE TABLE product_information ( ) STORED, CONSTRAINT price_check CHECK ( - list_price - >= min_price + list_price >= min_price ), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT - REFERENCES customers_2 ( - id - ) + INT8 + REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -35: ------------------------------------ +36: +------------------------------------ CREATE TABLE product_information ( product_id - INT NOT NULL PRIMARY KEY, + INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description @@ -687,21 +681,20 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added - DATE - DEFAULT current_date(), + DATE DEFAULT current_date(), misc JSONB, full_name STRING @@ -719,21 +712,20 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -36: ------------------------------------- +37: +------------------------------------- CREATE TABLE product_information ( product_id - INT NOT NULL PRIMARY KEY, + INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, - product_description - STRING(2000), + product_description STRING(2000), category_id STRING(1) NOT NULL @@ -741,14 +733,14 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -772,17 +764,17 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -37: -------------------------------------- +40: +---------------------------------------- CREATE TABLE product_information ( product_id - INT NOT NULL PRIMARY KEY, + INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), @@ -793,14 +785,14 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -818,22 +810,20 @@ CREATE TABLE product_information ( ) ) STORED, CONSTRAINT price_check - CHECK ( - list_price >= min_price - ), + CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -40: ----------------------------------------- +41: +----------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), @@ -844,14 +834,14 @@ CREATE TABLE product_information ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -873,7 +863,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -882,7 +872,7 @@ CREATE TABLE product_information ( 42: ------------------------------------------ CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), @@ -892,14 +882,14 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -921,7 +911,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -930,7 +920,7 @@ CREATE TABLE product_information ( 43: ------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), @@ -940,14 +930,14 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -968,7 +958,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -977,7 +967,7 @@ CREATE TABLE product_information ( 44: -------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id @@ -986,14 +976,14 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1014,7 +1004,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1023,7 +1013,7 @@ CREATE TABLE product_information ( 46: ---------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id @@ -1032,14 +1022,14 @@ CREATE TABLE product_information ( CHECK ( category_id IN ('A', 'B', 'C') ), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1056,7 +1046,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1065,21 +1055,21 @@ CREATE TABLE product_information ( 47: ----------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK ( warranty_period BETWEEN 0 AND 24 ), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1096,7 +1086,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1105,19 +1095,19 @@ CREATE TABLE product_information ( 53: ----------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1134,7 +1124,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1143,19 +1133,19 @@ CREATE TABLE product_information ( 55: ------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1170,7 +1160,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1179,19 +1169,19 @@ CREATE TABLE product_information ( 59: ----------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1205,7 +1195,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1214,19 +1204,19 @@ CREATE TABLE product_information ( 62: -------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1239,7 +1229,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1248,17 +1238,17 @@ CREATE TABLE product_information ( 66: ------------------------------------------------------------------ CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1271,7 +1261,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1280,17 +1270,17 @@ CREATE TABLE product_information ( 68: -------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1302,7 +1292,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) @@ -1311,17 +1301,17 @@ CREATE TABLE product_information ( 72: ------------------------------------------------------------------------ CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1333,7 +1323,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) @@ -1341,16 +1331,16 @@ CREATE TABLE product_information ( 74: -------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1362,7 +1352,7 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) @@ -1370,15 +1360,15 @@ CREATE TABLE product_information ( 75: --------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1390,23 +1380,23 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -76: ----------------------------------------------------------------------------- +77: +----------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1418,21 +1408,21 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -79: -------------------------------------------------------------------------------- +80: +-------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1444,21 +1434,21 @@ CREATE TABLE product_information ( INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id - INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -84: ------------------------------------------------------------------------------------- +85: +------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, + weight_class INT8, warranty_period - INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1469,20 +1459,20 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -91: -------------------------------------------------------------------------------------------- +92: +-------------------------------------------------------------------------------------------- CREATE TABLE product_information ( - product_id INT NOT NULL PRIMARY KEY, + product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), - weight_class INT, - warranty_period INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), - supplier_id INT, + weight_class INT8, + warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), + supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), @@ -1493,12 +1483,12 @@ CREATE TABLE product_information ( CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), - customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, + customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc) ) -827: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -CREATE TABLE product_information (product_id INT NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), weight_class INT, warranty_period INT CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), supplier_id INT, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), misc JSONB, full_name STRING AS (concat(first_name, ' ', last_name)) STORED, CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id INT REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc)) +832: +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +CREATE TABLE product_information (product_id INT8 NOT NULL PRIMARY KEY, product_name STRING(50) NOT NULL UNIQUE, product_description STRING(2000), category_id STRING(1) NOT NULL CHECK (category_id IN ('A', 'B', 'C')), weight_class INT8, warranty_period INT8 CONSTRAINT valid_warranty CHECK (warranty_period BETWEEN 0 AND 24), supplier_id INT8, product_status STRING(20), list_price DECIMAL(8,2), min_price DECIMAL(8,2), catalog_url STRING(50) UNIQUE, date_added DATE DEFAULT current_date(), misc JSONB, full_name STRING AS (concat(first_name, ' ', last_name)) STORED, CONSTRAINT price_check CHECK (list_price >= min_price), INDEX date_added_idx (date_added), INDEX supp_id_prod_status_idx (supplier_id, product_status), customer_id INT8 REFERENCES customers_2 (id) ON DELETE CASCADE ON UPDATE CASCADE, INVERTED INDEX details (misc)) diff --git a/pkg/sql/sem/tree/testdata/pretty/import4.align-deindent.golden b/pkg/sql/sem/tree/testdata/pretty/import4.align-deindent.golden index 603e090eb70b..2a546711308c 100644 --- a/pkg/sql/sem/tree/testdata/pretty/import4.align-deindent.golden +++ b/pkg/sql/sem/tree/testdata/pretty/import4.align-deindent.golden @@ -6,7 +6,7 @@ IMPORT TABLE t ( i - INT, + INT8, s STRING ) @@ -20,7 +20,7 @@ CSV IMPORT TABLE t ( i - INT, + INT8, s STRING ) @@ -28,11 +28,11 @@ IMPORT $1 ) -14: --------------- +15: +--------------- IMPORT TABLE t ( - i INT, + i INT8, s STRING ) @@ -44,19 +44,19 @@ IMPORT ---------------- IMPORT TABLE t ( - i INT, + i INT8, s STRING ) CSV DATA ($1) -26: --------------------------- +27: +--------------------------- IMPORT - TABLE t (i INT, s STRING) + TABLE t (i INT8, s STRING) CSV DATA ($1) -46: ----------------------------------------------- -IMPORT TABLE t (i INT, s STRING) CSV DATA ($1) +47: +----------------------------------------------- +IMPORT TABLE t (i INT8, s STRING) CSV DATA ($1) diff --git a/pkg/sql/sem/tree/testdata/pretty/import4.align-only.golden b/pkg/sql/sem/tree/testdata/pretty/import4.align-only.golden index 603e090eb70b..2a546711308c 100644 --- a/pkg/sql/sem/tree/testdata/pretty/import4.align-only.golden +++ b/pkg/sql/sem/tree/testdata/pretty/import4.align-only.golden @@ -6,7 +6,7 @@ IMPORT TABLE t ( i - INT, + INT8, s STRING ) @@ -20,7 +20,7 @@ CSV IMPORT TABLE t ( i - INT, + INT8, s STRING ) @@ -28,11 +28,11 @@ IMPORT $1 ) -14: --------------- +15: +--------------- IMPORT TABLE t ( - i INT, + i INT8, s STRING ) @@ -44,19 +44,19 @@ IMPORT ---------------- IMPORT TABLE t ( - i INT, + i INT8, s STRING ) CSV DATA ($1) -26: --------------------------- +27: +--------------------------- IMPORT - TABLE t (i INT, s STRING) + TABLE t (i INT8, s STRING) CSV DATA ($1) -46: ----------------------------------------------- -IMPORT TABLE t (i INT, s STRING) CSV DATA ($1) +47: +----------------------------------------------- +IMPORT TABLE t (i INT8, s STRING) CSV DATA ($1) diff --git a/pkg/sql/sem/tree/testdata/pretty/import4.ref.golden b/pkg/sql/sem/tree/testdata/pretty/import4.ref.golden index bd3470faa9c4..c0bff1ed90eb 100644 --- a/pkg/sql/sem/tree/testdata/pretty/import4.ref.golden +++ b/pkg/sql/sem/tree/testdata/pretty/import4.ref.golden @@ -6,7 +6,7 @@ IMPORT TABLE t ( i - INT, + INT8, s STRING ) @@ -21,19 +21,19 @@ IMPORT TABLE t ( i - INT, + INT8, s STRING ) CSV DATA ($1) -14: --------------- +15: +--------------- IMPORT TABLE t ( - i INT, + i INT8, s STRING ) @@ -45,22 +45,22 @@ CSV IMPORT TABLE t ( - i INT, + i INT8, s STRING ) CSV DATA ($1) -23: ------------------------ +24: +------------------------ IMPORT TABLE - t (i INT, s STRING) + t (i INT8, s STRING) CSV DATA ($1) -46: ----------------------------------------------- -IMPORT TABLE t (i INT, s STRING) CSV DATA ($1) +47: +----------------------------------------------- +IMPORT TABLE t (i INT8, s STRING) CSV DATA ($1) diff --git a/pkg/sql/sem/tree/type_check_internal_test.go b/pkg/sql/sem/tree/type_check_internal_test.go index 5d9e191d993a..4ec8a070b5df 100644 --- a/pkg/sql/sem/tree/type_check_internal_test.go +++ b/pkg/sql/sem/tree/type_check_internal_test.go @@ -337,7 +337,7 @@ func annot(p *tree.Placeholder, typ coltypes.T) tree.Expr { } func TestProcessPlaceholderAnnotations(t *testing.T) { - intType := coltypes.Int + intType := coltypes.Int8 boolType := coltypes.Bool testData := []struct { @@ -509,7 +509,7 @@ func TestProcessPlaceholderAnnotations(t *testing.T) { } func TestProcessPlaceholderAnnotationsError(t *testing.T) { - intType := coltypes.Int + intType := coltypes.Int8 floatType := coltypes.Float8 testData := []struct { diff --git a/pkg/sql/sem/tree/type_check_test.go b/pkg/sql/sem/tree/type_check_test.go index f6639ce5cdc0..eb47b29d819a 100644 --- a/pkg/sql/sem/tree/type_check_test.go +++ b/pkg/sql/sem/tree/type_check_test.go @@ -42,48 +42,49 @@ func TestTypeCheck(t *testing.T) { {`NULL + '1h'::interval`, `NULL`}, {`NULL || 'hello'`, `NULL`}, {`NULL || 'hello'::bytes`, `NULL`}, - {`NULL::int`, `NULL::INT`}, + {`NULL::int4`, `NULL::INT4`}, + {`NULL::int8`, `NULL::INT8`}, {`INTERVAL '1s'`, `'00:00:01':::INTERVAL`}, {`(1.1::decimal)::decimal`, `1.1:::DECIMAL::DECIMAL::DECIMAL`}, {`NULL = 1`, `NULL`}, {`1 = NULL`, `NULL`}, {`true AND NULL`, `true AND NULL`}, {`NULL OR false`, `NULL OR false`}, - {`1 IN (1, 2, 3)`, `1:::INT IN (1:::INT, 2:::INT, 3:::INT)`}, - {`IF(true, 2, 3)`, `IF(true, 2:::INT, 3:::INT)`}, - {`IF(false, 2, 3)`, `IF(false, 2:::INT, 3:::INT)`}, - {`IF(NULL, 2, 3)`, `IF(NULL, 2:::INT, 3:::INT)`}, + {`1 IN (1, 2, 3)`, `1:::INT8 IN (1:::INT8, 2:::INT8, 3:::INT8)`}, + {`IF(true, 2, 3)`, `IF(true, 2:::INT8, 3:::INT8)`}, + {`IF(false, 2, 3)`, `IF(false, 2:::INT8, 3:::INT8)`}, + {`IF(NULL, 2, 3)`, `IF(NULL, 2:::INT8, 3:::INT8)`}, {`IF(NULL, 2, 3.0)`, `IF(NULL, 2:::DECIMAL, 3.0:::DECIMAL)`}, - {`IF(true, (1, 2), (1, 3))`, `IF(true, (1:::INT, 2:::INT), (1:::INT, 3:::INT))`}, + {`IF(true, (1, 2), (1, 3))`, `IF(true, (1:::INT8, 2:::INT8), (1:::INT8, 3:::INT8))`}, {`IFERROR(1, 1.2, '')`, `IFERROR(1:::DECIMAL, 1.2:::DECIMAL, '':::STRING)`}, - {`IFERROR(NULL, 3, '')`, `IFERROR(NULL, 3:::INT, '':::STRING)`}, - {`ISERROR(123)`, `ISERROR(123:::INT)`}, + {`IFERROR(NULL, 3, '')`, `IFERROR(NULL, 3:::INT8, '':::STRING)`}, + {`ISERROR(123)`, `ISERROR(123:::INT8)`}, {`ISERROR(NULL)`, `ISERROR(NULL)`}, - {`IFNULL(1, 2)`, `IFNULL(1:::INT, 2:::INT)`}, + {`IFNULL(1, 2)`, `IFNULL(1:::INT8, 2:::INT8)`}, {`IFNULL(1, 2.0)`, `IFNULL(1:::DECIMAL, 2.0:::DECIMAL)`}, - {`IFNULL(NULL, 2)`, `IFNULL(NULL, 2:::INT)`}, - {`IFNULL(2, NULL)`, `IFNULL(2:::INT, NULL)`}, - {`IFNULL((1, 2), (1, 3))`, `IFNULL((1:::INT, 2:::INT), (1:::INT, 3:::INT))`}, - {`NULLIF(1, 2)`, `NULLIF(1:::INT, 2:::INT)`}, + {`IFNULL(NULL, 2)`, `IFNULL(NULL, 2:::INT8)`}, + {`IFNULL(2, NULL)`, `IFNULL(2:::INT8, NULL)`}, + {`IFNULL((1, 2), (1, 3))`, `IFNULL((1:::INT8, 2:::INT8), (1:::INT8, 3:::INT8))`}, + {`NULLIF(1, 2)`, `NULLIF(1:::INT8, 2:::INT8)`}, {`NULLIF(1, 2.0)`, `NULLIF(1:::DECIMAL, 2.0:::DECIMAL)`}, - {`NULLIF(NULL, 2)`, `NULLIF(NULL, 2:::INT)`}, - {`NULLIF(2, NULL)`, `NULLIF(2:::INT, NULL)`}, - {`NULLIF((1, 2), (1, 3))`, `NULLIF((1:::INT, 2:::INT), (1:::INT, 3:::INT))`}, - {`COALESCE(1, 2, 3, 4, 5)`, `COALESCE(1:::INT, 2:::INT, 3:::INT, 4:::INT, 5:::INT)`}, + {`NULLIF(NULL, 2)`, `NULLIF(NULL, 2:::INT8)`}, + {`NULLIF(2, NULL)`, `NULLIF(2:::INT8, NULL)`}, + {`NULLIF((1, 2), (1, 3))`, `NULLIF((1:::INT8, 2:::INT8), (1:::INT8, 3:::INT8))`}, + {`COALESCE(1, 2, 3, 4, 5)`, `COALESCE(1:::INT8, 2:::INT8, 3:::INT8, 4:::INT8, 5:::INT8)`}, {`COALESCE(1, 2.0)`, `COALESCE(1:::DECIMAL, 2.0:::DECIMAL)`}, - {`COALESCE(NULL, 2)`, `COALESCE(NULL, 2:::INT)`}, - {`COALESCE(2, NULL)`, `COALESCE(2:::INT, NULL)`}, - {`COALESCE((1, 2), (1, 3))`, `COALESCE((1:::INT, 2:::INT), (1:::INT, 3:::INT))`}, + {`COALESCE(NULL, 2)`, `COALESCE(NULL, 2:::INT8)`}, + {`COALESCE(2, NULL)`, `COALESCE(2:::INT8, NULL)`}, + {`COALESCE((1, 2), (1, 3))`, `COALESCE((1:::INT8, 2:::INT8), (1:::INT8, 3:::INT8))`}, {`true IS NULL`, `true IS NULL`}, {`true IS NOT NULL`, `true IS NOT NULL`}, {`true IS TRUE`, `true IS true`}, {`true IS NOT TRUE`, `true IS NOT true`}, {`true IS FALSE`, `true IS false`}, {`true IS NOT FALSE`, `true IS NOT false`}, - {`CASE 1 WHEN 1 THEN (1, 2) ELSE (1, 3) END`, `CASE 1:::INT WHEN 1:::INT THEN (1:::INT, 2:::INT) ELSE (1:::INT, 3:::INT) END`}, - {`1 BETWEEN 2 AND 3`, `1:::INT BETWEEN 2:::INT AND 3:::INT`}, - {`4 BETWEEN 2.4 AND 5.5::float`, `4:::INT BETWEEN 2.4:::DECIMAL AND 5.5:::FLOAT8::FLOAT8`}, - {`count(3)`, `count(3:::INT)`}, + {`CASE 1 WHEN 1 THEN (1, 2) ELSE (1, 3) END`, `CASE 1:::INT8 WHEN 1:::INT8 THEN (1:::INT8, 2:::INT8) ELSE (1:::INT8, 3:::INT8) END`}, + {`1 BETWEEN 2 AND 3`, `1:::INT8 BETWEEN 2:::INT8 AND 3:::INT8`}, + {`4 BETWEEN 2.4 AND 5.5::float`, `4:::INT8 BETWEEN 2.4:::DECIMAL AND 5.5:::FLOAT8::FLOAT8`}, + {`count(3)`, `count(3:::INT8)`}, {`ARRAY['a', 'b', 'c']`, `ARRAY['a':::STRING, 'b':::STRING, 'c':::STRING]`}, {`ARRAY[1.5, 2.5, 3.5]`, `ARRAY[1.5:::DECIMAL, 2.5:::DECIMAL, 3.5:::DECIMAL]`}, {`ARRAY[NULL]`, `ARRAY[NULL]`}, @@ -100,61 +101,61 @@ func TestTypeCheck(t *testing.T) { {`INTERVAL '1'`, `'00:00:01':::INTERVAL`}, {`DECIMAL '1.0'`, `1.0:::DECIMAL::DECIMAL`}, - {`1 + 2`, `3:::INT`}, + {`1 + 2`, `3:::INT8`}, {`1:::decimal + 2`, `1:::DECIMAL + 2:::DECIMAL`}, {`1:::float + 2`, `1.0:::FLOAT8 + 2.0:::FLOAT8`}, - {`INTERVAL '1.5s' * 2`, `'00:00:01.5':::INTERVAL * 2:::INT`}, - {`2 * INTERVAL '1.5s'`, `2:::INT * '00:00:01.5':::INTERVAL`}, + {`INTERVAL '1.5s' * 2`, `'00:00:01.5':::INTERVAL * 2:::INT8`}, + {`2 * INTERVAL '1.5s'`, `2:::INT8 * '00:00:01.5':::INTERVAL`}, - {`1 + $1`, `1:::INT + $1:::INT`}, + {`1 + $1`, `1:::INT8 + $1:::INT8`}, {`1:::DECIMAL + $1`, `1:::DECIMAL + $1:::DECIMAL`}, - {`$1:::INT`, `$1:::INT`}, + {`$1:::INT8`, `$1:::INT8`}, // Tuples with labels - {`(ROW (1) AS a)`, `((1:::INT,) AS a)`}, - {`(ROW(1:::INT) AS a)`, `((1:::INT,) AS a)`}, - {`((1,2) AS a,b)`, `((1:::INT, 2:::INT) AS a, b)`}, - {`((1:::INT, 2:::INT) AS a, b)`, `((1:::INT, 2:::INT) AS a, b)`}, - {`(ROW (1,2) AS a,b)`, `((1:::INT, 2:::INT) AS a, b)`}, - {`(ROW(1:::INT, 2:::INT) AS a, b)`, `((1:::INT, 2:::INT) AS a, b)`}, + {`(ROW (1) AS a)`, `((1:::INT8,) AS a)`}, + {`(ROW(1:::INT8) AS a)`, `((1:::INT8,) AS a)`}, + {`((1,2) AS a,b)`, `((1:::INT8, 2:::INT8) AS a, b)`}, + {`((1:::INT8, 2:::INT8) AS a, b)`, `((1:::INT8, 2:::INT8) AS a, b)`}, + {`(ROW (1,2) AS a,b)`, `((1:::INT8, 2:::INT8) AS a, b)`}, + {`(ROW(1:::INT8, 2:::INT8) AS a, b)`, `((1:::INT8, 2:::INT8) AS a, b)`}, { `((1,2,3) AS "One","Two","Three")`, - `((1:::INT, 2:::INT, 3:::INT) AS "One", "Two", "Three")`, + `((1:::INT8, 2:::INT8, 3:::INT8) AS "One", "Two", "Three")`, }, { - `((1:::INT, 2:::INT, 3:::INT) AS "One", "Two", "Three")`, - `((1:::INT, 2:::INT, 3:::INT) AS "One", "Two", "Three")`, + `((1:::INT8, 2:::INT8, 3:::INT8) AS "One", "Two", "Three")`, + `((1:::INT8, 2:::INT8, 3:::INT8) AS "One", "Two", "Three")`, }, { `(ROW (1,2,3) AS "One",Two,"Three")`, - `((1:::INT, 2:::INT, 3:::INT) AS "One", two, "Three")`, + `((1:::INT8, 2:::INT8, 3:::INT8) AS "One", two, "Three")`, }, { - `(ROW(1:::INT, 2:::INT, 3:::INT) AS "One", two, "Three")`, - `((1:::INT, 2:::INT, 3:::INT) AS "One", two, "Three")`, + `(ROW(1:::INT8, 2:::INT8, 3:::INT8) AS "One", two, "Three")`, + `((1:::INT8, 2:::INT8, 3:::INT8) AS "One", two, "Three")`, }, // And tuples without labels still work as advertized - {`(ROW (1))`, `(1:::INT,)`}, - {`ROW(1:::INT)`, `(1:::INT,)`}, - {`((1,2))`, `(1:::INT, 2:::INT)`}, - {`(1:::INT, 2:::INT)`, `(1:::INT, 2:::INT)`}, - {`(ROW (1,2))`, `(1:::INT, 2:::INT)`}, - {`ROW(1:::INT, 2:::INT)`, `(1:::INT, 2:::INT)`}, + {`(ROW (1))`, `(1:::INT8,)`}, + {`ROW(1:::INT8)`, `(1:::INT8,)`}, + {`((1,2))`, `(1:::INT8, 2:::INT8)`}, + {`(1:::INT8, 2:::INT8)`, `(1:::INT8, 2:::INT8)`}, + {`(ROW (1,2))`, `(1:::INT8, 2:::INT8)`}, + {`ROW(1:::INT8, 2:::INT8)`, `(1:::INT8, 2:::INT8)`}, - {`((ROW (1) AS a)).a`, `1:::INT`}, + {`((ROW (1) AS a)).a`, `1:::INT8`}, {`((('1', 2) AS a, b)).a`, `'1':::STRING`}, - {`((('1', 2) AS a, b)).b`, `2:::INT`}, + {`((('1', 2) AS a, b)).b`, `2:::INT8`}, {`(pg_get_keywords()).word`, `(pg_get_keywords()).word`}, { `(information_schema._pg_expandarray(ARRAY[1,3])).x`, - `(information_schema._pg_expandarray(ARRAY[1:::INT, 3:::INT])).x`, + `(information_schema._pg_expandarray(ARRAY[1:::INT8, 3:::INT8])).x`, }, { - `(information_schema._pg_expandarray(ARRAY[1:::INT, 3:::INT])).*`, - `information_schema._pg_expandarray(ARRAY[1:::INT, 3:::INT])`, + `(information_schema._pg_expandarray(ARRAY[1:::INT8, 3:::INT8])).*`, + `information_schema._pg_expandarray(ARRAY[1:::INT8, 3:::INT8])`, }, - {`((ROW (1) AS a)).*`, `((1:::INT,) AS a)`}, - {`((('1'||'', 1+1) AS a, b)).*`, `(('1':::STRING, 2:::INT) AS a, b)`}, + {`((ROW (1) AS a)).*`, `((1:::INT8,) AS a)`}, + {`((('1'||'', 1+1) AS a, b)).*`, `(('1':::STRING, 2:::INT8) AS a, b)`}, // These outputs, while bizarre looking, are correct and expected. The // type annotation is caused by the call to tree.Serialize, which formats the @@ -226,7 +227,7 @@ func TestTypeCheckError(t *testing.T) { {`COALESCE(1, 2, 3, 4, 'a')`, `incompatible COALESCE expressions: could not parse "a" as type int`}, {`ARRAY[]`, `cannot determine type of empty array`}, {`ANNOTATE_TYPE('a', int)`, `could not parse "a" as type int`}, - {`ANNOTATE_TYPE(ANNOTATE_TYPE(1, int), decimal)`, `incompatible type annotation for ANNOTATE_TYPE(1, INT) as decimal, found type: int`}, + {`ANNOTATE_TYPE(ANNOTATE_TYPE(1, int8), decimal)`, `incompatible type annotation for ANNOTATE_TYPE(1, INT8) as decimal, found type: int`}, {`3:::int[]`, `incompatible type annotation for 3 as int[], found type: int`}, {`B'1001'::decimal`, `invalid cast: varbit -> DECIMAL`}, {`101.3::bit`, `invalid cast: decimal -> BIT`}, @@ -260,12 +261,14 @@ func TestTypeCheckError(t *testing.T) { }, } for _, d := range testData { - expr, err := parser.ParseExpr(d.expr) - if err != nil { - t.Fatalf("%s: %v", d.expr, err) - } - if _, err := tree.TypeCheck(expr, nil, types.Any); !testutils.IsError(err, regexp.QuoteMeta(d.expected)) { - t.Errorf("%s: expected %s, but found %v", d.expr, d.expected, err) - } + t.Run(d.expr, func(t *testing.T) { + expr, err := parser.ParseExpr(d.expr) + if err != nil { + t.Fatalf("%s: %v", d.expr, err) + } + if _, err := tree.TypeCheck(expr, nil, types.Any); !testutils.IsError(err, regexp.QuoteMeta(d.expected)) { + t.Errorf("%s: expected %s, but found %v", d.expr, d.expected, err) + } + }) } } diff --git a/pkg/sql/serial.go b/pkg/sql/serial.go index f9ee3cb667e4..e96696335334 100644 --- a/pkg/sql/serial.go +++ b/pkg/sql/serial.go @@ -73,9 +73,10 @@ func (p *planner) processSerialInColumnDef( // no choice but to use the full-width integer type, no matter // which serial size was requested, otherwise the values will not fit. // - // TODO(knz): change this to coltypes.Int8 when #28690 moves - // forward. - newSpec.Type = coltypes.Int + // TODO(bob): Follow up with https://github.com/cockroachdb/cockroach/issues/32534 + // when the default is inverted to determine if we should also + // switch this behavior around. + newSpec.Type = coltypes.Int8 case sessiondata.SerialUsesSQLSequences: // With real sequences we can use exactly the requested type. @@ -164,7 +165,7 @@ func SimplifySerialInColumnDefWithRowID( // We're not constructing a sequence for this SERIAL column. // Use the "old school" CockroachDB default. - d.Type = coltypes.Int + d.Type = coltypes.Int8 d.DefaultExpr.Expr = uniqueRowIDExpr return nil diff --git a/pkg/sql/show_create_test.go b/pkg/sql/show_create_test.go index e18a9390e6a9..1b3ad8f308d4 100644 --- a/pkg/sql/show_create_test.go +++ b/pkg/sql/show_create_test.go @@ -32,7 +32,7 @@ func TestStandAloneShowCreateTable(t *testing.T) { defer leaktest.AfterTest(t)() want := `CREATE TABLE jobs ( - id INT NOT NULL DEFAULT unique_rowid(), + id INT8 NOT NULL DEFAULT unique_rowid(), status STRING NOT NULL, created TIMESTAMP NOT NULL DEFAULT now():::TIMESTAMP, payload BYTES NOT NULL, diff --git a/pkg/sql/show_test.go b/pkg/sql/show_test.go index 1cea7c4eba51..5c84abec8d55 100644 --- a/pkg/sql/show_test.go +++ b/pkg/sql/show_test.go @@ -54,9 +54,9 @@ func TestShowCreateTable(t *testing.T) { CREATE DATABASE d; SET DATABASE = d; CREATE TABLE items ( - a int, - b int, - c int unique, + a int8, + b int8, + c int8 unique, primary key (a, b) ); CREATE DATABASE o; @@ -71,7 +71,7 @@ func TestShowCreateTable(t *testing.T) { }{ { stmt: `CREATE TABLE %s ( - i INT, + i INT8, s STRING NULL, v FLOAT NOT NULL, t TIMESTAMP DEFAULT now():::TIMESTAMP, @@ -80,7 +80,7 @@ func TestShowCreateTable(t *testing.T) { FAMILY fam_1_s (s) )`, expect: `CREATE TABLE %s ( - i INT NULL, + i INT8 NULL, s STRING NULL, v FLOAT8 NOT NULL, t TIMESTAMP NULL DEFAULT now():::TIMESTAMP, @@ -91,7 +91,7 @@ func TestShowCreateTable(t *testing.T) { }, { stmt: `CREATE TABLE %s ( - i INT CHECK (i > 0), + i INT8 CHECK (i > 0), s STRING NULL, v FLOAT NOT NULL, t TIMESTAMP DEFAULT now():::TIMESTAMP, @@ -99,7 +99,7 @@ func TestShowCreateTable(t *testing.T) { FAMILY fam_1_s (s) )`, expect: `CREATE TABLE %s ( - i INT NULL, + i INT8 NULL, s STRING NULL, v FLOAT8 NOT NULL, t TIMESTAMP NULL DEFAULT now():::TIMESTAMP, @@ -110,14 +110,14 @@ func TestShowCreateTable(t *testing.T) { }, { stmt: `CREATE TABLE %s ( - i INT NULL, + i INT8 NULL, s STRING NULL, CONSTRAINT ck CHECK (i > 0), FAMILY "primary" (i, rowid), FAMILY fam_1_s (s) )`, expect: `CREATE TABLE %s ( - i INT NULL, + i INT8 NULL, s STRING NULL, FAMILY "primary" (i, rowid), FAMILY fam_1_s (s), @@ -126,24 +126,24 @@ func TestShowCreateTable(t *testing.T) { }, { stmt: `CREATE TABLE %s ( - i INT PRIMARY KEY + i INT8 PRIMARY KEY )`, expect: `CREATE TABLE %s ( - i INT NOT NULL, + i INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (i ASC), FAMILY "primary" (i) )`, }, { stmt: ` - CREATE TABLE %s (i INT, f FLOAT, s STRING, d DATE, + CREATE TABLE %s (i INT8, f FLOAT, s STRING, d DATE, FAMILY "primary" (i, f, d, rowid), FAMILY fam_1_s (s)); CREATE INDEX idx_if on %[1]s (f, i) STORING (s, d); CREATE UNIQUE INDEX on %[1]s (d); `, expect: `CREATE TABLE %s ( - i INT NULL, + i INT8 NULL, f FLOAT8 NULL, s STRING NULL, d DATE NULL, @@ -155,20 +155,20 @@ func TestShowCreateTable(t *testing.T) { }, { stmt: `CREATE TABLE %s ( - "te""st" INT NOT NULL, + "te""st" INT8 NOT NULL, CONSTRAINT "pri""mary" PRIMARY KEY ("te""st" ASC), FAMILY "primary" ("te""st") )`, }, { stmt: `CREATE TABLE %s ( - a int, - b int, + a int8, + b int8, index c(a asc, b desc) )`, expect: `CREATE TABLE %s ( - a INT NULL, - b INT NULL, + a INT8 NULL, + b INT8 NULL, INDEX c (a ASC, b DESC), FAMILY "primary" (a, b, rowid) )`, @@ -177,15 +177,15 @@ func TestShowCreateTable(t *testing.T) { // have their db name omitted. { stmt: `CREATE TABLE %s ( - i int, - j int, + i int8, + j int8, FOREIGN KEY (i, j) REFERENCES items (a, b), k int REFERENCES items (c) )`, expect: `CREATE TABLE %s ( - i INT NULL, - j INT NULL, - k INT NULL, + i INT8 NULL, + j INT8 NULL, + k INT8 NULL, CONSTRAINT fk_i_ref_items FOREIGN KEY (i, j) REFERENCES items (a, b), INDEX t7_auto_index_fk_i_ref_items (i ASC, j ASC), CONSTRAINT fk_k_ref_items FOREIGN KEY (k) REFERENCES items (c), @@ -197,11 +197,11 @@ func TestShowCreateTable(t *testing.T) { // have their db name prefixed. { stmt: `CREATE TABLE %s ( - x INT, + x INT8, CONSTRAINT fk_ref FOREIGN KEY (x) REFERENCES o.foo (x) )`, expect: `CREATE TABLE %s ( - x INT NULL, + x INT8 NULL, CONSTRAINT fk_ref FOREIGN KEY (x) REFERENCES o.public.foo (x), INDEX t8_auto_index_fk_ref (x ASC), FAMILY "primary" (x, rowid) @@ -211,15 +211,15 @@ func TestShowCreateTable(t *testing.T) { // are pretty-printed properly. Regression test for #32529. { stmt: `CREATE TABLE %s ( - i int DEFAULT 123, - j int DEFAULT 123, + i int8 DEFAULT 123, + j int8 DEFAULT 123, FOREIGN KEY (i, j) REFERENCES items (a, b) ON DELETE SET DEFAULT, - k int REFERENCES items (c) ON DELETE SET NULL + k int8 REFERENCES items (c) ON DELETE SET NULL )`, expect: `CREATE TABLE %s ( - i INT NULL DEFAULT 123:::INT, - j INT NULL DEFAULT 123:::INT, - k INT NULL, + i INT8 NULL DEFAULT 123:::INT8, + j INT8 NULL DEFAULT 123:::INT8, + k INT8 NULL, CONSTRAINT fk_i_ref_items FOREIGN KEY (i, j) REFERENCES items (a, b) ON DELETE SET DEFAULT, INDEX t9_auto_index_fk_i_ref_items (i ASC, j ASC), CONSTRAINT fk_k_ref_items FOREIGN KEY (k) REFERENCES items (c) ON DELETE SET NULL, @@ -231,13 +231,13 @@ func TestShowCreateTable(t *testing.T) { // have their db name omitted. { stmt: `CREATE TABLE %s ( - a INT, - b INT, + a INT8, + b INT8, PRIMARY KEY (a, b) ) INTERLEAVE IN PARENT items (a, b)`, expect: `CREATE TABLE %s ( - a INT NOT NULL, - b INT NOT NULL, + a INT8 NOT NULL, + b INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (a ASC, b ASC), FAMILY "primary" (a, b) ) INTERLEAVE IN PARENT items (a, b)`, @@ -246,10 +246,10 @@ func TestShowCreateTable(t *testing.T) { // database are prefixed by their db name. { stmt: `CREATE TABLE %s ( - x INT PRIMARY KEY + x INT8 PRIMARY KEY ) INTERLEAVE IN PARENT o.foo (x)`, expect: `CREATE TABLE %s ( - x INT NOT NULL, + x INT8 NOT NULL, CONSTRAINT "primary" PRIMARY KEY (x ASC), FAMILY "primary" (x) ) INTERLEAVE IN PARENT o.public.foo (x)`, @@ -340,8 +340,8 @@ func TestShowCreateView(t *testing.T) { `CREATE VIEW %s (count) AS SELECT count(*) FROM d.public.t`, }, { - `CREATE VIEW %s AS SELECT s, count(*) FROM t GROUP BY s HAVING count(*) > 3:::INT`, - `CREATE VIEW %s (s, count) AS SELECT s, count(*) FROM d.public.t GROUP BY s HAVING count(*) > 3:::INT`, + `CREATE VIEW %s AS SELECT s, count(*) FROM t GROUP BY s HAVING count(*) > 3:::INT8`, + `CREATE VIEW %s (s, count) AS SELECT s, count(*) FROM d.public.t GROUP BY s HAVING count(*) > 3:::INT8`, }, { `CREATE VIEW %s (a, b, c, d) AS SELECT i, s, v, t FROM t`, diff --git a/pkg/sql/sqlbase/column_type_properties.go b/pkg/sql/sqlbase/column_type_properties.go index ddf727191854..a0914c03f438 100644 --- a/pkg/sql/sqlbase/column_type_properties.go +++ b/pkg/sql/sqlbase/column_type_properties.go @@ -122,7 +122,13 @@ func PopulateTypeAttrs(base ColumnType, typ coltypes.T) (ColumnType, error) { } case *coltypes.TInt: - base.Width = int32(t.Width) + // Ensure that "naked" INT types are promoted to INT8 to preserve + // compatibility with previous versions. + if t.Width == 0 { + base.Width = 64 + } else { + base.Width = int32(t.Width) + } // For 2.1 nodes only Width is sufficient, but we also populate // VisibleType for compatibility with pre-2.1 nodes. diff --git a/pkg/sql/sqlbase/system.go b/pkg/sql/sqlbase/system.go index f3585e0ed370..e72c44fd8552 100644 --- a/pkg/sql/sqlbase/system.go +++ b/pkg/sql/sqlbase/system.go @@ -63,15 +63,15 @@ func SplitAtIDHook(id uint32, cfg *config.SystemConfig) bool { const ( NamespaceTableSchema = ` CREATE TABLE system.namespace ( - "parentID" INT, + "parentID" INT8, name STRING, - id INT, + id INT8, PRIMARY KEY ("parentID", name) );` DescriptorTableSchema = ` CREATE TABLE system.descriptor ( - id INT PRIMARY KEY, + id INT8 PRIMARY KEY, descriptor BYTES );` @@ -85,7 +85,7 @@ CREATE TABLE system.users ( // Zone settings per DB/Table. ZonesTableSchema = ` CREATE TABLE system.zones ( - id INT PRIMARY KEY, + id INT8 PRIMARY KEY, config BYTES );` @@ -103,9 +103,9 @@ CREATE TABLE system.settings ( const ( LeaseTableSchema = ` CREATE TABLE system.lease ( - "descID" INT, - version INT, - "nodeID" INT, + "descID" INT8, + version INT8, + "nodeID" INT8, expiration TIMESTAMP, PRIMARY KEY ("descID", version, expiration, "nodeID") );` @@ -114,8 +114,8 @@ CREATE TABLE system.lease ( CREATE TABLE system.eventlog ( timestamp TIMESTAMP NOT NULL, "eventType" STRING NOT NULL, - "targetID" INT NOT NULL, - "reportingID" INT NOT NULL, + "targetID" INT8 NOT NULL, + "reportingID" INT8 NOT NULL, info STRING, "uniqueID" BYTES DEFAULT uuid_v4(), PRIMARY KEY (timestamp, "uniqueID") @@ -126,12 +126,12 @@ CREATE TABLE system.eventlog ( RangeEventTableSchema = ` CREATE TABLE system.rangelog ( timestamp TIMESTAMP NOT NULL, - "rangeID" INT NOT NULL, - "storeID" INT NOT NULL, + "rangeID" INT8 NOT NULL, + "storeID" INT8 NOT NULL, "eventType" STRING NOT NULL, - "otherRangeID" INT, + "otherRangeID" INT8, info STRING, - "uniqueID" INT DEFAULT unique_rowid(), + "uniqueID" INT8 DEFAULT unique_rowid(), PRIMARY KEY (timestamp, "uniqueID") );` @@ -144,7 +144,7 @@ CREATE TABLE system.ui ( JobsTableSchema = ` CREATE TABLE system.jobs ( - id INT DEFAULT unique_rowid() PRIMARY KEY, + id INT8 DEFAULT unique_rowid() PRIMARY KEY, status STRING NOT NULL, created TIMESTAMP NOT NULL DEFAULT now(), payload BYTES NOT NULL, @@ -158,7 +158,7 @@ CREATE TABLE system.jobs ( // Design outlined in /docs/RFCS/web_session_login.rfc WebSessionsTableSchema = ` CREATE TABLE system.web_sessions ( - id INT NOT NULL DEFAULT unique_rowid() PRIMARY KEY, + id INT8 NOT NULL DEFAULT unique_rowid() PRIMARY KEY, "hashedSecret" BYTES NOT NULL, username STRING NOT NULL, "createdAt" TIMESTAMP NOT NULL DEFAULT now(), @@ -179,14 +179,14 @@ CREATE TABLE system.web_sessions ( // Design outlined in /docs/RFCS/20170908_sql_optimizer_statistics.md TableStatisticsTableSchema = ` CREATE TABLE system.table_statistics ( - "tableID" INT NOT NULL, - "statisticID" INT NOT NULL DEFAULT unique_rowid(), + "tableID" INT8 NOT NULL, + "statisticID" INT8 NOT NULL DEFAULT unique_rowid(), name STRING, - "columnIDs" INT[] NOT NULL, + "columnIDs" INT8[] NOT NULL, "createdAt" TIMESTAMP NOT NULL DEFAULT now(), - "rowCount" INT NOT NULL, - "distinctCount" INT NOT NULL, - "nullCount" INT NOT NULL, + "rowCount" INT8 NOT NULL, + "distinctCount" INT8 NOT NULL, + "nullCount" INT8 NOT NULL, histogram BYTES, PRIMARY KEY ("tableID", "statisticID"), FAMILY ("tableID", "statisticID", name, "columnIDs", "createdAt", "rowCount", "distinctCount", "nullCount", histogram) @@ -269,11 +269,15 @@ var SystemAllowedPrivileges = map[ID]privilege.List{ // Helpers used to make some of the TableDescriptor literals below more concise. var ( colTypeBool = ColumnType{SemanticType: ColumnType_BOOL} - colTypeInt = ColumnType{SemanticType: ColumnType_INT} + colTypeInt = ColumnType{SemanticType: ColumnType_INT, VisibleType: ColumnType_BIGINT, Width: 64} colTypeString = ColumnType{SemanticType: ColumnType_STRING} colTypeBytes = ColumnType{SemanticType: ColumnType_BYTES} colTypeTimestamp = ColumnType{SemanticType: ColumnType_TIMESTAMP} - colTypeIntArray = ColumnType{SemanticType: ColumnType_ARRAY, ArrayContents: &colTypeInt.SemanticType, + colTypeIntArray = ColumnType{ + SemanticType: ColumnType_ARRAY, + ArrayContents: &colTypeInt.SemanticType, + VisibleType: colTypeInt.VisibleType, + Width: colTypeInt.Width, ArrayDimensions: []int32{-1}} singleASC = []IndexDescriptor_Direction{IndexDescriptor_ASC} singleID1 = []ColumnID{1} diff --git a/pkg/sql/table_test.go b/pkg/sql/table_test.go index 0d36a4f6b8fd..4e09f37ad8bd 100644 --- a/pkg/sql/table_test.go +++ b/pkg/sql/table_test.go @@ -60,7 +60,7 @@ func TestMakeTableDescColumns(t *testing.T) { }, { "INT", - sqlbase.ColumnType{SemanticType: sqlbase.ColumnType_INT}, + sqlbase.ColumnType{SemanticType: sqlbase.ColumnType_INT, VisibleType: sqlbase.ColumnType_BIGINT, Width: 64}, true, }, { @@ -160,12 +160,12 @@ func TestMakeTableDescColumns(t *testing.T) { }, { "INT NOT NULL", - sqlbase.ColumnType{SemanticType: sqlbase.ColumnType_INT}, + sqlbase.ColumnType{SemanticType: sqlbase.ColumnType_INT, VisibleType: sqlbase.ColumnType_BIGINT, Width: 64}, false, }, { "INT NULL", - sqlbase.ColumnType{SemanticType: sqlbase.ColumnType_INT}, + sqlbase.ColumnType{SemanticType: sqlbase.ColumnType_INT, VisibleType: sqlbase.ColumnType_BIGINT, Width: 64}, true, }, }