Para sua consulta, você deseja um índice em
xml_files("purchaseNumber", "docPublishDate" desc)
:create index idx_xml_files_2 on xml_files("purchaseNumber", "docPublishDate" desc)
O Postgres deve usar este índice para o
order by
, o que facilita a distinct on
. Embora não afete o desempenho, sugiro também simplificar o
where
cláusula para:where parsing_status IS NULL