wiki.techinc.nl/maintenance/sqlite/archives/patch-ip_changes.sql
Ammar Abdulhamid 097ab7b600 Fix ip_changes.ipc_rev_id column default value
Integer field should not be given a default string value.
Introduced in Ice1bdae3d16cf365da14c6df0e8d91d2b914e064.

Bug: T191231
Bug: T163562
Change-Id: I74de8efa9b39c2c07fee8249d779a0622b3586d8
2020-10-26 07:31:22 +01:00

23 lines
919 B
SQL

--
-- Every time an edit by a logged out user is saved,
-- a row is created in ip_changes. This stores
-- the IP as a hex representation so that we can more
-- easily find edits within an IP range.
--
CREATE TABLE /*_*/ip_changes (
-- Foreign key to the revision table, also serves as the unique primary key
ipc_rev_id int unsigned NOT NULL PRIMARY KEY DEFAULT 0,
-- The timestamp of the revision
ipc_rev_timestamp binary(14) NOT NULL DEFAULT '',
-- Hex representation of the IP address, as returned by IPUtils::toHex()
-- For IPv4 it will resemble: ABCD1234
-- For IPv6: v6-ABCD1234000000000000000000000000
-- BETWEEN is then used to identify revisions within a given range
ipc_hex varbinary(35) NOT NULL DEFAULT ''
) /*$wgDBTableOptions*/;
CREATE INDEX /*i*/ipc_rev_timestamp ON /*_*/ip_changes (ipc_rev_timestamp);
CREATE INDEX /*i*/ipc_hex_time ON /*_*/ip_changes (ipc_hex,ipc_rev_timestamp);