Page MenuHomePhabricator

Cannot create some new pages on Wiktionary: "Bad value for parameter $dbkey: should not be empty"
Closed, DuplicatePublic

Description

Cannot create plwikt/Pisanka:

Internal error
[XMxsbwpAME0AAKWmVjkAAADW] 2019–05–03 16:29:35: Fatal exception of type "Wikimedia\Assert\ParameterAssertionException"

This page has one deleted edit from Conversion script dated August 2005.

exception.file	       	/srv/mediawiki/php-1.34.0-wmf.3/vendor/wikimedia/assert/src/Assert.php:63
exception.message	       	Bad value for parameter $dbkey: should not be empty unless namespace is main and fragment is non-empty
exception.trace
#0 /srv/mediawiki/php-1.34.0-wmf.3/includes/title/TitleValue.php(107): Wikimedia\Assert\Assert::parameter(boolean, string, string)
#1 /srv/mediawiki/php-1.34.0-wmf.3/includes/Linker.php(1021): TitleValue->__construct(integer, string)
#2 /srv/mediawiki/php-1.34.0-wmf.3/includes/Linker.php(951): Linker::userTalkLink(integer, string)
#3 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogFormatter.php(767): Linker::userToolLinks(integer, string, boolean, integer, NULL, boolean)
#4 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogFormatter.php(674): LogFormatter->makeUserLink(User)
#5 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogFormatter.php(552): LogFormatter->getPerformerElement()
#6 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/MoveLogFormatter.php(50): LogFormatter->getMessageParameters()
#7 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogFormatter.php(465): MoveLogFormatter->getMessageParameters()
#8 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogFormatter.php(440): LogFormatter->getActionMessage()
#9 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogEventsList.php(397): LogFormatter->getActionText()
#10 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogPager.php(397): LogEventsList->logLine(stdClass)
#11 /srv/mediawiki/php-1.34.0-wmf.3/includes/pager/IndexPager.php(490): LogPager->formatRow(stdClass)
#12 /srv/mediawiki/php-1.34.0-wmf.3/includes/logging/LogEventsList.php(689): IndexPager->getBody()
#13 /srv/mediawiki/php-1.34.0-wmf.3/includes/EditPage.php(2657): LogEventsList::showLogExtract(OutputPage, array, Title, string, array)
#14 /srv/mediawiki/php-1.34.0-wmf.3/includes/EditPage.php(677): EditPage->showIntro()
#15 /srv/mediawiki/php-1.34.0-wmf.3/includes/actions/EditAction.php(60): EditPage->edit()
#16 /srv/mediawiki/php-1.34.0-wmf.3/includes/MediaWiki.php(499): EditAction->show()
#17 /srv/mediawiki/php-1.34.0-wmf.3/includes/MediaWiki.php(294): MediaWiki->performAction(Article, Title)
#18 /srv/mediawiki/php-1.34.0-wmf.3/includes/MediaWiki.php(865): MediaWiki->performRequest()
#19 /srv/mediawiki/php-1.34.0-wmf.3/includes/MediaWiki.php(515): MediaWiki->main()
#20 /srv/mediawiki/php-1.34.0-wmf.3/index.php(42): MediaWiki->run()
#21 /srv/mediawiki/w/index.php(3): require(string)
#22 {main}
exception_id	       	XMxsbwpAME0AAKWmVjkAAADW
exception_url	       	/w/index.php?title=Pisanka&action=edit&redlink=1&uselang=en

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMay 3 2019, 4:33 PM
Aklapper renamed this task from ParameterAssertionException on page creation to ParameterAssertionException on page creation: "Bad value for parameter $dbkey: should not be empty".May 3 2019, 4:44 PM
Aklapper updated the task description. (Show Details)

As reported on enwiktionary (ref), users are unable to create pages starting with an uppercase letter if their lowercase equivalent already exists. It seems that the converse is not true: I can start editing a lowercase-first page while its uppercase counterpart had been already created.

Julia added a subscriber: Julia.May 6 2019, 1:45 AM

Comment: This problem does not affect all pages where the lowercase exists. For instance, out of all the 50-ish (Latin script) translations at "chocolate", only eight uppercase versions had the bug.

It seems to only affect pages where there used to be an uppercase version, which was then moved and deleted when Wiktionary became case-sensitive.

For example: trying to create uppercase "Geek" returns an error, but trying to create uppercase "Myiasis" does not.

Aklapper renamed this task from ParameterAssertionException on page creation: "Bad value for parameter $dbkey: should not be empty" to Cannot create some new pages on Wiktionary: "Bad value for parameter $dbkey: should not be empty".May 6 2019, 11:55 AM
Aklapper triaged this task as High priority.
Aklapper added a project: Regression.