client: fix extra construction of ColumnSchema

The VARCHAR patches introduced a line 'auto col = schema.column(idx)'
which ends up making a copy of the ColumnSchema object instead of taking
a reference to it. This is unnecessary and quite slow. This shows up as
a significant CPU consumer when running tpch_real_world insert workload.

Change-Id: Iafae805979495e7e15c5294a317d6e00255654e0
Reviewed-on: http://gerrit.cloudera.org:8080/15787
Reviewed-by: Andrew Wong <awong@cloudera.com>
Tested-by: Kudu Jenkins
diff --git a/src/kudu/common/partial_row.cc b/src/kudu/common/partial_row.cc
index 5a10476..8b3096a 100644
--- a/src/kudu/common/partial_row.cc
+++ b/src/kudu/common/partial_row.cc
@@ -415,7 +415,7 @@
 }
 
 Status KuduPartialRow::SetVarcharNoCopyUnsafe(int col_idx, const Slice& val) {
-  auto col = schema_->column(col_idx);
+  const auto& col = schema_->column(col_idx);
   if (val.size() > col.type_attributes().length * 4) {
     return Status::InvalidArgument(
         Substitute("Value too long, limit is $0 characters",
@@ -433,7 +433,7 @@
 
 template<typename T>
 Status KuduPartialRow::SetSliceCopy(int col_idx, const Slice& val) {
-  auto col = schema_->column(col_idx);
+  const auto& col = schema_->column(col_idx);
   Slice relocated_val;
   switch (T::type) {
     case VARCHAR: