This is an automated email from the ASF dual-hosted git repository. gcruz pushed a commit to branch gc/8472 in repository https://gitbox.apache.org/repos/asf/allura.git
commit 5f8f13c03d16a0a1da5c9774b7d4b0cbc3b872ce Author: Guillermo Cruz <[email protected]> AuthorDate: Wed Oct 5 16:32:59 2022 -0600 [#8472] update on how query is constructed --- ForgeActivity/forgeactivity/main.py | 32 +++++++++----------------------- 1 file changed, 9 insertions(+), 23 deletions(-) diff --git a/ForgeActivity/forgeactivity/main.py b/ForgeActivity/forgeactivity/main.py index f6f927383..9e9ea96d1 100644 --- a/ForgeActivity/forgeactivity/main.py +++ b/ForgeActivity/forgeactivity/main.py @@ -257,32 +257,18 @@ class ForgeActivityController(BaseController): # but only within a small time window, so we can do efficient searching activity_ts = activity._id.generation_time time_window = timedelta(hours=1) - log.info(f"Time Window - {time_window} Activity TS {activity_ts}") - log.info(f"plus 1 hr {activity_ts + time_window}") - log.info(f"minus 1 hr {activity_ts - time_window}") - all_copies = Activity.query.find({ + query = { '_id': { '$gt': ObjectId.from_datetime(activity_ts - time_window), '$lt': ObjectId.from_datetime(activity_ts + time_window), - }, - 'obj': activity.obj, - 'target': activity.target, - 'actor': activity.actor, - 'verb': activity.verb, - 'tags': activity.tags, - }).all() - log.info("Delete Activity Query") - log.info({ - '_id': { - '$gt': ObjectId.from_datetime(activity_ts - time_window), - '$lt': ObjectId.from_datetime(activity_ts + time_window), - }, - 'obj': activity.obj, - 'target': activity.target, - 'actor': activity.actor, - 'verb': activity.verb, - 'tags': activity.tags, - }) + } + } + query.update(variable_encode(activity.obj, prepend='obj')) + query.update(variable_encode(activity.target, prepend='target')) + query.update(variable_encode(activity.actor, prepend='actor')) + query.update(verb=activity.verb) + query.update(tags=activity.tags) + all_copies = Activity.query.find(query).all() log.info('Deleting %s copies of activity record: %s %s %s', len(all_copies), activity.actor.activity_url, activity.verb, activity.obj.activity_url) for activity in all_copies:
