hoo added a comment.

There already is a separate table with redirect information (redirect), the page_is_redirect field is mostly for convenience these days, I guess.

We could rewrite the query as follows:

SELECT /* Wikibase\Repo\Store\Sql\SqlEntityIdPager::fetchIds datasets@snapsh... */  page_id,page_title  FROM `page` LEFT JOIN redirect ON rd_from = page_id WHERE (page_id > 3128073) AND page_namespace IN ('0','120')  AND rd_from IS NULL ORDER BY page_id ASC LIMIT 100;



mysql:wikiadmin@db1082 [wikidatawiki]> EXPLAIN SELECT /* Wikibase\Repo\Store\Sql\SqlEntityIdPager::fetchIds datasets@snapsh... */  page_id,page_title  FROM `page` LEFT JOIN redirect ON rd_from = page_id WHERE (page_id > 3128073) AND page_namespace IN ('0','120')  AND rd_from IS NULL ORDER BY page_id ASC LIMIT 100;                                                                                                                                                                                                                                   
+------+-------------+----------+--------+--------------------+---------+---------+---------------------------+----------+--------------------------------------+                                                                                                              
| id   | select_type | table    | type   | possible_keys      | key     | key_len | ref                       | rows     | Extra                                |                                                                                                              
+------+-------------+----------+--------+--------------------+---------+---------+---------------------------+----------+--------------------------------------+                                                                                                              
|    1 | SIMPLE      | page     | range  | PRIMARY,name_title | PRIMARY | 4       | NULL                      | 12836589 | Using where                          |                                                                                                              
|    1 | SIMPLE      | redirect | eq_ref | PRIMARY            | PRIMARY | 4       | wikidatawiki.page.page_id |        1 | Using where; Using index; Not exists |                                                                                                              
+------+-------------+----------+--------+--------------------+---------+---------+---------------------------+----------+--------------------------------------+                                                                                                              
2 rows in set (0.00 sec)
mysql:wikiadmin@db1082 [wikidatawiki]> SHOW SESSION STATUS like 'Hand%';
+----------------------------+-------+                                                                                                                                                                                                                                         
| Variable_name              | Value |                                                                                                                                                                                                                                         
+----------------------------+-------+                                                                                                                                                                                                                                         
| Handler_commit             | 1     |                                                                                                                                                                                                                                         
| Handler_delete             | 0     |                                                                                                                                                                                                                                         
| Handler_discover           | 0     |                                                                                                                                                                                                                                         
| Handler_external_lock      | 0     |                                                                                                                                                                                                                                         
| Handler_icp_attempts       | 0     |                                                                                                                                                                                                                                         
| Handler_icp_match          | 0     |                                                                                                                                                                                                                                         
| Handler_mrr_init           | 0     |                                                                                                                                                                                                                                         
| Handler_mrr_key_refills    | 0     |                                                                                                                                                                                                                                         
| Handler_mrr_rowid_refills  | 0     |                                                                                                                                                                                                                                         
| Handler_prepare            | 0     |                                                                                                                                                                                                                                         
| Handler_read_first         | 0     |                                                                                                                                                                                                                                         
| Handler_read_key           | 104   |                                                                                                                                                                                                                                         
| Handler_read_last          | 0     |                                                                                                                                                                                                                                         
| Handler_read_next          | 102   |                                                                                                                                                                                                                                         
| Handler_read_prev          | 0     |                                                                                                                                                                                                                                         
| Handler_read_rnd           | 0     |                                                                                                                                                                                                                                         
| Handler_read_rnd_deleted   | 0     |                                                                                                                                                                                                                                         
| Handler_read_rnd_next      | 115   |                                                                                                                                                                                                                                         
| Handler_rollback           | 0     |                                                                                                                                                                                                                                         
| Handler_savepoint          | 0     |                                                                                                                                                                                                                                         
| Handler_savepoint_rollback | 0     |                                                                                                                                                                                                                                         
| Handler_tmp_update         | 0     |                                                                                                                                                                                                                                         
| Handler_tmp_write          | 113   |                                                                                                                                                                                                                                         
| Handler_update             | 0     |                                                                                                                                                                                                                                         
| Handler_write              | 0     |                                                                                                                                                                                                                                         
+----------------------------+-------+                                                                                                                                                                                                                                         
25 rows in set (0.00 sec)

Would that work for you @jcrespo?


TASK DETAIL
https://phabricator.wikimedia.org/T151356

EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: hoo
Cc: Aklapper, Addshore, Marostegui, jcrespo, aude, daniel, hoo, Minhnv-2809, D3r1ck01, Izno, Luke081515, Wikidata-bugs, Mbch331, Jay8g, Krenair
_______________________________________________
Wikidata-bugs mailing list
Wikidata-bugs@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs

Reply via email to