Ladsgroup has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/315141

Change subject: Fixup maintenance/CleanDuplicateScores.php
......................................................................

Fixup maintenance/CleanDuplicateScores.php

Change-Id: Iadf3b002dade4aa3c7ef99c6c3ba7fa824decb5d
---
M maintenance/CleanDuplicateScores.php
1 file changed, 12 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/ORES 
refs/changes/41/315141/1

diff --git a/maintenance/CleanDuplicateScores.php 
b/maintenance/CleanDuplicateScores.php
index 45f114e..578aac0 100644
--- a/maintenance/CleanDuplicateScores.php
+++ b/maintenance/CleanDuplicateScores.php
@@ -22,22 +22,26 @@
        public function execute() {
                $dbr = \wfGetDB( DB_REPLICA );
                $dbw = \wfGetDB( DB_MASTER );
+               $groupConcat = $dbr->buildGroupConcatField(
+                       '|',
+                       'ores_classification AS OC',
+                       'ores_classification.oresc_id',
+                       'OC.oresc_id = ores_classification.oresc_id'
+               );
                $res = $dbr->select(
                        'ores_classification',
-                       [ 'oresc_id', 'oresc_rev', 'oresc_model', 'oresc_class' 
],
+                       [ 'oresc_rev', 'oresc_model', 'oresc_class' , 'ids' => 
$groupConcat ],
                        '',
                        __METHOD__,
                        [ 'GROUP BY' => 'oresc_rev, oresc_model, oresc_class',
                        'HAVING' => 'COUNT(*) > 1' ]
                );
                $ids = [];
-               $dump = [];
-               foreach ( $row as $res ) {
-                       $key = implode( ',', [ $row->oresc_rev, 
$row->oresc_model, $row->oresc_class ] );
-                       if ( array_has_key( $key, $dump ) ) {
-                               $ids[] = $row->oresc_id;
-                       } else {
-                               $dump[] = $key;
+               foreach ( $res as $row ) {
+                       $rowIds = explode( '|', $row->ids );
+                       if ( $rowIds > 1 ) { // Sanity
+                               $newIds = array_slice( $rowIds, 1 );
+                               $ids = array_merge( $ids, $newIds );
                        }
                }
                $c = count( $ids );

-- 
To view, visit https://gerrit.wikimedia.org/r/315141
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iadf3b002dade4aa3c7ef99c6c3ba7fa824decb5d
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/ORES
Gerrit-Branch: wmf/1.28.0-wmf.21
Gerrit-Owner: Ladsgroup <ladsgr...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to