\d domains
                  
                  
                                                         Table "public.domains"
                  
                  
                      Column    |          Type          | Collation | Nullable |               Default
                  
                  
                  --------------+------------------------+-----------+----------+-------------------------------------
                  
                  
                   id           | integer                |           | not null | nextval('domains_id_seq'::regclass)
                  
                  
                   domain       | character varying(256) |           | not null |
                  
                  
                  ...
                  
                  
                  Indexes:
                  
                  
                      "domains_pkey" PRIMARY KEY, btree (id)
                  
                  
                      "domains_idx2" UNIQUE, btree (domain)
                  
                  
                  
                  
                  
                  в ней что-то пошло не так и образовались дубли доменов
                  
                  
                  причём некоторые домены ещё и какие-то очень странные, с бинарными данными, но это наверное не важно
                  
                  
                  
                  
                  
                  запрос
                  
                  
                  select id, domain from domains where domain in (select domain from (select count(*) cnt, domain from domains group by domain having count(*) > 1) tmp)
                  
                  
                  возвращает 16 строк
                  
                  
                  
                  
                  
                  а такой же запрос с ORDER BY - 0 строк
                  
                  
                  select id, domain from domains where domain in (select domain from (select count(*) cnt, domain from domains group by domain having count(*) > 1) tmp) order by 2
                  
                  
                  
                  
                  
                  это битый индекс может так себя проявлять? или что?
                  
                  
                
а что значит order by 2?
покажите \d+ таблицы
Да, что-то "битое" там есть. > Наблюдаем очень странную ситуацию в пг 12.1 А почему не 12.2? В общем, ищите причину (disk corruption?), исправляйте, восстанавливайте backup (если ещё не поздно).
Может проблемы с collation?
Обсуждают сегодня