Make WordPress Core

Opened 5 years ago

Last modified 4 years ago

#15961 closed defect (bug)

WP_Comments_List_Table causes get_pending_comments_num to run a lame query — at Version 1

Reported by: westi Owned by: westi
Milestone: 3.2 Priority: normal
Severity: normal Version: 3.1
Component: Comments Keywords: has-patch
Focuses: Cc:

Description (last modified by westi)

In WP_Comments_List_Table::prepare_items we call get_comments to get the comments for the current view.

We then loop through the comments to build an array of post_ids.

We then call get_pending_comments_num with this array of ids.

At no point does prepare_items or get_pending_comments_num do any thing to the array to ensure uniqueness.

Therefore we run queries like this:

SELECT comment_post_ID, COUNT(comment_ID) as num_comments FROM wp__comments WHERE comment_post_ID IN ( '627', '627', '1', '5', '1', '20', '40', '30', '20', '10', '10', '627', '627', '627', '627', '627', '627', '627', '627', '627' ) AND comment_approved = '0' GROUP BY comment_post_ID

Change History (2)

comment:1 @westi5 years ago

  • Description modified (diff)

@SergeyBiryukov5 years ago

Note: See TracTickets for help on using tickets.