cache lookup failed for collation 0

Поиск
Список
Период
Сортировка
От Jeevan Chalke
Тема cache lookup failed for collation 0
Дата
Msg-id CAM2+6=Waf3qJ1=yVTUH8_yG-SC0xcBMY+SFLhvKKNnWNXSUDBw@mail.gmail.com
обсуждение исходный текст
Ответы Re: cache lookup failed for collation 0  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: cache lookup failed for collation 0  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
Список pgsql-hackers
Hello hackers,

Following test-sequence causing an error "cache lookup failed for collation 0";

postgres:5432 [42106]=# create table foobar(a bytea primary key, b int);
CREATE TABLE
postgres:5432 [42106]=# insert into foobar values('\x4c835521685c46ee827ab83d376cf028', 1);
INSERT 0 1
postgres:5432 [42106]=# \d+ foobar
                                   Table "public.foobar"
 Column |  Type   | Collation | Nullable | Default | Storage  | Stats target | Description
--------+---------+-----------+----------+---------+----------+--------------+-------------
 a      | bytea   |           | not null |         | extended |              |
 b      | integer |           |          |         | plain    |              |
Indexes:
    "foobar_pkey" PRIMARY KEY, btree (a)
Access method: heap

postgres:5432 [42106]=# select * from foobar where a like '%1%';
ERROR:  cache lookup failed for collation 0

---

After debugging it, I have observed that the code in question was added by commit 5e1963fb764e9cc092e0f7b58b28985c311431d9 which added support for the collations with nondeterministic comparison.

The error is coming from get_collation_isdeterministic() when colloid passed is 0. I think like we do in get_collation_name(), we should return false here when such collation oid does not exist.

Attached patch doing that change and re-arranged the code to look similar to get_collation_name(). Also, added small testcase.

---

However, I have not fully understood the code changes done by the said commit and thus the current behavior i.e. cache lookup error, might be the expected one. But if that's the case, I kindly request to please explain why that is expected.

Thanks

--
Jeevan Chalke
Technical Architect, Product Development
EnterpriseDB Corporation
The Enterprise PostgreSQL Company

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Zedstore - compressed in-core columnar storage
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: Zedstore - compressed in-core columnar storage