On Fri, Jul 20, 2012 at 6:19 PM, Ioannis Anagnostopoulos <ioannis@xxxxxxxxxx> wrote: > (feed_all_y2012m07.ship_pos_messages join > ais_server.ship_objects on (ship_pos_messages.obj_id = ship_objects.obj_id)) > on (message_copies.msg_id = ship_pos_messages.msg_id) It's this part of the query that's taking 3.2 hours. Move the filtered message_copies to a CTE, and the filtered ship_pos_messages join to another CTE. That should (in my experience) get you better performance. -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance