https://bugzilla.wikimedia.org/show_bug.cgi?id=25080

           Summary: categorylinks table is not updated during upgrade
                    (postgresql)
           Product: MediaWiki
           Version: 1.17-svn
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: postgresql
          Severity: enhancement
          Priority: Normal
         Component: Installation
        AssignedTo: wikibugs-l@lists.wikimedia.org
        ReportedBy: zbys...@in.waw.pl


I upgraded a mediawiki installation from 1.16-alpha to 1.17-al...@72382.
After opening any Category page I get an error:

--------------------------------------------------------------------------
SELECT
page_id,page_title,page_namespace,page_len,page_is_redirect,cl_sortkey,cat_id,cat_title,cat_subcats,cat_pages,cat_files,cl_sortkey_prefix
FROM page INNER JOIN categorylinks ON ((cl_from = page_id)) LEFT JOIN category
ON ((cat_title = page_title AND page_namespace = 14)) WHERE cl_to =
'category-name' AND cl_type = 'page' ORDER BY cl_sortkey LIMIT 201 ;

ERROR:  column "cl_sortkey_prefix" does not exist
LINE 1: ...,cat_id,cat_title,cat_subcats,cat_pages,cat_files,cl_sortkey...
                                                             ^
--------------------------------------------------------------------------
and the call site is in CategoryPage.php function doCategoryQuery().

I think that the cause is pretty simple: in commit 
72026 new columns were added:

+  cl_sortkey_prefix TEXT         NOT NULL  DEFAULT '',
+  cl_collation      SMALLINT     NOT NULL  DEFAULT 0,
+  cl_type           TEXT         NOT NULL  DEFAULT 'page'

I think that the fix is pretty simple:
add the missing columns when running maintenance/update.php:

ALTER TABLE categorylinks ADD COLUMN cl_sortkey_prefix TEXT NOT NULL DEFAULT
'';
ALTER TABLE categorylinks ADD COLUMN cl_collation SMALLINT NOT NULL DEFAULT 0;
ALTER TABLE categorylinks ADD COLUMN cl_type TEXT NOT NULL DEFAULT 'page';

Seem to work after this change :)

-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to