PostgreSQL превышен предел глубины стека

Хочу создать триггер с операцией апдейт, но получаю ошибку при занесении данных в таблицу: "ОШИБКА: превышен предел глубины стека". Не могу понять в чем проблема и как можно исправить. (Суть того, что я пытаюсь сделать. Я хочу занести данные в другую таблицу, после того как в данной таблице на которой триггер был произведен апдейт)

CREATE OR REPLACE FUNCTION schema._trigger_for_sql_()
RETURNS trigger
LANGUAGE plpgsql
AS
$$
DECLARE
BEGIN

IF (TG_OP = 'UPDATE') THEN
    UPDATE _his AS t SET
    _upd = now(),
    _table_size_byte = pg_table_size(_table_name),
    _indexes_size_byte = pg_indexes_size(_table_name),
    _total_size_byte = pg_total_relation_size(_table_name)
    FROM (
            SELECT
                table_schema,
                table_name,
                ('"' || table_schema || '"."' || table_name || '"') AS _table_name
            FROM information_schema.tables
            WHERE table_type = 'BASE TABLE' AND table_schema = TG_TABLE_SCHEMA
            AND table_name = TG_TABLE_NAME
             ) AS all_t
    WHERE t._schema = TG_TABLE_SCHEMA
    AND t._table = TG_TABLE_NAME;
 END IF;
 RETURN NEW;
 END;
 $$;

CREATE TRIGGER trigger_sql
AFTER INSERT OR UPDATE OR DELETE ON schema.table
FOR EACH ROW
EXECUTE FUNCTION schema._trigger_for_sql_()'

Ответы (0 шт):