BUG #19431: limitation of the data type jsonb equals 8Kb - Mailing list pgsql-bugs

From PG Bug reporting form
Subject BUG #19431: limitation of the data type jsonb equals 8Kb
Date
Msg-id 19431-0a33306c00df939f@postgresql.org
Whole thread Raw
Responses Re: BUG #19431: limitation of the data type jsonb equals 8Kb
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      19431
Logged by:          Alex Perov
Email address:      perovaa@sbermarketing.ru
PostgreSQL version: 18.3
Operating system:   Windows 10
Description:

Hello.
I have a type:
CREATE TYPE public.t_dict AS
(
        id bigint,
        name text,
        gid uuid,
        alias text,
        bgcolor text,
        disabled boolean,
        checked boolean,
        options jsonb,
        "order" integer
);
and function
CREATE OR REPLACE FUNCTION public.f_func(data jsonb, uid bigint, context
text = null, ext text = null, pid bigint = null, pgid uuid = null)
        returns setof rd.t_dict
        language plpgsql
AS $$
begin
  context := coalesce(context, data->>'context', '');
  ext = coalesce(ext, '');

  create temp table tmp_f_table of public.t_dict;
  if dict = 'dict1' then
    insert into tmp_f_table (id, name)
      select
          1, name
        from public.tbl1 a;
  elsif dict = 'dict2' then
    insert into tmp_f_table (id, name, alias)
      select
          t.objecttypeid, t.objecttype, t.alias
        from public.tbl2 t
        where (t.objecttypeid <> 0)
          and t.active;
  elsif dict = 'dict3' then
    insert into tmp_f_table (id, name, options)
    select
          t.linktypeid, t.linktype,
          json_object(
            'rev': t.reftypeid = (data->'objecttype')::bigint,
            'items': t.options
          )
        from public.tbl3 t;
  end if;
return query select * from tmp_f_cpdictionary;
  drop table tmp_f_cpdictionary;
end
$$;
when calling a function for dict3, I have an error "could not open relation
with OID 196327".
As far as I know, this is due to a limitation of the data type jsonb equals
8Kb.
Is it possible to fix this error without changing the logic of the code?





pgsql-bugs by date:

Previous
From: "cca5507"
Date:
Subject: Re: Two issues with REFRESH MATERIALIZED VIEW CONCURRENTLY
Next
From: "David G. Johnston"
Date:
Subject: Re: BUG #19428: Lazy evaluation of type checking in CASE in SQL functions including subqueries no longer works in 18