A lo dicho por Pepe, solo añadir que debes recordar que el cliente mantendrá en memoria los 4000 registros.... si el cliente tiene poca memoria, esto podria provocar swaping, con una rebaja considerable en el rendimiento. Es mejor, como ya apuntó Pepe, una consulta mas pequeña.
Hasta luego.