wangbo commented on a change in pull request #1816: v2 segment support string
encode(#1766)
URL: https://github.com/apache/incubator-doris/pull/1816#discussion_r326886604
##########
File path: be/src/olap/rowset/segment_v2/binary_dict_page.h
##########
@@ -116,6 +116,10 @@ class BinaryDictPageDecoder : public PageDecoder {
return _data_page_decoder->current_index();
}
+ bool is_dict_encoding();
+
+ void set_dict_decoder(std::shared_ptr<BinaryPlainPageDecoder>
dict_decoder);
Review comment:
using BinaryDictPageDecoder's constructor to set dict page decoder means
first need to decode slice data header to check whether current page is dict
encoding or not,so there is two ways to do it:
1. decode slice data header in FileColumnIterator and getting the encode
type,construct dict page decoder and set it to PageDecoderOptions;It works but
"decode slice data header" will be done twice
2. decode slice data header and settting the encode type PageDecoderOptions,
BinaryDictPageDecoder's no longer to decode the slice data header;but this will
change the logic of BinaryDictPageDecoder->init
so I think first call BinaryDictPageDecoder->init to get encoding type and
then set dict page decoder to BinaryDictPageDecoder is better
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]