Last modified: 2011-11-25 07:16:53 UTC
Rather than containing the category's name, the cl_to field should contain the category ID as defined in the category table. This would make moving categories (GSoC project) much easier and doesn't store the category name in two places.
BTW, has the category table been built on WMF wikis yet?
Yes, it has, long ago. A major reason for this change would be a much smaller (therefore faster) categorylinks table.
The link tables specify text rather than IDs for rename safety... the links are created by text in the article (and any templates it uses, and any parser functions it calls, etc), which would not be changed by any alteration to the target page.
Things get ugly when you have to try to figure out how to go back and change texts. :)
Conveniently, categories can't be renamed, so that's not a big issue at present. ;) Any implementation of this big a change should wait until an implementation of category redirects/renaming, which could easily require changes to categorylinks too. It would be fairly annoying to change the schema in such a major way *twice*, not just for whoever does the alters but also for extension authors, etc.