MCPcopy Create free account
hub / github.com/apache/impala / PrepareForSend

Method PrepareForSend

be/src/runtime/outbound-row-batch.cc:25–43  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23namespace impala {
24
25Status OutboundRowBatch::PrepareForSend(int num_tuples_per_row,
26 TrackedString* compression_scratch, bool used_append_row) {
27 if (used_append_row) {
28 DCHECK_GE(tuple_data_.size(), tuple_data_offset_);
29 tuple_data_.resize(tuple_data_offset_);
30 } else {
31 DCHECK_EQ(tuple_data_offset_, 0);
32 }
33 bool is_compressed = false;
34 int64_t uncompressed_size = tuple_data_.size();
35 if (uncompressed_size > 0 && compression_scratch != nullptr) {
36 RETURN_IF_ERROR(TryCompress(compression_scratch, &is_compressed));
37 }
38 int num_tuples = tuple_offsets_.size();
39 DCHECK_EQ(num_tuples % num_tuples_per_row, 0);
40 int num_rows = num_tuples / num_tuples_per_row;
41 SetHeader(num_rows, num_tuples_per_row, uncompressed_size, is_compressed);
42 return Status::OK();
43}
44
45Status OutboundRowBatch::TryCompress(TrackedString* compression_scratch,
46 bool* is_compressed) {

Callers 3

SerializeMethod · 0.80
ToOutboundRowBatchMethod · 0.80
PrepareBatchForSendMethod · 0.80

Calls 3

OKFunction · 0.85
resizeMethod · 0.80
sizeMethod · 0.45

Tested by

no test coverage detected