This is an automated email from the ASF dual-hosted git repository. lqc pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/pinot.git
The following commit(s) were added to refs/heads/master by this push: new 96bf1831b5 Retain boolean type from CLPLogRecordExtractor decoder. (#14497) 96bf1831b5 is described below commit 96bf1831b58e6f520696b72b86b5650ab50ef306 Author: Jack Luo <jlu...@ext.uber.com> AuthorDate: Thu Nov 21 03:41:10 2024 +0800 Retain boolean type from CLPLogRecordExtractor decoder. (#14497) --- .../plugin/inputformat/clplog/CLPLogRecordExtractor.java | 11 +++++++++++ .../plugin/inputformat/clplog/CLPLogRecordExtractorTest.java | 4 ++++ 2 files changed, 15 insertions(+) diff --git a/pinot-plugins/pinot-input-format/pinot-clp-log/src/main/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractor.java b/pinot-plugins/pinot-input-format/pinot-clp-log/src/main/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractor.java index 16ca7749ba..764a03d537 100644 --- a/pinot-plugins/pinot-input-format/pinot-clp-log/src/main/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractor.java +++ b/pinot-plugins/pinot-input-format/pinot-clp-log/src/main/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractor.java @@ -129,6 +129,17 @@ public class CLPLogRecordExtractor extends BaseRecordExtractor<Map<String, Objec return to; } + /** + * In addition to the basic conversion, we also needs to retain the type info of Boolean input. + */ + @Override + protected Object convertSingleValue(Object value) { + if (value instanceof Boolean) { + return value; + } + return super.convertSingleValue(value); + } + /** * Encodes a field with CLP * <p></p> diff --git a/pinot-plugins/pinot-input-format/pinot-clp-log/src/test/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractorTest.java b/pinot-plugins/pinot-input-format/pinot-clp-log/src/test/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractorTest.java index 72058be345..0ad198fe18 100644 --- a/pinot-plugins/pinot-input-format/pinot-clp-log/src/test/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractorTest.java +++ b/pinot-plugins/pinot-input-format/pinot-clp-log/src/test/java/org/apache/pinot/plugin/inputformat/clplog/CLPLogRecordExtractorTest.java @@ -43,6 +43,8 @@ public class CLPLogRecordExtractorTest { private static final int _TIMESTAMP_FIELD_VALUE = 10; private static final String _LEVEL_FIELD_NAME = "level"; private static final String _LEVEL_FIELD_VALUE = "INFO"; + private static final String _BOOLEAN_FIELD_NAME = "booleanField"; + private static final boolean _BOOLEAN_FIELD_VALUE = true; private static final String _MESSAGE_1_FIELD_NAME = "message1"; private static final String _MESSAGE_1_FIELD_VALUE = "Started job_123 on node-987: 4 cores, 8 threads and " + "51.4% memory used."; @@ -105,6 +107,7 @@ public class CLPLogRecordExtractorTest { row = extract(props, null); assertEquals(row.getValue(_TIMESTAMP_FIELD_NAME), _TIMESTAMP_FIELD_VALUE); assertEquals(row.getValue(_LEVEL_FIELD_NAME), _LEVEL_FIELD_VALUE); + assertEquals(row.getValue(_BOOLEAN_FIELD_NAME), _BOOLEAN_FIELD_VALUE); validateClpEncodedField(row, _MESSAGE_1_FIELD_NAME, _MESSAGE_1_FIELD_VALUE); validateClpEncodedField(row, _MESSAGE_2_FIELD_NAME, _MESSAGE_2_FIELD_VALUE); } @@ -153,6 +156,7 @@ public class CLPLogRecordExtractorTest { record.put(_MESSAGE_1_FIELD_NAME, _MESSAGE_1_FIELD_VALUE); record.put(_MESSAGE_2_FIELD_NAME, _MESSAGE_2_FIELD_VALUE); record.put(_LEVEL_FIELD_NAME, _LEVEL_FIELD_VALUE); + record.put(_BOOLEAN_FIELD_NAME, _BOOLEAN_FIELD_VALUE); GenericRow row = new GenericRow(); extractor.extract(record, row); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org