Skip to content

TYPE OF COLUMN dependency not tracked in package header and external routines #7220

@asfernandes

Description

@asfernandes
create domain domain1 integer;

create table table1 (n integer, c varchar(31));

set term !;

create package pkg
as
begin
    procedure proc1(i type of column table1.n);
    procedure proc2(i domain1);
end!

create function wait_event (event_name type of column table1.c)
    returns integer not null
    external name 'udrcpp_example!wait_event' engine udr!

set term ;!

commit;
select * from rdb$dependencies;  -- nothing

drop table table1;  -- incorrectly do not fail
drop domain domain1;  -- correctly fail
-- Statement failed, SQLSTATE = 42000
-- unsuccessful metadata update
-- -DROP DOMAIN DOMAIN1 failed
-- -Domain DOMAIN1 is used in procedure PKG.PROC2 (parameter name I) and cannot be dropped

Even domain1 being not allowed to be dropped, different than a standard procedure, it's dependency is not tracked in rdb$dependencies.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions