impala-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Armstrong (Code Review)" <ger...@cloudera.org>
Subject [Impala-CR](cdh5-trunk) Reduce dependencies on inline header functions
Date Tue, 15 Mar 2016 17:53:09 GMT
Hello Michael Ho, Skye Wanderman-Milne,

I'd like you to reexamine a change.  Please visit

    http://gerrit.cloudera.org:8080/2485

to look at the new patch set (#12).

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 will 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-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
70 files changed, 1,636 insertions(+), 1,364 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala refs/changes/85/2485/12
-- 
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: 12
Gerrit-Project: Impala
Gerrit-Branch: cdh5-trunk
Gerrit-Owner: Tim Armstrong <tarmstrong@cloudera.com>
Gerrit-Reviewer: Dan Hecht <dhecht@cloudera.com>
Gerrit-Reviewer: Michael Ho <kwho@cloudera.com>
Gerrit-Reviewer: Skye Wanderman-Milne <skye@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <tarmstrong@cloudera.com>

Mime
View raw message