Re: [HACKERS] GSoC 2017: Foreign Key Arrays - Mailing list pgsql-hackers

From Mark Rofail
Subject Re: [HACKERS] GSoC 2017: Foreign Key Arrays
Date
Msg-id CAJvoCust0s0Q9z4cvfc9K4Lst5pgKX0Uikp+FYatJqBrVNqiPw@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] GSoC 2017: Foreign Key Arrays  (Mark Rofail <markm.rofail@gmail.com>)
Responses Re: [HACKERS] GSoC 2017: Foreign Key Arrays  ("Joel Jacobson" <joel@compiler.org>)
List pgsql-hackers
Hello again Joel,

UPDATE catalog_clone.pg_index SET indkey = '1 2 12345'::int2vector WHERE indexrelid = 2837;
ERROR:  operator does not exist: int2vector pg_catalog.@> smallint[]
LINE 1: ...WHERE "attrelid" OPERATOR(pg_catalog.=) $1 AND $2 OPERATOR(p...
 In your example, you are using the notation  '1 2 12345'::int2vector which signifies a vector as you have mentioned, however in this patch we use the array operator @> to help with the indexing, the incompatibility stems from here.
I do not think that postgres contains vector operators, correct me if I am wrong. I feel that supporting vectors is our of the scope of this patch, if you have an idea how to support it please let me know.
I apologize for my rash response, I did not quite understand your example at first, it appears the UPDATE statement is neither over the referencing nor the referenced columns, I understand the problem now, please disregard the previous email. Thank you for this find, please find the fix below

Changelog:
- v14 (compatible with current master 2021-01-24, commit 0c1e8845f28bd07ad381c8b0d6701575d967b88e)
    * fix a huge issue in type casting (ruleutils.c:11438-11491)
    * remove coercion support (this causes the issue Joel described above)
    * remove composite types support (since search is now array against array and "get_array_type" returns "record []" for composite functions)

Todo:
- rebase containselem gin patch to accommodate v14. "Array-containselem-gin-v1.patch" is only compatible with <v14
- work on re-adding support to composite types 

/Mark
Attachment

pgsql-hackers by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: Stronger safeguard for archive recovery not to miss data
Next
From: "tsunakawa.takay@fujitsu.com"
Date:
Subject: RE: Parallel INSERT (INTO ... SELECT ...)