mediawiki-extensions-Linter/sql/abstractSchemaChanges/patch-linter-add-template-tag-fields.json
sbailey 56567da56f First phase of T175177 database alter table adds two fields
* Adds template and tag name fields to enable better search
   capability to the Linter extension

Bug: T175177
Change-Id: Iac22d99109bb1253f450a64254f50677e3cdefeb
2022-02-03 14:57:17 -08:00

162 lines
4.1 KiB
JSON

{
"comment": "Filter errors by details (T175177)",
"before": {
"name": "linter",
"columns": [
{
"name": "linter_id",
"type": "integer",
"options": { "notnull": true, "unsigned": true, "autoincrement": true }
},
{
"name": "linter_page",
"comment": "page id",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_namespace",
"comment": "page namespace",
"type": "integer",
"options": { "notnull": false, "unsigned": false }
},
{
"name": "linter_cat",
"comment": "error category (see CategoryManager::$categoryIds)",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_start",
"comment": "end positions of where the error is located",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_end",
"comment": "end positions of where the error is located",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_params",
"comment": "extra parameters about the error, JSON encoded",
"type": "blob",
"options": { "length": 65530, "notnull": false }
}
],
"indexes": [
{
"name": "linter_page",
"comment": "Query by page",
"columns": [ "linter_page" ],
"unique": false
},
{
"name": "linter_cat_namespace",
"comment": "Query by category and namespace",
"columns": [ "linter_cat", "linter_namespace" ],
"unique": false
},
{
"name": "linter_cat_page_position",
"comment": "Unique index for lint errors, also covers linter_cat for query by category",
"columns": [ "linter_cat", "linter_page", "linter_start", "linter_end" ],
"unique": true
}
],
"pk": [ "linter_id" ]
},
"after": {
"name": "linter",
"columns": [
{
"name": "linter_id",
"type": "integer",
"options": { "notnull": true, "unsigned": true, "autoincrement": true }
},
{
"name": "linter_page",
"comment": "page id",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_namespace",
"comment": "page namespace",
"type": "integer",
"options": { "notnull": false, "unsigned": false }
},
{
"name": "linter_cat",
"comment": "error category (see CategoryManager::$categoryIds)",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_start",
"comment": "end positions of where the error is located",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_end",
"comment": "end positions of where the error is located",
"type": "integer",
"options": { "notnull": true, "unsigned": true }
},
{
"name": "linter_params",
"comment": "extra parameters about the error, JSON encoded",
"type": "blob",
"options": { "length": 65530, "notnull": false }
},
{
"name": "linter_template",
"comment": "name of a template if used or empty",
"type": "binary",
"options": { "notnull": true, "length": 255, "default": "" }
},
{
"name": "linter_tag",
"comment": "name of tag if used or empty",
"type": "binary",
"options": { "notnull": true, "length": 32, "default": "" }
}
],
"indexes": [
{
"name": "linter_page",
"comment": "Query by page",
"columns": [ "linter_page" ],
"unique": false
},
{
"name": "linter_cat_namespace",
"comment": "Query by category and namespace",
"columns": [ "linter_cat", "linter_namespace" ],
"unique": false
},
{
"name": "linter_cat_page_position",
"comment": "Unique index for lint errors, also covers linter_cat for query by category",
"columns": [ "linter_cat", "linter_page", "linter_start", "linter_end" ],
"unique": true
},
{
"name": "linter_cat_template",
"comment": "Query by template",
"columns": [ "linter_cat", "linter_template" ],
"unique": false
},
{
"name": "linter_cat_tag",
"comment": "Query by tag",
"columns": [ "linter_cat", "linter_tag" ],
"unique": false
}
],
"pk": [ "linter_id" ]
}
}