Two things here:

1) The installer gives you a chance to change these settings on upgrade.
Not all should be changeable though I suppose--there's no real way to
differentiate though...maybe an upgrade shouldn't allow changing them at
all...

2) That sounds like the postgres installer should wrap its table creations
with something like IF NOT EXISTS.

Neither are really specific to 1.27.3--or Postgres for that matter, beyond
the bug probably only being in its schema. Basically MediaWiki from 1.17.0
and beyond (new installer) would have this issue.

-Chad

On Fri, Sep 1, 2017 at 7:30 AM Victor Sudakov <[email protected]> wrote:

> Dear Colleagues,
>
> I'm trying to upgrade my Wiki to MediaWiki 1.27.3 (FreeBSD 10.3,
> PostgreSQL 9.2).
>
> The wiki/mw-config script correctly finds the existing
> LocalSettings.php, I enter the upgrade key, then it says "The
> environment has been checked. You can install MediaWiki."
>
> On the next page I check "Use the same account as for installation"
>
> On the next page, the installer asks me to enter "Name of wiki",
> "Project namespace", administrator username/password etc. Why? I'm
> upgrading, not installing from scratch. Everything's already there in
> LocalSettings.php!
>
> Never mind, I enter all this anew. On the next step: a database error.
> Please see the traceback below.
>
> It looks like the installer is trying to create a new wiki instead of
> upgrading the existing one.
>
> Can you please help?
>
>
>
>
>
> A database query error has occurred. This may indicate a bug in the
> software.
>
>     Query:
>     CREATE TABLE mwuser ( -- replace reserved word 'user'
>      user_id                   INTEGER  NOT NULL  PRIMARY KEY DEFAULT
> nextval('user_user_id_seq'),
>      user_name                 TEXT     NOT NULL  UNIQUE,
>      user_real_name            TEXT,
>      user_password             TEXT,
>      user_newpassword          TEXT,
>      user_newpass_time         TIMESTAMPTZ,
>      user_token                TEXT,
>      user_email                TEXT,
>      user_email_token          TEXT,
>      user_email_token_expires  TIMESTAMPTZ,
>      user_email_authenticated  TIMESTAMPTZ,
>      user_touched              TIMESTAMPTZ,
>      user_registration         TIMESTAMPTZ,
>      user_editcount            INTEGER,
>      user_password_expires     TIMESTAMPTZ NULL
>      )
>     Function: DatabaseBase::sourceFile(
> /usr/local/www/mediawiki/maintenance/postgres/tables.sql )
>     Error: 42P07 ERROR: relation "mwuser" already exists
>
> Backtrace:
>
> #0 /usr/local/www/mediawiki/includes/db/DatabasePostgres.php(448):
> DatabaseBase->reportQueryError('ERROR:  relatio...', '42P07', 'CREATE TABLE
> mw...', 'DatabaseBase::s...', false)
> #1 /usr/local/www/mediawiki/includes/db/Database.php(901):
> DatabasePostgres->reportQueryError('ERROR:  relatio...', '42P07', 'CREATE
> TABLE mw...', 'DatabaseBase::s...', false)
> #2 /usr/local/www/mediawiki/includes/db/Database.php(3057):
> DatabaseBase->query('CREATE TABLE mw...', 'DatabaseBase::s...')
> #3 /usr/local/www/mediawiki/includes/db/Database.php(2978):
> DatabaseBase->sourceStream(Resource id #51, false, false,
> 'DatabaseBase::s...', false)
> #4 /usr/local/www/mediawiki/includes/installer/PostgresInstaller.php(609):
> DatabaseBase->sourceFile('/usr/local/www/...')
> #5 [internal function]:
> PostgresInstaller->createTables(Object(PostgresInstaller))
> #6 /usr/local/www/mediawiki/includes/installer/Installer.php(1476):
> call_user_func(Array, Object(PostgresInstaller))
> #7
> /usr/local/www/mediawiki/includes/installer/WebInstallerInstall.php(45):
> Installer->performInstallation(Array, Array)
> #8 /usr/local/www/mediawiki/includes/installer/WebInstaller.php(279):
> WebInstallerInstall->execute()
> #9 /usr/local/www/mediawiki/mw-config/index.php(81):
> WebInstaller->execute(Array)
> #10 /usr/local/www/mediawiki/mw-config/index.php(39): wfInstallerMain()
> #11 {main}
>
>
>
> --
> Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
> AS43859
>
> _______________________________________________
> MediaWiki-l mailing list
> To unsubscribe, go to:
> https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
>
_______________________________________________
MediaWiki-l mailing list
To unsubscribe, go to:
https://lists.wikimedia.org/mailman/listinfo/mediawiki-l

Reply via email to