You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by jl...@apache.org on 2019/01/20 20:51:26 UTC
[incubator-pinot] branch master updated: Fix SegmentConverter to
handle virtual column (#3711)
This is an automated email from the ASF dual-hosted git repository.
jlli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pinot.git
The following commit(s) were added to refs/heads/master by this push:
new 8a231a6 Fix SegmentConverter to handle virtual column (#3711)
8a231a6 is described below
commit 8a231a636dd3c3a12740a4082ae04d67730171d2
Author: Jialiang Li <jl...@linkedin.com>
AuthorDate: Sun Jan 20 12:51:21 2019 -0800
Fix SegmentConverter to handle virtual column (#3711)
---
.../org/apache/pinot/core/data/readers/PinotSegmentRecordReader.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/pinot-core/src/main/java/org/apache/pinot/core/data/readers/PinotSegmentRecordReader.java b/pinot-core/src/main/java/org/apache/pinot/core/data/readers/PinotSegmentRecordReader.java
index 38bde67..f00d1d1 100644
--- a/pinot-core/src/main/java/org/apache/pinot/core/data/readers/PinotSegmentRecordReader.java
+++ b/pinot-core/src/main/java/org/apache/pinot/core/data/readers/PinotSegmentRecordReader.java
@@ -35,6 +35,7 @@ import org.apache.pinot.core.data.readers.sort.PinotSegmentSorter;
import org.apache.pinot.core.data.readers.sort.SegmentSorter;
import org.apache.pinot.core.indexsegment.immutable.ImmutableSegment;
import org.apache.pinot.core.indexsegment.immutable.ImmutableSegmentLoader;
+import org.apache.pinot.core.segment.index.SegmentMetadataImpl;
/**
@@ -72,7 +73,9 @@ public class PinotSegmentRecordReader implements RecordReader {
SegmentMetadata segmentMetadata = _immutableSegment.getSegmentMetadata();
_numDocs = segmentMetadata.getTotalRawDocs();
if (schema == null) {
- _schema = segmentMetadata.getSchema();
+ // In order not to expose virtual columns to client, schema shouldn't be fetched from segmentMetadata;
+ // otherwise the original metadata will be modified. Hence, initialize a new schema.
+ _schema = new SegmentMetadataImpl(indexDir).getSchema();
Collection<String> columnNames = _schema.getColumnNames();
_columnReaderMap = new HashMap<>(columnNames.size());
for (String columnName : columnNames) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org