Since the branch cut has happened, we can bump and get rid of legacy
cruft. According to the policy we can go up to 1.31 but let's keep it
that way to avoid major distruptions.
Change-Id: I9d697445a3bb5047726c8b2a7f808edb8403cdda
Postgres:
- Drop foreign key from rev_page
- Make rev_page not nullable
- Change rev_comment_id from int to bigint
- Change rev_actor from int to bigint
- Sync rev_page_id index with MySQL
MySQL/SQlite:
- Drop default from rev_timestamp
Additional changes in the generator script to handle more
formatting issues due to use of additional custom table options
Bug: T230428
Bug: T164898
Change-Id: Ia07dd52e43123473a1728523a3f863280537db8e
Also added token and flags fields. The token field can
be used as a tie-breaker for modtime and also for faster
cas() operations. The flags field makes serialization and
compression format changes easier in the future.
Bug: T274174
Change-Id: I45731a877b21835652993c2d285165a76eeae3e9
Split off to make the migration patch smaller
Postgres:
- Make user_touched not nullable
MySQL/SQlite
- Change user_name from varchar to varbinary
- Change user_name from varchar to varbinary
- Drop empty string default from user_touched (Timestamp field)
Bug: T230428
Bug: T164898
Change-Id: I8fe0b1fb2af3149a2e2fdae7bb056ac6f863b09c
I have been going back and forth and finally decided that we should
remove this method.
It checks if a page doesn't have its talk page in watchlist of users and
it adds them if missing.
It's either:
- You are upgrading from a really old version (1.4) which we don't
support direct upgrade anymore or
- There are missing rows due to failures in the database transactions.
This seems valid and that's why it gets ran in every update.php
(making it a lot slower on a even medium-sized wiki) but we can't
have a script to check and fix any sort of failure on our system.
What about cleaning up deleted revs? If the user really wants to
clean them, they should do it themselves.
Bug: T272199
Change-Id: Ic90829276406a4383496a5ae6f040bc371732773
There's no reason to keep schema change that's no longer useful.
History is already tracked by git.
Change-Id: Ia8aa0d21ae5f2d799d9a641ebe7b924f56e07ab1
This update is not being called in basically any wiki because it skips
when interwiki exists and that table was introduced in 1.2 (we don't
support direct upgrade from 1.26 or earlier).
The .sql file is not useful but installers use interwiki.list and that
is useful.
Bug: T272199
Bug: T273080
Change-Id: I0de40b8dc60eb07b9c7ebeb620142f3cdfe5b67b
- doCategoryPopulation is not needed nor being called anymore. There's
not much use for the maintenance script either.
- doPopulateParentId ditto.
Bug: T272199
Change-Id: Id7fc111b71e8ee9a37a3e2e56849ac5afeea9f9d
Postgres:
- Change page_namespace from smallint to int
- Change page_random from numeric with arbitrary precision to float
- Make page_touched not nullable
MySQL/SQLite:
- Change datatype of page_title from varchar (with binary collation)
to varbinary(255)
- Drop default empty string from timestamp field of page_touched
Bug: T230428
Bug: T164898
Change-Id: Ibdaf332ea1da309d31d35a6ebbc1b8fefced335e
It was introduced in 1.6 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: Ib2d9e749d636431a3817643507983d50987ab9a5
It was introduced in 1.25 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I57418500e22db27fc2b34ae76d22fc1858ce6530
This is only needed for upgrading from 1.3 which we don't support direct
upgrade from anymore (and I doubt anyone can run 1.3 now)
Bug: T272199
Change-Id: I3e5140c85265a7bfbe912fc0a40ada0eafcfb7c3
It was introduced in 1.25 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I6daf211baa688ad749a8c37ddd776736e598d316
It was introduced in 1.22 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I6cdedf33a9b94931e188177b3975b195ebd32111
It was introduced in 1.18 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: Ib66e9b7c197727bd87552486d7a8f8619ebb5b30
It was introduced in 1.17 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: Ia81fc68334c5c63d06d22cfea58eab644e12248d
It was introduced in 1.16 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I11083df7f6399b44615f1b4e0b7815680cbc4ff1
One of the last ones left.
For MySQL/Sqlite:
- Dropping default of ar_timestamp, empty string is not a valid
timestamp.
- Changing ar_title from "varchar() binary" to varbinary
for Postgres:
- Set default for ar_namespace and ar_title
- Change datatype of ar_comment_id, ar_actor, ar_namespace
The indexes were fixed separately.
Bug: T230428
Bug: T164898
Bug: T42626
Depends-On: I83cf1cd51ac9cf933c9175cefd6e38a6914f3494
Change-Id: Ic1d13a82b27f7fa39a0f0ea9c5b7b193b007e4ab
It was introduced in 1.13 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: Ieff17b99c881c2906fb71ebb7b9eac226c399b45
It was introduced in 1.11 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I9ca3430fc0b20a4c275d1a2c6e8560baf75daac9
It was introduced in 1.10 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
The other sql file has been removed in I982f9a7018069.
Bug: T272199
Change-Id: Ice40c6962dc558b8370fdbce04e51c0e1ece76ce
It was introduced in 1.9 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: Ib8a480cb570f16ae65e52912591e1d3f0c44aaf0
It was introduced in 1.6 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I71aaa4f282271cc9254257e2f2c7f892121870ad
It was introduced in 1.6 which we don't support direct upgrade from
anymore. Also it has been removed from update.php list and it's not
mentioned anymore.
Bug: T272199
Change-Id: I8d9565fe035faf96033dc207515b8ec21bca9fe6
This was introduced in 1.5 which we don't support direct upgrading
from anymore and it's already removed from wiring of the update.php.
Also removing related sql files as they are not used anywhere anymore.
Bug: T272199
Change-Id: Iffc8d2694113d56c3a97a4b72b29e5a30c6d43d1
This was introduced in version 1.5 which we don't support upgrading from
anymore and it's already removed from update.php checks.
Also dropping its related maintenance script which is not needed
anymore.
Bug: T272199
Change-Id: I5a755fd04f0e69880f27628fd805f865f4bc86bf
This was introduced in 2005 (1.5) and we don't support upgrade from that
version anymore (also it got removed from update.php runs as well). It's
good to go.
Bug: T272199
Change-Id: I5f7c08fce26ffa1e7b989528b0f450ce610ba744
This is a follow up to I237af3558 where datatype of img_timestamp for
MySQL was changed from varbinary(14) to binary(14) as part of
standardizing timestamp fields in MySQL (T42626).
This change does not affect Postgres or Sqlite.
Bug: T42626
Bug: T230428
Change-Id: Ic4bd59736ff82d8bdb60fbac46a89f18257b8292
On very heavily edited wikis, it is possible for the value of signed
int to be too small. This increases the max value of rc_id from
2,147,483,647 to 4,294,967,295. It also makes it more consistent with
AUTO_INCREMENT PRIMARY KEY columns on other tables.
This patch doesn't apply to Sqlite or Postgres.
Bug: T62962
Change-Id: I3e2c1cf20004dcdeaf195611f762a8f6ffd2bff2
This is a really old code that clearly should not be ran on a modern
system and already removed from update.php
Also, removing the code for doFixAncientImagelinks (leftover from
If99617c6c2)
Bug: T272199
Change-Id: I8a96343b6f7843d5d98308648bb2de9f8f0702c9
This table is massive but thankfully we fixed most of its complexities
in previous patches.
For MySQL/Sqlite:
- Change type of rc_title and rc_source from "varchar binary" to
"varbinary"
- Drop default of rc_timestamp
- Change rc_timestamp from varbinary(14) to binary(14) to standardize
timestamp datatypes
One index doesn't follow the uniform prefix rule but since it's in a
maintenance script, will fix that in a follow up.
Bug: T230428
Bug: T42626
Change-Id: I13994e02ad3a2293148346ef7be96746578ad854
5 files for MySql/Sqlite/Postgres.
MysqlUpdater.php seems to have incorrect comment for 1.26 release
The hitcounter table was dropped in 1.25 (I0e5006a), so all the
files dropped here are part of schema change for 1.25.
Bug: T272199
Change-Id: I6a509a54d31f68e423b3d76d26259b1f88aa22bd