From 6b87a121b07b9f908190d43754846013b1e67892 Mon Sep 17 00:00:00 2001 From: John Kerl Date: Wed, 22 Dec 2021 20:01:16 -0500 Subject: [PATCH] Copy-reduction in CSV/CSV-lite record-readers; very minor perf improvement --- internal/pkg/input/record_reader_csv.go | 2 +- internal/pkg/input/record_reader_csvlite.go | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/pkg/input/record_reader_csv.go b/internal/pkg/input/record_reader_csv.go index 05c945c11..a5f89b5a5 100644 --- a/internal/pkg/input/record_reader_csv.go +++ b/internal/pkg/input/record_reader_csv.go @@ -252,7 +252,7 @@ func (reader *RecordReaderCSV) getRecordBatch( // if header shorter than data: use 1-up itoa keys key := strconv.Itoa(i + 1) value := mlrval.FromDeferredType(csvRecord[i]) - record.PutCopy(key, value) + record.PutReference(key, value) } if nh > nd { // if header longer than data: use "" values diff --git a/internal/pkg/input/record_reader_csvlite.go b/internal/pkg/input/record_reader_csvlite.go index 6e6939400..eaf26b5f3 100644 --- a/internal/pkg/input/record_reader_csvlite.go +++ b/internal/pkg/input/record_reader_csvlite.go @@ -247,7 +247,7 @@ func getRecordBatchExplicitCSVHeader( if !reader.readerOptions.AllowRaggedCSVInput { for i, field := range fields { value := mlrval.FromDeferredType(field) - record.PutCopy(reader.headerStrings[i], value) + record.PutReference(reader.headerStrings[i], value) } } else { nh := len(reader.headerStrings) @@ -256,14 +256,14 @@ func getRecordBatchExplicitCSVHeader( var i int for i = 0; i < n; i++ { value := mlrval.FromDeferredType(fields[i]) - record.PutCopy(reader.headerStrings[i], value) + record.PutReference(reader.headerStrings[i], value) } if nh < nd { // if header shorter than data: use 1-up itoa keys for i = nh; i < nd; i++ { key := strconv.Itoa(i + 1) value := mlrval.FromDeferredType(fields[i]) - record.PutCopy(key, value) + record.PutReference(key, value) } } if nh > nd { @@ -364,7 +364,7 @@ func getRecordBatchImplicitCSVHeader( if !reader.readerOptions.AllowRaggedCSVInput { for i, field := range fields { value := mlrval.FromDeferredType(field) - record.PutCopy(reader.headerStrings[i], value) + record.PutReference(reader.headerStrings[i], value) } } else { nh := len(reader.headerStrings) @@ -373,13 +373,13 @@ func getRecordBatchImplicitCSVHeader( var i int for i = 0; i < n; i++ { value := mlrval.FromDeferredType(fields[i]) - record.PutCopy(reader.headerStrings[i], value) + record.PutReference(reader.headerStrings[i], value) } if nh < nd { // if header shorter than data: use 1-up itoa keys key := strconv.Itoa(i + 1) value := mlrval.FromDeferredType(fields[i]) - record.PutCopy(key, value) + record.PutReference(key, value) } if nh > nd { // if header longer than data: use "" values