On 9/29/23 1:37 PM, pf@xxxxxxxxxxx wrote:
Hi, select version(); PostgreSQL 15.4 on x86_64-mageia-linux-gnu, compiled by gcc (Mageia 12.3.0-3.mga9) 12.3.0, 64-bit As a test, rather than use INSERT, I recently wrote a python test script to import some 8M & 33M record files with COPY instead. These worked with last weekend's data dump. Next, I wanted to look into importing a subset of columns using the below logic; but I'm getting "ERROR: cache lookup failed for function 0". Re-running the same full imports that worked Saturday, I now get the same error. Could something in the DB cause this "function" error? Simplified statements; just trying to import a subset of columns: DROP TABLE IF EXISTS t; CREATE TABLE IF NOT EXISTS t ( f1 text, f2 text, f3 text, f4 text, f5 text ); COPY t ( -- import only a subset of columns
I'm going to say it is the ( -- import only a subset of columns I suspect the -- comment is the issue. You need to show the actual Python code for a more complete answer.
f1, f3, f5 ) FROM '/tmp/foo.txt' WITH (FORMAT CSV, HEADER, DELIMITER ' ', ENCODING 'ISO-8859-1') ; ERROR: cache lookup failed for function 0 Where: COPY t, line 1 1 statement failed. "function"? Is this referring to an implied/internal function? Searching has not provided any clue, yet... There are no user functions in the database: ostgres=# \df List of functions Schema | Name | Result data type | Argument data types | Type --------+------+------------------+---------------------+------ (0 rows) It feels like something changed since the previously working script no longer works... Clues? Thanks, Pierre