[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17095820#comment-17095820 ] Hudson commented on HBASE-23833: Results for branch branch-2.2 [build #850 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.2/850/]: (x) *{color:red}-1 overall{color}* details (if available): (x) {color:red}-1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.2/850//General_Nightly_Build_Report/] (x) {color:red}-1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.2/850//JDK8_Nightly_Build_Report_(Hadoop2)/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.2/850//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (/) {color:green}+1 client integration test{color} > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > Fix For: 3.0.0, 2.3.0 > > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17086320#comment-17086320 ] Hudson commented on HBASE-23833: Results for branch branch-2.3 [build #41 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.3/41/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.3/41/General_20Nightly_20Build_20Report/] (/) {color:green}+1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.3/41/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.3/41/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.3/41/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} > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > Fix For: 3.0.0, 2.3.0 > > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17086190#comment-17086190 ] Hudson commented on HBASE-23833: Results for branch branch-2 [build #2616 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2616/]: (/) *{color:green}+1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2616/General_20Nightly_20Build_20Report/] (/) {color:green}+1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2616/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2616/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2616/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} > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > Fix For: 3.0.0, 2.3.0 > > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17085247#comment-17085247 ] Wei-Chiu Chuang commented on HBASE-23833: - Opened PR #1534 and #1535 to get this into the respective branches. The cherrypick are both clean. I intend to get HBase 2.2 to support Hadoop 3.3.0. If not, I'd be equally happy to see HBase 2.3 or 2.4 support Hadoop 3.3.0 > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.Descriptors > not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java:[323,64] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.PipelineAckProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.java:[209,68]
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17079343#comment-17079343 ] Hudson commented on HBASE-23833: Results for branch master [build #1693 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/master/1693/]: (x) *{color:red}-1 overall{color}* details (if available): (x) {color:red}-1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/master/1693/General_20Nightly_20Build_20Report/] (x) {color:red}-1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/master/1693/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/master/1693/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://builds.apache.org/job/HBase%20Nightly/job/master/1693/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} > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17078581#comment-17078581 ] Michael Stack commented on HBASE-23833: --- I merged to master. We need this on branch-2 and branch-2.3 too [~weichiu]? (Sorry for letting this one lapse). > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.Descriptors > not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java:[323,64] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.PipelineAckProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.java:[209,68] > invalid method reference > [ERROR] non-static method get() cannot be referenced from a static context >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17062954#comment-17062954 ] Michael Stack commented on HBASE-23833: --- [~weichiu] I wrote the above before thorough review of your PR. Your PR, as you say, might be best thing for now. Bringing back the hadoop-compat for just one class might be heavy-weight/overkill. We should wait for more hadoop33 specializations? Only question I have around the PR is perf. As best as I can see, its all static done at class loading but for one method that has to be done inline w/ a call. What you think for friction this technique adds? > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.Descriptors > not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java:[323,64] > incompatible types: >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17062943#comment-17062943 ] Wei-Chiu Chuang commented on HBASE-23833: - Thanks [~stack] for your time! Hadoop 3.3.0 migrates to Protobuf 3.7.1. Initially I thought, another approach to this (and perhaps easier solution), is to ship another version of hbase-shaded-netty. The trick is to relocate the reference of com.google.protobuf.* classes in hbase-shaded-netty to point to org.apache.hadoop.thirdparty.protobuf.* The problem is that netty is not only used for HBase-to-HDFS communication, but also HBase internal communication. What you suggested makes more sense. And it's not entirely crazy (no more crazier than the reflection hack in the whole FanOut stuff :) ) I'll study it further. > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.Descriptors > not found > [ERROR] >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17062290#comment-17062290 ] Michael Stack commented on HBASE-23833: --- Thanks [~weichiu] So, need two versions of FanOutOneBlock* class. One for use with hadoop-3.3 and another for older versions? We used to have to do crazy stuff when hadoop1 vs hadoop2. We had whole system for making it so hbase would select either hadoop1 compat metrics system or hadoop2 at compile time using profiles; a hadoop1 and hadoop2 profile. You can see the vestiges still; we have hbase-hadoop-compat module which is "Interfaces" and they "implementations" of which there is only one now, hbase-hadoop2-compat. Should we figure how to move the FanOut* stuff to hbase-hadoop-compat and then add a hbase-hadoop33-compat w/ impl that uses the hadoop internal pbs? I left some comments on your PR too. Thanks for having a go at this one. > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Assignee: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors >
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17060554#comment-17060554 ] Wei-Chiu Chuang commented on HBASE-23833: - Correction: still reproducible. Use {{mvn clean install -Dhadoop.profile=3.0 -Dhadoop-three.version=3.3.0-SNAPSHOT}}. > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.Descriptors > not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java:[323,64] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.PipelineAckProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.java:[209,68] > invalid method reference > [ERROR] non-static method get() cannot be referenced from a static context > {noformat} -- This message was sent
[jira] [Commented] (HBASE-23833) The relocated hadoop-thirdparty protobuf breaks HBase asyncwal
[ https://issues.apache.org/jira/browse/HBASE-23833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17060548#comment-17060548 ] Wei-Chiu Chuang commented on HBASE-23833: - not sure what changed but this is no longer reproducible, at least in branch master. > The relocated hadoop-thirdparty protobuf breaks HBase asyncwal > -- > > Key: HBASE-23833 > URL: https://issues.apache.org/jira/browse/HBASE-23833 > Project: HBase > Issue Type: Bug > Components: wal >Affects Versions: 3.0.0 >Reporter: Wei-Chiu Chuang >Priority: Major > > Hadoop trunk (3.3.0) shaded protobuf and moved it to hadoop-thirdparty. As > the result, hbase asyncwal fails to compile because asyncwal uses the > Hadoop's protobuf objects. > The following command > {code} > mvn clean install -Dhadoop.profile=3.0 -Dhadoop.version=3.3.0-SNAPSHOT > {code} > fails with the following error: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile > (default-compile) on project hbase-server: Compilation failure: Compilation > failure: > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[361,44] > cannot access org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.MessageOrBuilder not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[362,14] > cannot access org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.GeneratedMessageV3 not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[366,16] > cannot access org.apache.hadoop.thirdparty.protobuf.ByteString > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.ByteString not > found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[375,12] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputSaslHelper.java:[702,81] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.DataTransferEncryptorMessageProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[314,66] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.BlockOpResponseProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[330,81] > cannot access org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum > [ERROR] class file for > org.apache.hadoop.thirdparty.protobuf.ProtocolMessageEnum not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[380,10] > cannot find symbol > [ERROR] symbol: method > writeDelimitedTo(org.apache.hbase.thirdparty.io.netty.buffer.ByteBufOutputStream) > [ERROR] location: variable proto of type > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.OpWriteBlockProto > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutputHelper.java:[422,77] > cannot access org.apache.hadoop.thirdparty.protobuf.Descriptors > [ERROR] class file for org.apache.hadoop.thirdparty.protobuf.Descriptors > not found > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java:[323,64] > incompatible types: > org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.PipelineAckProto > cannot be converted to com.google.protobuf.MessageLite > [ERROR] > /Users/weichiu/sandbox/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/SyncReplicationWALProvider.java:[209,68] > invalid method reference > [ERROR] non-static method get() cannot be referenced from a static context > {noformat} -- This message was sent by Atlassian Jira