Page MenuHomePhabricator

SQLite FTS3 installer task depends on tables task
Open, Needs TriagePublicBUG REPORT

Description

Steps to replicate the issue (include links if applicable):

  • Install mediawiki with sqlite (with FTS3 support)
  • Check the sqlite database

What happens?:
There are no FTS3 tables:
searchindex_content
searchindex_segdir
searchindex_segments

you will only find: searchindex

What should have happened instead?:

Software version (on Special:Version page; skip for WMF-hosted wikis like Wikipedia):

Other information (browser name/version, screenshots, etc.):

Related Objects

Event Timeline

This has likely been broken on new installs for over a year because the installer task didn't have the dependency on the right task declared..

Of note is also that the applySourceFile fails, but that task having failed id never reported anywhere in the cli installer...

/opt/homebrew/bin/php -dxdebug.mode=debug -dxdebug.client_port=9003 -dxdebug.client_host=127.0.0.1 /Users/hartman/Development/wikimedia-git/mediawiki-sqlite/maintenance/run.php install --server=http://localhost:4000 --dbtype sqlite --with-developmentsettings --dbpath /Users/hartman/Development/wikimedia-git/mediawiki-sqlite/cache --scriptpath= --pass adminpassword MediaWiki Admin
PHP 8.4.11 is installed.
ICU 77.1 is installed (supports Unicode 16.0.0).
GNU diff3 text comparison utility not found. You can ignore this for now, but might run into edit conflicts more frequently.
Found ImageMagick: /opt/homebrew/bin/convert. Image thumbnailing will be enabled if you enable uploads.
Found the Git version control software: /usr/bin/git.
Using server name "http://localhost".
Using server URL "http://localhost:4000".
Warning: Your default directory for uploads (/Users/hartman/Development/wikimedia-git/mediawiki-sqlite/images/) is not checked for vulnerability to arbitrary script execution during the CLI install.
Warning: Because of a connection error, it was not possibly to verify that images in your uploads directory, respond with the HTTP header X-Content-Type-Options: nosniff to protect browsers from potentially unsafe files. It is highly recommended to configure appropriate response headers on your webserver before enabling uploads.
The environment has been checked. You can install MediaWiki.
Including extensions... done
Setting up database... done
Creating search index... done
Creating tables... done
Initializing statistics... done
Populating default interwiki table... done
Prevent running unneeded updates... done
Restoring MediaWiki services... done
Creating main page with default content... done
Creating administrator user account... done
Database was successfully set up
MediaWiki has been successfully installed. You can now visit <http://localhost:4000> to view your wiki. If you have questions, check out our frequently asked questions list: <https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ> or use one of the support forums linked on that page.

Change #1185355 had a related patch set uploaded (by TheDJ; author: TheDJ):

[mediawiki/core@master] Installer: SQLite searchindex step depends on tableinstall

https://gerrit.wikimedia.org/r/1185355

Caused by T374591 during early 1.44 development. should be backported to 1.44

Reedy renamed this task from SQLit FTS3 installer task depends on tables task to SQLite FTS3 installer task depends on tables task.Sep 7 2025, 10:46 PM

As this caused a problem for all new installs.. might need a release note as well. I'll also test if running the MW upgrade after a new release, autocorrects 1.44 installs that were created and have experienced this problem.

Change #1185355 merged by jenkins-bot:

[mediawiki/core@master] Installer: SQLite searchindex step depends on tableinstall

https://gerrit.wikimedia.org/r/1185355

Change #1186511 had a related patch set uploaded (by Jforrester; author: TheDJ):

[mediawiki/core@REL1_44] Installer: SQLite searchindex step depends on tableinstall

https://gerrit.wikimedia.org/r/1186511

As this caused a problem for all new installs.. might need a release note as well. I'll also test if running the MW upgrade after a new release, autocorrects 1.44 installs that were created and have experienced this problem.

Given that the install step is marked as complete ("Creating search index... done") I imagine that means it's too late? We can bump the name of the task so it gets re-run everywhere?

Change #1186511 merged by jenkins-bot:

[mediawiki/core@REL1_44] Installer: SQLite searchindex step depends on tableinstall

https://gerrit.wikimedia.org/r/1186511

As this caused a problem for all new installs.. might need a release note as well. I'll also test if running the MW upgrade after a new release, autocorrects 1.44 installs that were created and have experienced this problem.

Given that the install step is marked as complete ("Creating search index... done") I imagine that means it's too late? We can bump the name of the task so it gets re-run everywhere?

I have verified that simply running the updater at least doesn't fix it.
I think we should run a maintenance step in the updater, to execute installPreConfigured --task=search, but the updater only really wants to run LoggedUpdateMaintenance scripts, so we would need a new wrapper for it?

Technically, we also need to rebuild the searchindex.. But this hasn't been used a lot outside of developers, so maybe we just add a note in the releasenotes on how to run the rebuildtextindex maintenance script for that ?

Change #1186563 had a related patch set uploaded (by TheDJ; author: TheDJ):

[mediawiki/core@master] Installer: Merge applySourceFile status into Task status

https://gerrit.wikimedia.org/r/1186563

Change #1186563 merged by jenkins-bot:

[mediawiki/core@master] Installer: Merge applySourceFile status into Task status

https://gerrit.wikimedia.org/r/1186563

Change #1191842 had a related patch set uploaded (by Reedy; author: TheDJ):

[mediawiki/core@REL1_44] Installer: Merge applySourceFile status into Task status

https://gerrit.wikimedia.org/r/1191842

Change #1191842 merged by jenkins-bot:

[mediawiki/core@REL1_44] Installer: Merge applySourceFile status into Task status

https://gerrit.wikimedia.org/r/1191842