It seems updateSearchIndex.php is broken. The "same" bug was reported in T42302 but on a different table. When adding page_restrictions to the lockSearchindex function in Maintenance.php it seems to work.
/** * Lock the search index * @param &$db DatabaseBase object */ private function lockSearchindex( &$db ) { $write = array( 'searchindex' ); $read = array( 'page', 'revision', 'text', 'interwiki', 'l10n_cache', 'user', 'page_restrictions' ); $db->lockTables( $read, $write, __CLASS__ . '::' . __METHOD__ ); }
But then the script ends with the below message which seems to mean that something else is not working.
--- Unlocking -- Done *** Couldn't write to the searchUpdate.newwikidb.pos!
This was tested on a clean MW-1.23.7 & MW-1.24.1 install but I found out on our production wiki running MW-1.22.5.