The number of requests on enwiki hitting the concurrent search request limit has been increasing lately:
/a/mw-log/archive/poolcounter.log-20150218.gz:3057 /a/mw-log/archive/poolcounter.log-20150219.gz:1728 /a/mw-log/archive/poolcounter.log-20150220.gz:3189 /a/mw-log/archive/poolcounter.log-20150221.gz:3151 /a/mw-log/archive/poolcounter.log-20150222.gz:3034 /a/mw-log/archive/poolcounter.log-20150223.gz:2372 /a/mw-log/archive/poolcounter.log-20150224.gz:2840 /a/mw-log/archive/poolcounter.log-20150225.gz:828 /a/mw-log/archive/poolcounter.log-20150226.gz:598 /a/mw-log/archive/poolcounter.log-20150227.gz:0 /a/mw-log/archive/poolcounter.log-20150228.gz:0 /a/mw-log/archive/poolcounter.log-20150301.gz:1186 /a/mw-log/archive/poolcounter.log-20150302.gz:291 /a/mw-log/archive/poolcounter.log-20150303.gz:13 /a/mw-log/archive/poolcounter.log-20150304.gz:146 /a/mw-log/archive/poolcounter.log-20150305.gz:0 /a/mw-log/archive/poolcounter.log-20150306.gz:228 /a/mw-log/archive/poolcounter.log-20150307.gz:101 /a/mw-log/archive/poolcounter.log-20150308.gz:767 /a/mw-log/archive/poolcounter.log-20150309.gz:332 /a/mw-log/archive/poolcounter.log-20150310.gz:644 /a/mw-log/archive/poolcounter.log-20150311.gz:635 /a/mw-log/archive/poolcounter.log-20150312.gz:348 /a/mw-log/archive/poolcounter.log-20150313.gz:193 /a/mw-log/archive/poolcounter.log-20150314.gz:1527 /a/mw-log/archive/poolcounter.log-20150315.gz:504 /a/mw-log/archive/poolcounter.log-20150316.gz:1696 /a/mw-log/archive/poolcounter.log-20150317.gz:492 /a/mw-log/archive/poolcounter.log-20150318.gz:178 /a/mw-log/archive/poolcounter.log-20150319.gz:185 /a/mw-log/archive/poolcounter.log-20150320.gz:41 /a/mw-log/archive/poolcounter.log-20150321.gz:1 /a/mw-log/archive/poolcounter.log-20150322.gz:200 /a/mw-log/archive/poolcounter.log-20150323.gz:13 /a/mw-log/archive/poolcounter.log-20150324.gz:0 /a/mw-log/archive/poolcounter.log-20150325.gz:0 /a/mw-log/archive/poolcounter.log-20150326.gz:230 /a/mw-log/archive/poolcounter.log-20150327.gz:58 /a/mw-log/archive/poolcounter.log-20150328.gz:534 /a/mw-log/archive/poolcounter.log-20150329.gz:513 /a/mw-log/archive/poolcounter.log-20150330.gz:43 /a/mw-log/archive/poolcounter.log-20150331.gz:1421 /a/mw-log/archive/poolcounter.log-20150401.gz:0 /a/mw-log/archive/poolcounter.log-20150402.gz:102 /a/mw-log/archive/poolcounter.log-20150403.gz:989 /a/mw-log/archive/poolcounter.log-20150404.gz:1222 /a/mw-log/archive/poolcounter.log-20150405.gz:1641 /a/mw-log/archive/poolcounter.log-20150406.gz:809 /a/mw-log/archive/poolcounter.log-20150407.gz:694 /a/mw-log/archive/poolcounter.log-20150408.gz:1053 /a/mw-log/archive/poolcounter.log-20150409.gz:722 /a/mw-log/archive/poolcounter.log-20150410.gz:1682 /a/mw-log/archive/poolcounter.log-20150411.gz:20 /a/mw-log/archive/poolcounter.log-20150412.gz:463 /a/mw-log/archive/poolcounter.log-20150413.gz:55 /a/mw-log/archive/poolcounter.log-20150414.gz:82 /a/mw-log/archive/poolcounter.log-20150415.gz:1 /a/mw-log/archive/poolcounter.log-20150416.gz:16 /a/mw-log/archive/poolcounter.log-20150417.gz:1472 /a/mw-log/archive/poolcounter.log-20150418.gz:6213 /a/mw-log/archive/poolcounter.log-20150419.gz:399 /a/mw-log/archive/poolcounter.log-20150420.gz:974 /a/mw-log/archive/poolcounter.log-20150421.gz:595 /a/mw-log/archive/poolcounter.log-20150422.gz:1642 /a/mw-log/archive/poolcounter.log-20150423.gz:917 /a/mw-log/archive/poolcounter.log-20150424.gz:4246 /a/mw-log/archive/poolcounter.log-20150425.gz:1279 /a/mw-log/archive/poolcounter.log-20150426.gz:649 /a/mw-log/archive/poolcounter.log-20150427.gz:11 /a/mw-log/archive/poolcounter.log-20150428.gz:1171 /a/mw-log/archive/poolcounter.log-20150429.gz:2644 /a/mw-log/archive/poolcounter.log-20150430.gz:16580 /a/mw-log/archive/poolcounter.log-20150501.gz:15208 /a/mw-log/archive/poolcounter.log-20150502.gz:5246 /a/mw-log/archive/poolcounter.log-20150503.gz:269 /a/mw-log/archive/poolcounter.log-20150504.gz:3013 /a/mw-log/archive/poolcounter.log-20150506.gz:8874 /a/mw-log/archive/poolcounter.log-20150507.gz:5810 /a/mw-log/archive/poolcounter.log-20150508.gz:417 /a/mw-log/archive/poolcounter.log-20150509.gz:9471 /a/mw-log/archive/poolcounter.log-20150510.gz:23448 /a/mw-log/archive/poolcounter.log-20150511.gz:3977 /a/mw-log/archive/poolcounter.log-20150512.gz:12287 /a/mw-log/archive/poolcounter.log-20150513.gz:5904 /a/mw-log/archive/poolcounter.log-20150514.gz:15536 /a/mw-log/archive/poolcounter.log-20150515.gz:217899 /a/mw-log/archive/poolcounter.log-20150516.gz:7535 /a/mw-log/archive/poolcounter.log-20150517.gz:5576 /a/mw-log/archive/poolcounter.log-20150518.gz:31688 /a/mw-log/archive/poolcounter.log-20150519.gz:8014
What we are wondering is if this is due to a larger volume of requests overall, or are the search requests taking longer to process? It would be nice to take into consideration not just the day the request was made, but how many requests are processing around the same moments in time.
All of this information is available in the CirrusSearchRequests logs, in the form of
2015-05-20 04:03:24 mw1146 enwiki CirrusSearchRequests DEBUG: full_text search for 'canno' against enwiki_content took 14 millis and 12 Elasticsearch millis. Found 20 total results and returned 2 of them starting at 0. Requested via api.
I tried naively doing this with a a bit of sed/awk, but the request logs are huge. Each day is >3GB compressed and contain 150 to 200 million rows each. Essentially pulling out the 'took 14 millis' portion, and then summing those up. Just regexing out that 'took 14 millis' portion takes a couple hours per file, so a more appropriate parsing method is needed.