From 134e5cf56e84f7d6c2515b2861cbc919eb99c46e Mon Sep 17 00:00:00 2001 From: "Michael D. M. Dryden" Date: Mon, 9 May 2022 12:37:59 -0400 Subject: [PATCH] Add experiment UUID and ignore repeated experiment requests --- dstat_interface/core/daemon.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/dstat_interface/core/daemon.py b/dstat_interface/core/daemon.py index 4558466..368ddc1 100644 --- a/dstat_interface/core/daemon.py +++ b/dstat_interface/core/daemon.py @@ -131,10 +131,19 @@ class DStatDaemon(object): return {'status': 'done'} async def run(self): + received_commands = set() while True: command: str payload: dict - command, payload = pickle.loads(await self.socket_ctrl.arecv()) + received = pickle.loads(await self.socket_ctrl.arecv()) + if len(received) == 3: + exp_uuid, command, payload = received + if exp_uuid in received_commands: # Ignore previously handled commands + continue + logger.info('Got Experiment %s', exp_uuid) + received_commands.add(exp_uuid) + else: + command, payload = received await self.socket_ctrl.asend(pickle.dumps(await (self.command_map[command](payload)))) def close(self): -- GitLab