[Mediawiki-l] 1.5 Database Schema Questions

Gregory Szorc greg at zorro.STUDENT.CWRU.edu
Mon Dec 5 19:42:42 UTC 2005


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 at case.edu



More information about the MediaWiki-l mailing list