Beispiel #1
0
 def SyncPartition(self, request, context):
     partition_id = request.partition_id
     response = dj_pb.SyncPartitionResponse()
     status = self._check_request(request.data_source_meta, request.rank_id,
                                  partition_id)
     response.status.MergeFrom(status)
     if response.status.code == 0:
         content_bytes = request.content_bytes
         if request.compressed:
             content_bytes = zlib.decompress(content_bytes)
         sync_content = dj_pb.SyncContent()
         sync_content.ParseFromString(content_bytes)
         filled, response.next_index, response.dumped_index = \
                 self._transmit_follower.add_synced_item(sync_content)
         if not filled:
             response.status.code = -4
             response.status.error_message = "item is not filled, expected "\
                                             "{}".format(response.next_index)
     return response
 def _serialize_sync_content(self, item):
     return dj_pb.SyncContent(data_block_meta=item).SerializeToString()
Beispiel #3
0
 def _make_sync_content(self, item):
     return dj_pb.SyncContent(
         packed_lite_example_ids=item.make_packed_lite_example_ids())
 def _serialize_sync_content(self, item):
     sync_ctnt = dj_pb.SyncContent(lite_example_ids=item.lite_example_ids)
     return sync_ctnt.SerializeToString()
Beispiel #5
0
 def _decode_sync_content(self, content_bytes, compressed):
     if compressed:
         content_bytes = zlib.decompress(content_bytes)
     sync_content = dj_pb.SyncContent()
     sync_content.ParseFromString(content_bytes)
     return sync_content
 def _make_sync_content(self, item):
     return dj_pb.SyncContent(data_block_meta=item)