Report abuse

!! BEFORE

@site.events.find(:all, :order => 'events.created_at DESC', :include => [:article, :user], :limit => 50)

  Event Load Including Associations (0.025034)   SELECT events.`id` AS t0_r0, events.`mode` AS t0_r1, events.`user_id` AS t0_r2, events.`article_id` AS t0_r3, events.`title` AS t0_r4, events.`body` AS t0_r5, events.`created_at` AS t0_r6, events.`author` AS t0_r7, events.`comment_id` AS t0_r8, events.`site_id` AS t0_r9, contents.`id` AS t1_r0, contents.`article_id` AS t1_r1, contents.`user_id` AS t1_r2, contents.`title` AS t1_r3, contents.`permalink` AS t1_r4, contents.`excerpt` AS t1_r5, contents.`body` AS t1_r6, contents.`excerpt_html` AS t1_r7, contents.`body_html` AS t1_r8, contents.`created_at` AS t1_r9, contents.`updated_at` AS t1_r10, contents.`published_at` AS t1_r11, contents.`type` AS t1_r12, contents.`author` AS t1_r13, contents.`author_url` AS t1_r14, contents.`author_email` AS t1_r15, contents.`author_ip` AS t1_r16, contents.`comments_count` AS t1_r17, contents.`updater_id` AS t1_r18, contents.`version` AS t1_r19, contents.`site_id` AS t1_r20, contents.`approved` AS t1_r21, contents.`comment_age` AS t1_r22, contents.`filter` AS t1_r23, contents.`user_agent` AS t1_r24, contents.`referrer` AS t1_r25, contents.`assets_count` AS t1_r26, users.`id` AS t2_r0, users.`login` AS t2_r1, users.`email` AS t2_r2, users.`crypted_password` AS t2_r3, users.`salt` AS t2_r4, users.`activation_code` AS t2_r5, users.`activated_at` AS t2_r6, users.`created_at` AS t2_r7, users.`updated_at` AS t2_r8, users.`deleted_at` AS t2_r9, users.`token` AS t2_r10, users.`token_expires_at` AS t2_r11, users.`filter` AS t2_r12, users.`admin` AS t2_r13 FROM events LEFT OUTER JOIN contents ON contents.id = events.article_id AND contents.`type` = 'Article' LEFT OUTER JOIN users ON users.id = events.user_id WHERE (events.site_id = 1) ORDER BY events.created_at DESC LIMIT 50

!! AFTER

@events = @site.events.find(:all, :order => 'events.created_at DESC', :limit => 50)
Article.find_all_by_id(@events.collect(&:article_id).uniq)
User.find_all_by_id(@events.collect(&:user_id).uniq)

  Event Load (0.006704)   SELECT * FROM events WHERE (events.site_id = 1) ORDER BY events.created_at DESC LIMIT 50
  Article Load (0.000494)   SELECT * FROM contents WHERE (contents.`id` IN (991,1079,980,979)) AND ( (contents.`type` = 'Article' ) ) 
  User Load (0.000486)   SELECT * FROM users WHERE (users.deleted_at IS NULL OR users.deleted_at > '2007-05-23 02:52:27') AND (users.`id` IN (NULL,2))