diff --git a/src/backend/access/gist/gistscan.c b/src/backend/access/gist/gistscan.c new file mode 100644 index b5553ff..774df6a *** a/src/backend/access/gist/gistscan.c --- b/src/backend/access/gist/gistscan.c *************** GISTSearchTreeItemComparator(const RBNod *** 37,43 **** for (i = 0; i < scan->numberOfOrderBys; i++) { if (sa->distances[i] != sb->distances[i]) ! return (sa->distances[i] > sb->distances[i]) ? 1 : -1; } return 0; --- 37,58 ---- for (i = 0; i < scan->numberOfOrderBys; i++) { if (sa->distances[i] != sb->distances[i]) ! { ! if (isnan(sa->distances[i])) ! { ! if (isnan(sb->distances[i])) ! continue; ! else ! return 1; ! } ! else ! { ! if (isnan(sb->distances[i])) ! return -1; ! else ! return (sa->distances[i] > sb->distances[i]) ? 1 : -1; ! } ! } } return 0;