Skip to content

resolve user defined type in drop routine#2490

Merged
jennifersp merged 3 commits into
mainfrom
jennifer/drop
Mar 24, 2026
Merged

resolve user defined type in drop routine#2490
jennifersp merged 3 commits into
mainfrom
jennifer/drop

Conversation

@jennifersp

Copy link
Copy Markdown
Contributor

No description provided.

@github-actions

github-actions Bot commented Mar 24, 2026

Copy link
Copy Markdown
Contributor
Main PR
covering_index_scan_postgres 1088.61/s 1062.01/s -2.5%
index_join_postgres 148.86/s 148.53/s -0.3%
index_join_scan_postgres 187.39/s 187.37/s -0.1%
index_scan_postgres 11.40/s 11.22/s -1.6%
oltp_point_select 2326.63/s 2358.76/s +1.3%
oltp_read_only 1737.97/s 1762.21/s +1.3%
select_random_points 116.57/s 119.38/s +2.4%
select_random_ranges 807.58/s 816.07/s +1.0%
table_scan_postgres 11.04/s 11.17/s +1.1%
types_table_scan_postgres 5.00/s 4.99/s -0.3%

@jennifersp jennifersp requested a review from Hydrocharged March 24, 2026 04:39
@github-actions

github-actions Bot commented Mar 24, 2026

Copy link
Copy Markdown
Contributor
Main PR
Total 42090 42090
Successful 17821 17780
Failures 24269 24310
Partial Successes1 5572 5562
Main PR
Successful 42.3402% 42.2428%
Failures 57.6598% 57.7572%

${\color{red}Regressions (49)}$

rowtypes

QUERY:          create temp table quadtable(f1 int, q quad);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          create temp table people (fn fullname, bd date);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          create temp table pp (f1 text);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          insert into pp values (repeat('abcdefghijkl', 100000));
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          select ROW(1,2) < ROW(1,3) as true;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2) < ROW(1,NULL) as null;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2,3) < ROW(1,3,NULL) as true;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(11,'ABC') < ROW(11,'DEF') as true;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(12,'ABC') > ROW(11,'DEF') as true;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2,3) < ROW(1,NULL,4) as null;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2,3) <> ROW(1,NULL,4) as true;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2) = ROW(1,2::int8);
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2) in (ROW(3,4), ROW(1,2));
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW(1,2) in (ROW(3,4), ROW(1,2::int8));
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select thousand, tenthous from tenk1
where (thousand, tenthous) >= (997, 5000)
order by thousand, tenthous;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          create temp table test_table (a text, b text);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          insert into test_table values ('a', 'b');
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          insert into test_table select 'a', null from generate_series(1,1000);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          insert into test_table values ('b', 'a');
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          create index on test_table (a,b);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          set enable_sort = off;
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          select a,b from test_table where (a,b) > ('a','a') order by a,b;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          reset enable_sort;
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          select ROW();
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select ROW() IS NULL;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select array[ row(1,2), row(3,4), row(5,6) ];
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select row(1,1.1) = any (array[ row(7,7.7), row(1,1.1), row(0,0.0) ]);
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select row(1,1.1) = any (array[ row(7,7.7), row(1,1.0), row(0,0.0) ]);
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          create type testtype2 as (a smallint, b bool);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          CREATE TABLE price (
    id SERIAL PRIMARY KEY,
    active BOOLEAN NOT NULL,
    price NUMERIC
);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          CREATE TYPE price_input AS (
    id INTEGER,
    price NUMERIC
);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          CREATE TYPE price_key AS (
    id INTEGER
);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          insert into price values (1,false,42), (10,false,100), (11,true,17.99);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          rollback;
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          create temp table compos (f1 int, f2 text);
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference
QUERY:          select cast (fullname as text) from fullname;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select fullname::text from fullname;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select cast (row('Jim', 'Beam') as text);
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          select (row('Jim', 'Beam'))::text;
RECEIVED ERROR: DoltgresHandler caught panic: runtime error: invalid memory address or nil pointer dereference (errno 1105) (sqlstate HY000)
QUERY:          insert into fullname values ('Joe', 'Blow');
RECEIVED ERROR: runtime error: invalid memory address or nil pointer dereference

${\color{lightgreen}Progressions (11)}$

drop_if_exists

QUERY: DROP FUNCTION IF EXISTS test_function_exists(int, text, int[]);

plpgsql

QUERY: drop function f1(x anyarray);
QUERY: create function f1(x anyarray) returns anyarray as $$
begin
  return x;
end$$ language plpgsql;
QUERY: drop function f1(x anyarray);
QUERY: drop function vari(int[]);
QUERY: drop function pleast(numeric[]);

polymorphism

QUERY: drop function polyf(x anyarray);
QUERY: create function polyf(x anyarray) returns anyarray as $$
  select x
$$ language sql;
QUERY: drop function polyf(x anyarray);
QUERY: drop function concat(text, anyarray);

rowtypes

QUERY: select ROW() = ROW();

Footnotes

  1. These are tests that we're marking as Successful, however they do not match the expected output in some way. This is due to small differences, such as different wording on the error messages, or the column names being incorrect while the data itself is correct.

@Hydrocharged Hydrocharged left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Comment thread server/analyzer/resolve_type.go
@jennifersp jennifersp enabled auto-merge (squash) March 24, 2026 16:05
@jennifersp jennifersp merged commit 3d356c2 into main Mar 24, 2026
17 checks passed
@jennifersp jennifersp deleted the jennifer/drop branch March 24, 2026 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants