However, it continues to process such an update, changing the namespace number
to 0 or 255, possibly destroying or duplicating content, or making pages
inaccessible. Do the Special: or Media: namespaces work at all? As far as I
can tell, the former is quietly redirected to MediaWiki:, and the latter to Image:.
Using an unsigned eight-bit value for namespace numbers is a terrible limitation
(it isn't even documented anywhere). In places, the code currently assumes
negative values are legal (e.g., NS_MEDIA = -2 and NS_SPECIAL = -1). Such a
small range will inevitably lead to namespace conflicts. Why was cur_namespace
chosen to be a tinyint?