Special pages (BrokenRedirects, etc) are generating invalid SQL. It seems the 'from' and 'join' clauses are not being constructed correctly. This is with Postgres as the db if it matters.
Example query generated from brokenredirects below. Note FROM "p2". This obviously doesn't exist and was supposed to be part of a join that is not included at all.
SELECT /* BrokenRedirectsPage::reallyDoQuery Mike */
p1.page_namespace AS namespace, p1.page_title AS title, p1.page_title AS VALUE, rd_namespace, rd_title
WHERE (rd_namespace >= 0) AND
(rd_interwiki IS NULL OR rd_interwiki = '') AND (p2.page_namespace IS NULL)
ORDER BY rd_namespace,rd_title,rd_from
FOR UPDATE OF p1