WP_Query() and get_posts() can’t handle over a thousand posts?

If it’s not timing out, you’re likely running out of memory.