SaintBacchus commented on code in PR #16055: URL: https://github.com/apache/doris/pull/16055#discussion_r1091350517
########## be/src/vec/exec/format/csv/csv_reader.cpp: ########## @@ -88,14 +88,18 @@ CsvReader::~CsvReader() = default; Status CsvReader::init_reader(bool is_load) { // set the skip lines and start offset int64_t start_offset = _range.start_offset; - if (start_offset == 0 && _params.__isset.file_attributes && - _params.file_attributes.__isset.header_type && - _params.file_attributes.header_type.size() > 0) { - std::string header_type = to_lower(_params.file_attributes.header_type); - if (header_type == BeConsts::CSV_WITH_NAMES) { - _skip_lines = 1; - } else if (header_type == BeConsts::CSV_WITH_NAMES_AND_TYPES) { - _skip_lines = 2; + if (start_offset == 0) { + // check header typer first + if (_params.__isset.file_attributes && _params.file_attributes.__isset.header_type && + _params.file_attributes.header_type.size() > 0) { + std::string header_type = to_lower(_params.file_attributes.header_type); + if (header_type == BeConsts::CSV_WITH_NAMES) { + _skip_lines = 1; + } else if (header_type == BeConsts::CSV_WITH_NAMES_AND_TYPES) { + _skip_lines = 2; + } + } else if (_params.file_attributes.__isset.skip_lines) { Review Comment: No need to check `_params.__isset.file_attributes` in my PR since it's will alwasy be set in fe code. But for the compatibility, I think it's better to check for any optional field in the thrift. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org