use special id flag store data via persistentData_Server, made merge_arg_and_const_arg work with new 'id' used by PersistentData_Server

This commit is contained in:
Richard Hartmann 2015-01-29 14:11:22 +01:00
parent fa17cefe97
commit a81f15deb3
2 changed files with 7 additions and 3 deletions

View file

@ -67,7 +67,11 @@ def merge_arg_and_const_arg(arg, const_arg):
kwargs.update(arg) kwargs.update(arg)
# remove args as they have been constructed explicitly # remove args as they have been constructed explicitly
if 'args' in kwargs: if 'args' in kwargs:
kwargs.pop('args') del kwargs['args']
# remove id, when it comes from the persistentDataServer
if 'id' in kwargs:
del kwargs['id']
return args_dgl, kwargs return args_dgl, kwargs

View file

@ -85,10 +85,10 @@ class PersistentData_Server(JobManager_Server):
print("{}: overwriting existing data is DISABLED".format(self._identifier)) print("{}: overwriting existing data is DISABLED".format(self._identifier))
def process_new_result(self, arg, result): def process_new_result(self, arg, result):
self.pds[data_as_binary_key(arg)] = result self.pds[data_as_binary_key(arg.id)] = (arg, result)
def put_arg(self, a): def put_arg(self, a):
a_bin = data_as_binary_key(a) a_bin = data_as_binary_key(a.id)
if self.overwrite or (not a_bin in self.pds): if self.overwrite or (not a_bin in self.pds):
JobManager_Server.put_arg(self, a) JobManager_Server.put_arg(self, a)
return True return True