Milimetric has submitted this change and it was merged.
Change subject: fix. bug in revert_rate. Historics revs should be ordered by
descending rev_id.
......................................................................
fix. bug in revert_rate. Historics revs should be ordered by descending rev_id.
Change-Id: I16c30cf7b3e3edee3822aca33cdbcf12ae5b3f04
---
M user_metrics/metrics/revert_rate.py
M user_metrics/query/query_calls_sql.py
2 files changed, 10 insertions(+), 14 deletions(-)
Approvals:
Milimetric: Verified; Looks good to me, approved
diff --git a/user_metrics/metrics/revert_rate.py
b/user_metrics/metrics/revert_rate.py
index d2b0555..a1e8fc8 100644
--- a/user_metrics/metrics/revert_rate.py
+++ b/user_metrics/metrics/revert_rate.py
@@ -102,6 +102,7 @@
def __revert(rev_id, page_id, sha1, user_text, metric_args):
""" Returns the revision corresponding to a revision if it exists. """
+
history = {}
for rev in __history(rev_id, page_id, metric_args.look_back,
metric_args.project, metric_args.namespace):
@@ -238,15 +239,5 @@
'average_rate',])
setattr(revert_rate_avg, um.METRIC_AGG_METHOD_KWARGS, {'val_idx' : 1,
'weight_idx' : 1})
-
-# testing
-if __name__ == "__main__":
- r = RevertRate()
- users = ['17792132', '17797320', '17792130', '17792131', '17792136',
- '17792137', '17792134', '17797328', '17797329', '17792138']
- for i in xrange(5):
- users += users
- for r in r.process(users,num_threads=50,rev_threads=50, log_progress=True):
- print r
diff --git a/user_metrics/query/query_calls_sql.py
b/user_metrics/query/query_calls_sql.py
index 0a92b1f..4369f9d 100644
--- a/user_metrics/query/query_calls_sql.py
+++ b/user_metrics/query/query_calls_sql.py
@@ -25,6 +25,7 @@
WHERE_TOKEN = '<where>'
COMP1_TOKEN = '<comparator_1>'
USERS_TOKEN = '<users>'
+ORDER_TOKEN = '<order>'
class UMQueryCallError(Exception):
@@ -34,7 +35,7 @@
def sub_tokens(query, db='', table='', from_repl='', where='',
- comp_1='', users=''):
+ comp_1='', users='', order=''):
"""
Substitutes values for portions of queries that specify MySQL databases and
tables.
@@ -46,6 +47,7 @@
WHERE_TOKEN: where,
COMP1_TOKEN: comp_1,
USERS_TOKEN: users,
+ ORDER_TOKEN: order,
}
for token in tokens:
token_value = tokens[token]
@@ -287,10 +289,13 @@
# Format namespace expression and comparator
ns_cond = format_namespace(namespace)
+
comparator = '>' if look_ahead else '<'
+ order = 'ASC' if look_ahead else 'DESC'
+
query = query_store[page_rev_hist_query.__name__]
query = sub_tokens(query, db=escape_var(project),
- comp_1=comparator, where=ns_cond)
+ comp_1=comparator, where=ns_cond, order=order)
try:
params = {
'rev_id': long(rev_id),
@@ -755,13 +760,13 @@
WHERE rev_page = %(page_id)s
AND rev_id <comparator_1> %(rev_id)s
AND <where>
- ORDER BY rev_id ASC
+ ORDER BY rev_id <order>
LIMIT %(n)s
""",
revert_rate_user_revs_query.__query_name__:
"""
SELECT
- r.rev_user,
+ r.rev_id,
r.rev_page,
r.rev_sha1,
r.rev_user_text
--
To view, visit https://gerrit.wikimedia.org/r/59264
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I16c30cf7b3e3edee3822aca33cdbcf12ae5b3f04
Gerrit-PatchSet: 1
Gerrit-Project: analytics/E3Analysis
Gerrit-Branch: master
Gerrit-Owner: Rfaulk <[email protected]>
Gerrit-Reviewer: DarTar <[email protected]>
Gerrit-Reviewer: Erosen <[email protected]>
Gerrit-Reviewer: Milimetric <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits