Page MenuHomePhabricator

Namespace problem on Azerbaijani Wiktionary
Closed, ResolvedPublic


Hello. I am sysop in Azerbaijani Wiktionary. On March 9, 2016 namespace on Azerbaijani Wiktionary changed from "Wiktionary" to "Vikilüğət" (T128296). But today I am realize that some pages deleted after that, and I can't undo delete. Can anybody help me?

Event Timeline

Dereckson triaged this task as High priority.
Dereckson added a subscriber: Dereckson.

There is no reporting on the initial task the script to fix namespaces have been run.

I'm looking what happens.

Ah yes, there were indeed Vikilüğət: pages created before the namespace rename in the configuration.

Don't worry, they're not deleted, only not accessible, as they're still declared in the main namespace. We need to update the database to switch them to the new namespaces.

$ mwscript namespaceDupes.php azwiktionary --fix
id=9614 ns=0 dbk=Vikilüğət:Bloklama_qaydaları -> Vikilüğət:Bloklama_qaydaları (no conflict)
id=53559 ns=0 dbk=Vikilüğət:Kodlara_görə_bayraqların_cədvəli -> Vikilüğət:Kodlara_görə_bayraqların_cədvəli (no conflict)
id=5138 ns=0 dbk=Vikilüğət:Kənd_Meydanı -> Vikilüğət:Kənd_Meydanı (no conflict)
id=7935 ns=0 dbk=Vikilüğət:Kənd_meydanı *** dest title exists and --add-prefix not specified
id=9608 ns=0 dbk=Vikilüğət:Qaralama_dəftəri *** dest title exists and --add-prefix not specified
id=53573 ns=0 dbk=Vikilüğət:Qaralama_mətnlər -> Vikilüğət:Qaralama_mətnlər (no conflict)
id=2007 ns=0 dbk=Vikilüğət:Səhifə_silmə_kriteriyaları -> Vikilüğət:Səhifə_silmə_kriteriyaları (no conflict)
id=50646 ns=0 dbk=Vikilüğət:İdarəçi_namizədi/Aabdullayev851 -> Vikilüğət:İdarəçi_namizədi/Aabdullayev851 (no conflict)
id=7936 ns=0 dbk=Vikilüğət:İmza_istifadəsi -> Vikilüğət:İmza_istifadəsi (no conflict)
9 pages to fix, 7 were resolvable.

pagelinks from=9610 ns=0 dbk=Vikilüğət:Bloklama_qaydaları -> Vikilüğət:Bloklama_qaydaları
pagelinks from=9612 ns=0 dbk=Vikilüğət:Bloklama_qaydaları -> Vikilüğət:Bloklama_qaydaları
pagelinks from=1731 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=9595 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=10265 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=11209 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=11876 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=51215 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=52177 ns=0 dbk=Vikilüğət:Etibarlı_mənbələr -> Vikilüğət:Etibarlı_mənbələr
pagelinks from=9610 ns=0 dbk=Vikilüğət:Etiket -> Vikilüğət:Etiket
pagelinks from=53558 ns=0 dbk=Vikilüğət:Kodlara_görə_bayraqların_cədvəli -> Vikilüğət:Kodlara_görə_bayraqların_cədvəli
pagelinks from=1731 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=7934 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=8169 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=9319 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=9595 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=10265 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=10691 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=11209 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=11640 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=11876 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=50725 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=50874 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=50939 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=51214 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=51215 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=52177 ns=0 dbk=Vikilüğət:Kənd_meydanı -> Vikilüğət:Kənd_meydanı
pagelinks from=1731 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=7934 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=8169 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=9319 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=9595 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=10265 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=10691 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=11209 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=11640 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=11876 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi
pagelinks from=50725 ns=0 dbk=Vikilüğət:Müzakirə_səhifəsi -> Vikilüğət:Müzakirə_səhifəsi

164 links to fix, 164 were resolvable.

So two pages was created before and then recreated:

  • [[Vikilüğət:Kənd_meydanı]]
  • [[Vikilüğət:Qaralama_dəftəri]]

I tried to merge the histories, but got a database error:

