Page MenuHomePhabricator

Checkuser perfomance issues
Closed, ResolvedPublic

Description

I've made some proposed modifications to checkuser:

  1. Altered the index on cuc_user,cuc_timestamp to cuc_user,cuc_ip,cuc_timestamp. This lets "get ips" show all IPs (rather than limiting to avoid timeouts) and only needs to read off the index.
  1. The other check types now scan how many rows there are that match the criteria (for range scans only). If there are too many, it bails out to avoid a huge filesort (that still gives an incomplete result set) and list the IPs with edits in the range, to let the user do more specific checks. One the one hand, this makes overhead itself, but on the other, if tuned right, it can avoid nasty timeouts that happen on some /16 ranges. At least knowing the IPs with edits in there helps to narrow down scans.

Version: unspecified
Severity: enhancement

Details

Reference
bz11387

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 9:56 PM
bzimport set Reference to bz11387.

performance tweaks

Attached: