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