From ec1aac46e4beeac5103a1359ed782cb9054e6284 Mon Sep 17 00:00:00 2001 From: Ramkrishna Chakrabarty Date: Mon, 7 Dec 2009 14:45:09 -0500 Subject: [PATCH] AMQP listener now updates request_event table when all samples have finished processing --- .../galaxy_messaging/server/galaxydb_interface.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/scripts/galaxy_messaging/server/galaxydb_interface.py b/scripts/galaxy_messaging/server/galaxydb_interface.py index 75f63f8d31c..b8bf5cc92e1 100644 --- a/scripts/galaxy_messaging/server/galaxydb_interface.py +++ b/scripts/galaxy_messaging/server/galaxydb_interface.py @@ -33,6 +33,7 @@ class GalaxyDbInterface(object): self.event_table = Table('sample_event', self.metadata, autoload=True ) self.sample_table = Table('sample', self.metadata, autoload=True ) self.request_table = Table('request', self.metadata, autoload=True ) + self.request_event_table = Table('request_event', self.metadata, autoload=True ) self.state_table = Table('sample_state', self.metadata, autoload=True ) def get_sample_id(self, field_name='bar_code', value=None): @@ -118,12 +119,13 @@ class GalaxyDbInterface(object): break if request_complete: request_state = 'Complete' - else: - request_state = 'Submitted' - log.debug('Updating request_id %i state to "%s"' % (self.request_id, request_state)) - i = self.request_table.update(whereclause=self.request_table.c.id==self.request_id, - values={self.request_table.c.state: request_state}) - i.execute() + log.debug('Updating request_id %i state to "%s"' % (self.request_id, request_state)) + i = self.request_event_table.insert() + i.execute(update_time=datetime.utcnow(), + create_time=datetime.utcnow(), + request_id=self.request_id, + state=request_state, + comment='All samples of this request have finished processing.')