def __init__(self, host='', jobfile='', jobname='', master=None, disco_port=None, put_port=None, ddfs_data='', disco_data='', stage=None, group=None, grouping=None, taskid=-1): from disco.job import JobPack from disco.ddfs import DDFS self.host = host self.jobfile = jobfile self.jobname = jobname self.jobpack = JobPack.load(open(jobfile, 'rb')) self.jobobjs = dPickle.loads(self.jobpack.jobdata) self.master = master self.disco_port = disco_port self.put_port = put_port self.ddfs_data = ddfs_data self.disco_data = disco_data self.stage = stage self.group = '{0[0]}-{0[1]}'.format(group) self.group_label, self.group_host = group self.grouping = grouping self.taskid = taskid self.outputs = {} self.uid = '{0}:{1}-{2}-{3}-{4}'.format( self.stage, DDFS.safe_name(self.group), self.taskid, hexhash(str((time.time())).encode()), os.getpid())
def put(self, key, value): """ Stores an out-of-band result *value* with the key *key*. Key must be unique in this job. Maximum key length is 256 characters. Only characters in the set ``[a-zA-Z_\-:0-9@]`` are allowed in the key. """ if DDFS.safe_name(key) != key: raise DiscoError("OOB key contains invalid characters (%s)" % key) util.save_oob(self.master, self.jobname, key, value)
def put(self, key, value): """ Stores an out-of-band result *value* (bytes) with the key *key*. Key must be unique in this job. Maximum key length is 256 characters. Only characters in the set ``[a-zA-Z_\-:0-9@]`` are allowed in the key. """ from disco.ddfs import DDFS from disco.util import save_oob from disco.error import DiscoError if DDFS.safe_name(key) != key: raise DiscoError("OOB key contains invalid characters ({0})".format(key)) save_oob(self.master, self.jobname, key, value)
def __init__(self, host='', jobfile='', jobname='', master=None, disco_port=None, put_port=None, ddfs_data='', disco_data='', stage=None, group=None, grouping=None, taskid=-1): from disco.job import JobPack from disco.ddfs import DDFS self.host = host self.jobfile = jobfile self.jobname = jobname self.jobpack = JobPack.load(open(jobfile, 'rb')) self.jobobjs = dPickle.loads(self.jobpack.jobdata) self.master = master self.disco_port = disco_port self.put_port = put_port self.ddfs_data = ddfs_data self.disco_data = disco_data self.stage = stage self.group = '{0[0]}-{0[1]}'.format(group) self.group_label, self.group_host = group self.grouping = grouping self.taskid = taskid self.outputs = {} self.uid = '{0}:{1}-{2}-{3}-{4}'.format(self.stage, DDFS.safe_name(self.group), self.taskid, hexhash(str((time.time())).encode()), os.getpid())