Re: [HACKERS] GSoC 2017: Foreign Key Arrays
От | Mark Rofail |
---|---|
Тема | Re: [HACKERS] GSoC 2017: Foreign Key Arrays |
Дата | |
Msg-id | CAJvoCust0s0Q9z4cvfc9K4Lst5pgKX0Uikp+FYatJqBrVNqiPw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] GSoC 2017: Foreign Key Arrays (Mark Rofail <markm.rofail@gmail.com>) |
Ответы |
Re: [HACKERS] GSoC 2017: Foreign Key Arrays
|
Список | 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
Вложения
В списке pgsql-hackers по дате отправления: