Page MenuHomePhabricator

When updating, SQLite database query error when modifying ref_target field of table flow_ext_ref
Closed, DuplicatePublic

Description

When I run update.php after installing StructuredDiscussions, it shows following error:

Modifying ref_target field of table flow_ext_ref ...[eb200ec757335f1dea5d2ae1] [no req]   Wikimedia\Rdbms\DBQueryError from line 1443 of C:\inetpub\wwwroot\plavorexitbeta\includes\libs\rdbms\database\Database.php: A database query error has occurred. Did you forget to run your application's database schema updater after upgrading?
Query: ALTER TABLE flow_ext_ref CHANGE ref_target ref_target BLOB NOT NULL

Function: Wikimedia\Rdbms\Database::sourceFile( C:\inetpub\wwwroot\plavorexitbeta\extensions\Flow/db_patches/patch-ref_target_not_null.sql )
Error: 1 near "CHANGE": syntax error

Backtrace:
#0 C:\inetpub\wwwroot\plavorexitbeta\includes\libs\rdbms\database\Database.php(1413): Wikimedia\Rdbms\Database->makeQueryException(string, integer, string, string)
#1 C:\inetpub\wwwroot\plavorexitbeta\includes\libs\rdbms\database\Database.php(1186): Wikimedia\Rdbms\Database->reportQueryError(string, integer, string, string, boolean)
#2 C:\inetpub\wwwroot\plavorexitbeta\includes\libs\rdbms\database\Database.php(4260): Wikimedia\Rdbms\Database->query(string, string)
#3 C:\inetpub\wwwroot\plavorexitbeta\includes\libs\rdbms\database\Database.php(4195): Wikimedia\Rdbms\Database->sourceStream(resource (closed), NULL, NULL, string, NULL)
#4 C:\inetpub\wwwroot\plavorexitbeta\includes\installer\DatabaseUpdater.php(683): Wikimedia\Rdbms\Database->sourceFile(string)
#5 C:\inetpub\wwwroot\plavorexitbeta\includes\installer\DatabaseUpdater.php(972): DatabaseUpdater->applyPatch(string, boolean, string)
#6 C:\inetpub\wwwroot\plavorexitbeta\includes\installer\DatabaseUpdater.php(482): DatabaseUpdater->modifyField(string, string, string, boolean)
#7 C:\inetpub\wwwroot\plavorexitbeta\includes\installer\DatabaseUpdater.php(450): DatabaseUpdater->runUpdates(array, boolean)
#8 C:\inetpub\wwwroot\plavorexitbeta\maintenance\update.php(200): DatabaseUpdater->doUpdates(array)
#9 C:\inetpub\wwwroot\plavorexitbeta\maintenance\doMaintenance.php(94): UpdateMediaWiki->execute()
#10 C:\inetpub\wwwroot\plavorexitbeta\maintenance\update.php(245): require_once(string)
#11 {main}

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript
Framawiki renamed this task from Error occurred when I run update.php to When updating, database query error when modifying ref_target field of table flow_ext_ref.Jul 19 2018, 9:44 PM
Framawiki subscribed.

Which database backend do you use? MySQL, SQLite, or something else?

Catrope renamed this task from When updating, database query error when modifying ref_target field of table flow_ext_ref to When updating, SQLite database query error when modifying ref_target field of table flow_ext_ref.Aug 21 2018, 5:44 PM

SQLite's ALTER TABLE syntax does not support CHANGE, so the error makes sense. We might need an SQLite-specific update file that drops and recreates the field (and somehow preserves the data?)