RevisionDelete: Avoid SELECT *
authorumherirrender <umherirrender_de.wp@web.de>
Thu, 24 Apr 2014 08:20:17 +0000 (10:20 +0200)
committerReedy <reedy@wikimedia.org>
Fri, 9 May 2014 17:44:20 +0000 (17:44 +0000)
Use selectFields functions and a manually list of columsn to get all
fields instead of * in the sql.

It is good practice to name the selected fields

Change-Id: I9d6e5714d609bc8a7020c2b7610934b815563cff

includes/revisiondelete/RevisionDelete.php

index dcec5dd..3c68feb 100644 (file)
@@ -80,7 +80,7 @@ class RevDel_RevisionList extends RevDel_List {
                }
 
                // Check if any requested revisions are available fully deleted.
-               $archived = $db->select( array( 'archive' ), '*',
+               $archived = $db->select( array( 'archive' ), Revision::selectArchiveFields(),
                        array(
                                'ar_rev_id' => $ids
                        ),
@@ -326,7 +326,7 @@ class RevDel_ArchiveList extends RevDel_RevisionList {
                foreach ( $this->ids as $id ) {
                        $timestamps[] = $db->timestamp( $id );
                }
-               return $db->select( 'archive', '*',
+               return $db->select( 'archive', Revision::selectArchiveFields(),
                                array(
                                        'ar_namespace' => $this->title->getNamespace(),
                                        'ar_title' => $this->title->getDBkey(),
@@ -921,7 +921,20 @@ class RevDel_LogList extends RevDel_List {
         */
        public function doQuery( $db ) {
                $ids = array_map( 'intval', $this->ids );
-               return $db->select( 'logging', '*',
+               return $db->select( 'logging', array(
+                               'log_id',
+                               'log_type',
+                               'log_action',
+                               'log_timestamp',
+                               'log_user',
+                               'log_user_text',
+                               'log_namespace',
+                               'log_title',
+                               'log_page',
+                               'log_comment',
+                               'log_params',
+                               'log_deleted'
+                       ),
                        array( 'log_id' => $ids ),
                        __METHOD__,
                        array( 'ORDER BY' => 'log_id DESC' )