[ https://issues.apache.org/jira/browse/HBASE-27668?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17694712#comment-17694712 ]
Hudson commented on HBASE-27668: -------------------------------- Results for branch master [build #785 on builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/785/]: (/) *{color:green}+1 overall{color}* ---- details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/785/General_20Nightly_20Build_20Report/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/785/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/785/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (/) {color:green}+1 client integration test{color} > PB's parseDelimitedFrom can successfully return when there are not enough > bytes > ------------------------------------------------------------------------------- > > Key: HBASE-27668 > URL: https://issues.apache.org/jira/browse/HBASE-27668 > Project: HBase > Issue Type: Bug > Components: Protobufs, wal > Reporter: Duo Zhang > Assignee: Duo Zhang > Priority: Critical > Fix For: 2.6.0, 3.0.0-alpha-4, 2.4.17, 2.5.4 > > > Found this when writing some UTs for parsing partial header and trailer, > WALHeader.parseDelimitedFrom can return successfully when there are only two > bytes in the stream(only the length, actually). > So I know why in the past we have a followingKvCount == 0 check in > ProtobufLogReader, as we just want to prevent the partial PB message. > This is a very critial problem, for me I think we should provide our own > implementation of parseDelimitedFrom for some critical usages, for example, > when reading WAL entries. If there are not enough data, we just throw > exception out instead of returning a partial PB message. -- This message was sent by Atlassian Jira (v8.20.10#820010)