Page MenuHomePhabricator

New field and index on recentchanges table for RC_EXTERNAL
Closed, InvalidPublic


Short description:

Add a new field and index to allow differentiation between types of RC_EXTERNAL changes. Currently Wikibase is the only thing using RC_EXTERNAL. To allow Flow to utilize RC_EXTERNAL and let Wikibase continue doing everything it does now a differentiator is required.

Which wikis are affected:


Which tables:


What is the change to those tables:

ALTER TABLE recentchanges ADD rc_external_type VARBINARY(255) NULL DEFAULT NULL;
CREATE INDEX rc_type ON recentchanges(rc_type, rc_external_type);

Links to gerrit changes and/or other related bug reports.

Version: unspecified
Severity: normal
See Also:



Event Timeline

bzimport raised the priority of this task from to High.Nov 22 2014, 1:54 AM
bzimport set Reference to bz53427.
bzimport added a subscriber: Unknown Object (MLST).

After further review we have decided the index is unnecessary and the size of this field should be 16 rather than 255.

The change required is now just:

ALTER TABLE recentchanges ADD rc_external_type VARBINARY(16) NULL DEFAULT

Where's the accompanying changeset for this as 81277 has been abandoned? Or should this bug be closed as INVALID or similar?

As mentioned by reedy, after consultation with wikitech and other interested
parties the solution to this problem changed and there is no longer a need to
add rc_external_type to the recentchanges table.

The solution taken involves replacing rc_type int field in recentchanges with a new rc_source varbinary(16) field.

This has been superseeded by bug 55844