Last modified: 2012-12-19 13:44:13 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T24883, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 22883 - WMF wikis need consistent MySQL data types for page.page_title and image.img_name
WMF wikis need consistent MySQL data types for page.page_title and image.img_...
Status: RESOLVED WONTFIX
Product: Wikimedia
Classification: Unclassified
General/Unknown (Other open bugs)
unspecified
All All
: Lowest normal (vote)
: ---
Assigned To: Nobody - You can work on this!
: shell
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-03-18 14:57 UTC by MZMcBride
Modified: 2012-12-19 13:44 UTC (History)
8 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description MZMcBride 2010-03-18 14:57:55 UTC
This is related to https://jira.toolserver.org/browse/TS-549

Certain WMF slaves are using varchar(255) for page.page_title and image.img_name (possibly other columns as well), while other slaves/wiki databses are using varbinary(255). This has to do with MySQL 5 treating varbinary as the same as varchar, from what I understand.

The issue that we've run into on the Toolserver is that comparing varchar fields to varbinary fields is incredibly slow. For example, enwiki_p.page.page_title is varbinary while commonswiki_p.image.img_name is varchar, so the following query takes an incredibly long time to run:

SELECT
  page_title
FROM page
WHERE NOT EXISTS (SELECT
                    img_name
                  FROM commonswiki_p.image
                  WHERE img_name = page_title)
LIMIT 1;

The Toolserver folks are hesitant to alter the tables on their side, and it would probably be better all around for there to be consistency among the WMF databases and slaves.
Comment 1 Domas Mituzas 2010-03-24 08:07:32 UTC
all mysql5 or 5.1 slave instances should have their data as binary/ 'varbinary'

do note, that 'varbinary(255)' is a 'varchar(255) binary' - so, you should actually tell which character set is used on TS side, rather than leave it untold.

inconsistency is on TS side, not on ours - TS uses different charsets, than we do. 
we will have eventual consistency on our side, though, needs someone (maybe me) to work on it.
Comment 2 Diederik van Liere 2011-11-30 16:54:20 UTC
Toolserver has labeled TS-549 as a WONTFIX.
Comment 3 Andre Klapper 2012-12-19 13:44:13 UTC
Changing LATER to WONTFIX as per comment 1 and 2.

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links