$ mwscript namespaceDupes.php azwiktionary --fix --merge
id=7935 ns=0 dbk=Vikilüğət:Kənd_meydanı => Vikilüğət:Kənd_meydanı (merge)
[322d0f64aea67bd63616c5d9] [no req]   DBUnexpectedError from line 2753 of /srv/mediawiki/php-1.28.0-wmf.15/includes/db/Database.php: DatabaseBase::{closure}: Flushing an explicit transaction, getting out of sync!
#0 /srv/mediawiki/php-1.28.0-wmf.15/includes/db/Database.php(3305): DatabaseBase->commit(string, string)
#1 [internal function]: DatabaseBase->{closure}()
#2 /srv/mediawiki/php-1.28.0-wmf.15/includes/libs/ScopedCallback.php(74): call_user_func_array(Closure, array)
#3 [internal function]: ScopedCallback->__destruct()
#4 [internal function]: DatabaseBase->getScopedLockAndFlush(string, string, integer)
#5 /srv/mediawiki/php-1.28.0-wmf.15/includes/db/DBConnRef.php(39): call_user_func_array(array, array)
#6 /srv/mediawiki/php-1.28.0-wmf.15/includes/db/DBConnRef.php(517): DBConnRef->__call(string, array)
#7 /srv/mediawiki/php-1.28.0-wmf.15/includes/deferred/LinksUpdate.php(178): DBConnRef->getScopedLockAndFlush(string, string, integer)
#8 /srv/mediawiki/php-1.28.0-wmf.15/includes/deferred/LinksDeletionUpdate.php(62): LinksUpdate::acquirePageLock(DBConnRef, integer)
#9 /srv/mediawiki/php-1.28.0-wmf.15/maintenance/namespaceDupes.php(609): LinksDeletionUpdate->doUpdate()
#10 /srv/mediawiki/php-1.28.0-wmf.15/maintenance/namespaceDupes.php(316): NamespaceConflictChecker->mergePage(stdClass, Title)
#11 /srv/mediawiki/php-1.28.0-wmf.15/maintenance/namespaceDupes.php(176): NamespaceConflictChecker->checkNamespace(integer, string, array)
#12 /srv/mediawiki/php-1.28.0-wmf.15/maintenance/namespaceDupes.php(86): NamespaceConflictChecker->checkAll(array)
#13 /srv/mediawiki/php-1.28.0-wmf.15/maintenance/doMaintenance.php(106): NamespaceConflictChecker->execute()
#14 /srv/mediawiki/php-1.28.0-wmf.15/maintenance/namespaceDupes.php(617): require_once(string)
#15 /srv/mediawiki/multiversion/MWScript.php(97): require_once(string)
#16 {main}

Mentioned in SAL [2016-08-22T22:43:30Z] <Dereckson> Run maintenance ssript namespaceDupes.php on azwiktionary (T143580)

@Aabdullayev851 So, currently, all the pages are accessible.

There is only a small issue, [[Vikilüğət:Kənd_meydanı]] and [[Vikilüğət:Qaralama_dəftəri]] old history hasn't currently restored yet.

If you wish, I can restore them to another place (e.g. User:Aabdullayev851/Vikilüğət:Kənd_meydanı) or with a suffix (e.g. Vikilüğət:Kənd_meydanı (old)).

Or we can wait the bug is fixed and merge histories.

Let me know what you prefer.

Dereckson lowered the priority of this task from High to Medium.Aug 22 2016, 10:57 PM

Well, as we've a fix available, I'm going to backport it to currently deployed MediaWiki wmf15 branch, then run again the script to merge histories for these two pages.

Dereckson moved this task from Working on to Done on the Wikimedia-Site-requests board.
$ mwscript namespaceDupes.php azwiktionary --merge --fix
id=7935 ns=0 dbk=Vikilüğət:Kənd_meydanı => Vikilüğət:Kənd_meydanı (merge)
id=9608 ns=0 dbk=Vikilüğət:Qaralama_dəftəri *** cannot merge since source is later
2 pages to fix, 1 were resolvable.

0 links to fix, 0 were resolvable.

Oh noeees

$ mwscript namespaceDupes.php azwiktionary --add-prefix User:Aabdullayev851/ --fix
id=9608 ns=0 dbk=Vikilüğət:Qaralama_dəftəri -> Vikilüğət:User:Aabdullayev851/Qaralama_dəftəri (alternate)
1 pages to fix, 1 were resolvable.

0 links to fix, 0 were resolvable.

Looks good!

So all is fine now, all the pages have been restored, and when recreated, histories have been merged for Vikilüğət:Kənd_meydanı, and I gave you the older one for Vikilüğət:Qaralama_dəftəri.

It doesn't cross namespaces as expected, so look the history of

Compare with

Then delete the first to cleanup.

Mentioned in SAL [2016-08-23T13:37:50Z] <Dereckson> Run namespaceDupes maintenance script on azwiki and azwiktionary (T143580)

Thank you very much. I think problem solved.

If it's solved there is no reason to reopen this task. :)
Glad it works for you!