Tim Armstrong has uploaded a new patch set (#7).

Change subject: Reduce dependencies on inline header functions
......................................................................

Reduce dependencies on inline header functions

This patch helps reduce compile times when modifying function
implementations in decimal-value.h, e.g. when tuning the implementations
of decimal operators. decimal-value.h was included in many places that
only need to know about the layout of DecimalValue, not the
implementation of decimal operations. It was included indirectly in many
files, e.g. via runtime-state.h.

The patch moves those functions to decimal-value.inline.h and is able to
avoid including decimal-value.inline.h in most headers. We also need to
do the same thing for raw-value.h and runtime-filter.h, because some
of the inline functions in raw-value.h referenced inline functions in
decimal-value.h, and functions in runtime-filter.h referenced inline
functions in runtime-filter.h.

It also moves timestamp parsing logic from .h to .cc file. This slightly
reduces the size of the llvm bitcode module and should slightly reduce
compile times. The functions are too large to benefit from inlining in
generated code.

Change-Id: Ic7a2f388cd14a4427c43af2724340a2ffe8fae3d
---
M be/src/benchmarks/hash-benchmark.cc
M be/src/benchmarks/overflow-benchmark.cc
M be/src/codegen/llvm-codegen-test.cc
M be/src/common/init.cc
M be/src/exec/hash-table.cc
M be/src/exec/hbase-table-writer.cc
M be/src/exec/hdfs-avro-scanner-ir.cc
M be/src/exec/hdfs-avro-table-writer.cc
M be/src/exec/hdfs-parquet-scanner.cc
M be/src/exec/hdfs-parquet-table-writer.cc
M be/src/exec/hdfs-rcfile-scanner.cc
M be/src/exec/hdfs-scan-node.cc
M be/src/exec/hdfs-scanner.cc
M be/src/exec/hdfs-sequence-table-writer.cc
M be/src/exec/hdfs-table-sink.cc
M be/src/exec/hdfs-text-scanner.cc
M be/src/exec/hdfs-text-table-writer.cc
M be/src/exec/old-hash-table.cc
M be/src/exec/parquet-common.h
M be/src/exec/partitioned-aggregation-node-ir.cc
M be/src/exec/partitioned-aggregation-node.cc
M be/src/exec/partitioned-hash-join-node.cc
M be/src/exec/select-node.cc
M be/src/exec/topn-node.cc
M be/src/exprs/agg-fn-evaluator.cc
M be/src/exprs/aggregate-functions.cc
M be/src/exprs/anyval-util.h
M be/src/exprs/cast-functions.cc
M be/src/exprs/decimal-operators.cc
M be/src/exprs/decimal-operators.h
M be/src/exprs/expr-context.cc
M be/src/exprs/expr-test.cc
M be/src/exprs/expr-value.h
M be/src/exprs/expr.cc
M be/src/exprs/expr.h
M be/src/exprs/literal.cc
M be/src/exprs/math-functions.cc
M be/src/exprs/operators.cc
M be/src/exprs/slot-ref.cc
M be/src/exprs/timestamp-functions.cc
M be/src/exprs/timestamp-functions.h
M be/src/runtime/buffered-tuple-stream-test.cc
M be/src/runtime/buffered-tuple-stream.cc
M be/src/runtime/data-stream-mgr.cc
M be/src/runtime/data-stream-sender.cc
M be/src/runtime/data-stream-test.cc
M be/src/runtime/decimal-test.cc
M be/src/runtime/decimal-value.h
A be/src/runtime/decimal-value.inline.h
M be/src/runtime/raw-value-ir.cc
M be/src/runtime/raw-value-test.cc
M be/src/runtime/raw-value.cc
M be/src/runtime/raw-value.h
A be/src/runtime/raw-value.inline.h
M be/src/runtime/row-batch-serialize-test.cc
M be/src/runtime/runtime-filter.cc
M be/src/runtime/runtime-filter.h
A be/src/runtime/runtime-filter.inline.h
M be/src/runtime/string-value.h
M be/src/runtime/string-value.inline.h
M be/src/runtime/timestamp-parse-util.cc
M be/src/runtime/timestamp-parse-util.h
M be/src/runtime/timestamp-test.cc
M be/src/runtime/timestamp-value.cc
M be/src/runtime/timestamp-value.h
M be/src/service/hs2-util.cc
M be/src/service/impala-beeswax-server.cc
M be/src/service/impala-hs2-server.cc
M be/src/util/debug-util.cc
M be/src/util/decimal-util.h
M be/src/util/tuple-row-compare.h
71 files changed, 1,637 insertions(+), 1,364 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala refs/changes/85/2485/7
-- 
To view, visit http://gerrit.cloudera.org:8080/2485
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic7a2f388cd14a4427c43af2724340a2ffe8fae3d
Gerrit-PatchSet: 7
Gerrit-Project: Impala
Gerrit-Branch: cdh5-trunk
Gerrit-Owner: Tim Armstrong <[email protected]>
Gerrit-Reviewer: Michael Ho <[email protected]>
Gerrit-Reviewer: Skye Wanderman-Milne <[email protected]>
Gerrit-Reviewer: Tim Armstrong <[email protected]>

Reply via email to