mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/AbuseFilter.git
synced 2024-11-28 07:50:24 +00:00
422b77ab0e
This fixes the abuse_filter_log patch-afl_change_deleted_patrolled not being applied. The patch is provided for (and should work with) all the supported DBMS. Additionally, fix the base table files, which would report afl_patrolled_by as 'NULL', whereas on the WMF cluster it's 'NOT NULL DEFAULT 0'. The schema patch takes care of converting that column as well. Note that this schema change needs not be applied on the WMF cluster, as that's already up-to-date. Finally, note that this patch must be backported to 1.33 and 1.34 (and it might be fairly hard due to the recent schema changes on the abuse_filter_log table). Bug: T240895 Change-Id: Ibdbc9b50c25b9e871ebdeae93a54d10877b585f8
85 lines
2.8 KiB
SQL
85 lines
2.8 KiB
SQL
-- SQL tables for AbuseFilter extension
|
|
|
|
CREATE TABLE /*$wgDBprefix*/abuse_filter (
|
|
af_id BIGINT unsigned NOT NULL AUTO_INCREMENT,
|
|
af_pattern BLOB NOT NULL,
|
|
af_user BIGINT unsigned NOT NULL,
|
|
af_user_text varchar(255) binary NOT NULL,
|
|
af_timestamp binary(14) NOT NULL,
|
|
af_enabled tinyint(1) not null default 1,
|
|
af_comments BLOB,
|
|
af_public_comments TINYBLOB,
|
|
af_hidden tinyint(1) not null default 0,
|
|
af_hit_count bigint not null default 0,
|
|
af_throttled tinyint(1) NOT NULL default 0,
|
|
af_deleted tinyint(1) NOT NULL DEFAULT 0,
|
|
af_actions varchar(255) NOT NULL DEFAULT '',
|
|
af_global tinyint(1) NOT NULL DEFAULT 0,
|
|
af_group varchar(64) binary NOT NULL DEFAULT 'default',
|
|
|
|
PRIMARY KEY (af_id),
|
|
KEY (af_user),
|
|
KEY (af_group,af_enabled,af_id)
|
|
) /*$wgDBTableOptions*/;
|
|
|
|
CREATE TABLE /*$wgDBprefix*/abuse_filter_action (
|
|
afa_filter BIGINT unsigned NOT NULL,
|
|
afa_consequence varchar(255) NOT NULL,
|
|
afa_parameters TINYBLOB NOT NULL,
|
|
|
|
PRIMARY KEY (afa_filter,afa_consequence),
|
|
KEY (afa_consequence)
|
|
) /*$wgDBTableOptions*/;
|
|
|
|
CREATE TABLE /*$wgDBprefix*/abuse_filter_log (
|
|
afl_id BIGINT unsigned NOT NULL AUTO_INCREMENT,
|
|
afl_filter varchar(64) binary NOT NULL DEFAULT '',
|
|
afl_global tinyint(1) NOT NULL DEFAULT 0,
|
|
afl_filter_id BIGINT unsigned NOT NULL DEFAULT 0,
|
|
afl_user BIGINT unsigned NOT NULL,
|
|
afl_user_text varchar(255) binary NOT NULL,
|
|
afl_ip varchar(255) not null,
|
|
afl_action varbinary(255) not null,
|
|
afl_actions varbinary(255) not null,
|
|
afl_var_dump BLOB NOT NULL,
|
|
afl_timestamp binary(14) NOT NULL,
|
|
afl_namespace int NOT NULL,
|
|
afl_title varchar(255) binary NOT NULL,
|
|
afl_wiki varchar(64) binary NULL,
|
|
afl_deleted tinyint(1) NOT NULL DEFAULT 0,
|
|
afl_patrolled_by int unsigned NOT NULL DEFAULT 0,
|
|
afl_rev_id int unsigned,
|
|
|
|
PRIMARY KEY (afl_id),
|
|
KEY filter_timestamp (afl_filter,afl_timestamp),
|
|
KEY filter_timestamp_full (afl_global,afl_filter_id,afl_timestamp),
|
|
KEY user_timestamp (afl_user,afl_user_text,afl_timestamp),
|
|
KEY (afl_timestamp),
|
|
KEY page_timestamp (afl_namespace, afl_title, afl_timestamp),
|
|
KEY ip_timestamp (afl_ip, afl_timestamp),
|
|
KEY (afl_rev_id),
|
|
KEY wiki_timestamp (afl_wiki, afl_timestamp)
|
|
) /*$wgDBTableOptions*/;
|
|
|
|
CREATE TABLE /*$wgDBprefix*/abuse_filter_history (
|
|
afh_id BIGINT unsigned NOT NULL AUTO_INCREMENT,
|
|
afh_filter BIGINT unsigned NOT NULL,
|
|
afh_user BIGINT unsigned NOT NULL,
|
|
afh_user_text varchar(255) binary NOT NULL,
|
|
afh_timestamp binary(14) NOT NULL,
|
|
afh_pattern BLOB NOT NULL,
|
|
afh_comments BLOB NOT NULL,
|
|
afh_flags TINYBLOB NOT NULL,
|
|
afh_public_comments TINYBLOB,
|
|
afh_actions BLOB,
|
|
afh_deleted tinyint(1) NOT NULL DEFAULT 0,
|
|
afh_changed_fields varchar(255) NOT NULL DEFAULT '',
|
|
afh_group varchar(64) binary NULL,
|
|
|
|
PRIMARY KEY (afh_id),
|
|
KEY (afh_filter),
|
|
KEY (afh_user),
|
|
KEY (afh_user_text),
|
|
KEY (afh_timestamp)
|
|
) /*$wgDBTableOptions*/;
|