Думаю, у вас поврежденная база данных, чего не должно быть.Начиная с backend/optimizer/path/pathkeys.c
в источнике PostgreSQL:
List *
convert_subquery_pathkeys(PlannerInfo *root, RelOptInfo *rel,
List *subquery_pathkeys)
{
/*...*/
if (sub_eclass->ec_sortref == 0) /* can't happen */
elog(ERROR, "volatile EquivalenceClass has no sortref");
Это сообщение об ошибке появляется в двух других местах в источнике, но условие запуска, ec_sortref == 0
, такое же, иодни и те же комментарии «не может быть» появляются во всех трех местах.
Таким образом, либо ваша база данных повреждена, либо вы обнаружили ошибку в PostgreSQL.