Bug \XF\Repository\Ip::getIpsByUser doesn't have an appropriate index

There is a bug in this version
P

PaulB

Guest
getIpsByUser effectively uses the following query:
SQL:

Code:
SELECT ip,
    MIN(log_date) AS first_date,
    MAX(log_date) AS last_date,
    COUNT(*) AS total
FROM xf_ip
WHERE user_id = ?
GROUP BY ip
ORDER BY last_date DESC
LIMIT 150;
Although it looks complicated, this can be optimized quite a bit by an index on (user_id, ip, log_date DESC). It's not a perfect optimization, but it should be good enough for all but the largest forums. Larger forums may be able to get better...

Read more

Continue reading...