CDH-19292: Impala query on an HBase table takes almost same time as Hive

This commit fixes issue CDH-19292, where querying an HBase table takes
a significant amount of time if HBase has a large (>1K) number of
tables. The performance bottleneck is the call to HBase to retrieve the
table's metadata (column families) during the computation of row stats.
To resolve this issue we cache the column families in the catalog object
associated with an HBase table, so the expensive call to HBase only
happens the first time the table is queried. Subsequent calls use the
cached data.

Change-Id: I0203fee3e73d2a4304530fe0a1ba2cf163f39350
Reviewed-on: http://gerrit.ent.cloudera.com:8080/2672
Reviewed-by: Dimitris Tsirogiannis <dtsirogiannis@cloudera.com>
Reviewed-by: Lenni Kuff <lskuff@cloudera.com>
Tested-by: jenkins
IMPALA-1003: Speed up compute stats by avoiding null counting for all types and max/avg for fixed-size types.

Removing the Null counting as well as the MAX and AVG calculations
for the types of known size

Change-Id: If218b41fcde0b18218732675585d69342f34e544
Reviewed-on: http://gerrit.ent.cloudera.com:8080/2629
Reviewed-by: Ippokratis Pandis <ipandis@cloudera.com>
Tested-by: jenkins
Disable hive UDFs that use decimal in analysis.

Change-Id: Ifd3e134d0e8ba6ad054e5769da57c9a830ad74d2
Reviewed-on: http://gerrit.ent.cloudera.com:8080/2676
Reviewed-by: Alex Behm <alex.behm@cloudera.com>
Tested-by: jenkins
Move CodegenAnyVal to its own file.

This is needed by upcoming commits so we can #include anyval-util.h in
cross-compiled functions without pulling in all of LLVM in our IR
module (this causes build problems, plus our module will be huger than
necessary).

Change-Id: I756d5a95e5c254403d9ad5684fe27cf96f3aec1e
Reviewed-on: http://gerrit.ent.cloudera.com:8080/2677
Reviewed-by: Nong Li <nong@cloudera.com>
Tested-by: jenkins