I have a few quick questions about the 1.5 database schema...
What exactly is the role of the recentchanges table? If I had to take a
stab at it, I would say that it is basically rehash of data already in
the revision and logging tables and it exists purely for performance
improvement reasons.
Once upon a time when I upgraded MediaWiki, somehow my recentchanges
table got truncated. So now, I have records starting at about
rc_id=4000. I do have database backups that have all but 30 or so of
the old records. Is there a benefit to importing these missing records
into the recentchanges table? I would assume
maintenance/rebuildrecentchanges.php would reconstruct these records,
but it doesn't. It just seems to truncate the table even more. Which
leads me back to my original question, what is the purpose of this table?
Second, I did a fresh install of 1.5.2 this weekend and chose the
experimental MySQL 5 layout. For curiosity sake, I did a structure
compare to an existing installation (1.5.2 upgraded from 1.4.x). I was
surprised to see that the text table in the fresh install only has 3
fields (old_id, old_text, old_flags) as opposed to the 11 or so that the
existing install has. Is it safe to delete these non-existent fields
from the old database? On quick glance, these fields in the old
database don't seem to be populated anymore, so I would assume yes, but
what do I know.
I'm sorry to bother everyone on this list with this question, but the
database documentation on meta is horribly out of date. I would update
it myself, but there are a few areas that I just don't know enough
about. Perhaps the developers could find time to update the
documentation...
Gregory Szorc
gregory.szorc(a)case.edu