Ray Saintonge wrote:
Another place where a longer number of days option on
the page would be
convenient is the User contributions page. Often when looking at this
for an unregistered user with questionable edits the default options
give a very small number of edits with the last 24 hours. The question
I then want to ask the system is whether this guy has done any other
stupid edits in the last year.
The default options on user contribs were set when it was really slow to
do the query, and can now be changed to something more reasonable.
I think there's no practical reason to keep a date limit around except
for the "gimme the last changes since I loaded this recentchanges page 5
minutes ago, I must stay up to date!!" case. Click "last 100 changes" or
"last 10000 changes" and you know what you're in for, whereas "last 30
days" could give you two changes or it could give you thirty thousand.
Having both interlocking selections is a confusing state that has to go.
Anyway, even as a non-techie I sense that completely
reconstructing some
of these pages every time must put an enormous burden on the system. At
the risk of appearing naive, it seems that a Recent Changes File
containing the maximum number of entries reflecting the most that people
would normally expect to see on a regular basis would save a lot of
unneeded searches.
We have a recentchanges table which keeps the last 7 days' worth of
entries (~15000 at our present rate; older ones are cropped off the
bottom of the list every 1000 edits or so). (Currently you can't see
anything older than that through Recentchanges, but requests to do so
haven't come up yet...)
This keeps the burden off the cur and old tables, so a slow
Recentchanges won't affect other pages' response, and slow other pages
won't affect Recentchanges' speed. (At least in theory... actually,
Recentchanges checks for the existence of the pages linked in the header
and the user pages of each user who's edited something, so we still have
to wait on write locks on the cur table.)
-- brion vibber (brion @
pobox.com)