Search Postgresql Archives

Re: Error “cache lookup failed for function”

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/26/20 11:37 AM, Albrecht Dreß wrote:
Sorry for the late reply, I've been on a short vacation…

Am 21.02.20 21:44 schrieb(en) Adrian Klaver:
1) From your original post what does the below mean?:

-- add several db functions

One trigger function, plus two “normal” ones, all (yet) unused.

-- replace a DB function:

This was the

---8<--------------------------------------------------------------------
DROP FUNCTION public.get_result2[…]
CREATE FUNCTION public.get_result2[…]
---8<--------------------------------------------------------------------

sequence triggering the error.

2) What do you see when you do?:

select * from pg_proc where oid = 1821571;

Unfortunately, when I saw that restarting the cluster didn't solve the issue, I re-installed it from a dump (which appears to be intact, btw), but /without/ taking a copy of the original data folder.  Thus, this information is lost, sorry.

3) What is the definition for retrieve_single_result()?

Ancient implementation, somewhat similar to get_result2(), but with less security and different error checking approach:

---8<--------------------------------------------------------------------
CREATE FUNCTION public.retrieve_single_result(mytaskid bigint, OUT data bytea, OUT metadata jsonb) RETURNS record
     LANGUAGE plpgsql STABLE SECURITY DEFINER
     AS $$
DECLARE
     errortext text;
BEGIN
    SELECT results.data, results.metadata, results.errortext FROM results LEFT JOIN tasks ON tasks.resultid = results.resultid WHERE taskid = mytaskid LIMIT 1 INTO data, metadata, errortext;
     IF errortext IS NOT NULL THEN
         RAISE EXCEPTION 'error result "%"', errortext;
     END IF;
END;
$$;
---8<--------------------------------------------------------------------

4) What does the below show?:

select proname, prosrc from pg_proc  where proname in ('retrieve_single_result', 'get_result2');

Same problem as with #2, sorry…

Alright, as Tom said upstream, there is not much that can be done with information missing. Hopefully it does not happen again, but if it does you know what needs to be captured.



Thanks,
Albrecht.


--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux