Ukázalo se, že jde o problém s indexem. Chování NULLS dotazu nebylo v souladu s indexem.
CREATE INDEX message_created_at_idx on message (created_at DESC NULLS LAST);
... ORDER BY message.created_at DESC; -- defaults to NULLS FIRST when DESC
řešení
Pokud ve svém indexu nebo dotazu zadáte NULLS, ujistěte se, že jsou vzájemně koherentní.
tj.:ASC NULLS LAST
je koherentní s ASC NULLS LAST
nebo DESC NULLS FIRST
.
POSLEDNÍ NULOVÉ
CREATE INDEX message_created_at_idx on message (created_at DESC NULLS LAST);
... ORDER BY messsage.created_at DESC NULLS LAST;
NULOVÉ PRVNÍ
CREATE INDEX message_created_at_idx on message (created_at DESC); -- defaults to NULLS FIRST when DESC
... ORDER BY messsage.created_at DESC -- defaults to NULLS FIRST when DESC;
NENI NULL
Pokud váš sloupec NENÍ NULL, nezatěžujte se s NULLS.
CREATE INDEX message_created_at_idx on message (created_at DESC);
... ORDER BY messsage.created_at DESC;