'Backup data chunk based on the object metadata and offset.'

def _backup_chunk(self, backup, container, data, data_offset, object_meta, extra_metadata):

    object_prefix = object_meta['prefix']
    object_list = object_meta['list']
    object_id = object_meta['id']
    object_name = ('%s-%05d' % (object_prefix, object_id))
    obj = {}
    obj[object_name] = {}
    obj[object_name]['offset'] = data_offset
    obj[object_name]['length'] = len(data)
    LOG.debug('Backing    up    chunk    of    data    from    volume.')
    (algorithm, output_data) = self._prepare_output_data(data)
    obj[object_name]['compression'] = algorithm
    LOG.debug('About    to    put_object')
    with self.get_object_writer(container, object_name, extra_metadata=extra_metadata) as writer:
        writer.write(output_data)
    md5 = hashlib.md5(data).hexdigest()
    obj[object_name]['md5'] = md5
    LOG.debug('backup    MD5    for    %(object_name)s:    %(md5)s', {'object_name': object_name, 'md5': md5})
    object_list.append(obj)
    object_id += 1
    object_meta['list'] = object_list
    object_meta['id'] = object_id
    LOG.debug('Calling    eventlet.sleep(0)')
    eventlet.sleep(0)
