Last modified: 2014-01-17 00:31:15 UTC
Found examples of the following in the slow logs: SELECT /* Block::newLoad */ ipb_id, ipb_address, ipb_by, ipb_by_text, ipb_reason, ipb_timestamp, ipb_auto, ipb_anon_only, ipb_create_account, ipb_enable_autoblock, ipb_expiry, ipb_deleted, ipb_block_email, ipb_allow_usertalk, ipb_parent_block_id FROM `ipblocks` WHERE ipb_address = 'xxx.xxx.xxx.xxx' OR ((ipb_range_start LIKE '%' ) AND (ipb_range_start <= '') AND (ipb_range_end >= '')) The xxx.xxx.xxx.xxx is redacted, but the empty LIKE '%' and <= '' clauses are verbatim. This seems wrong, and in any case causes a table scan which hurts on enwiki.
Was the IP invalid or something?
Good question. All examples I can find have leading zeros on the last two octets, eg: xxx.xxx.037.08 Odd, though is it actually invalid?
Change 107543 had a related patch set uploaded by Aaron Schulz: Workaround ip2long limitation https://gerrit.wikimedia.org/r/107543
Change 107543 merged by jenkins-bot: Workaround ip2long limitation https://gerrit.wikimedia.org/r/107543