[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13970396#comment-13970396 ] stack commented on HBASE-9299: -- An argument in favor of protoc'ing every time we build is that near half of our lines of code are generated (protobuf and some thrift) -- ~300k of 700k plus. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles >Assignee: Eric Charles > Fix For: 0.98.0, 0.96.0 > > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13753202#comment-13753202 ] Hudson commented on HBASE-9299: --- FAILURE: Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #700 (See [https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/700/]) HBASE-9299 Generate the protobuf classes with hadoop-maven-plugin (stack: rev 1518312) * /hbase/trunk/hbase-protocol/README.txt * /hbase/trunk/hbase-protocol/pom.xml * /hbase/trunk/hbase-protocol/src/main/protobuf/README.txt * /hbase/trunk/src/main/docbkx/developer.xml > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles >Assignee: Eric Charles > Fix For: 0.98.0, 0.96.0 > > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13753117#comment-13753117 ] Hudson commented on HBASE-9299: --- SUCCESS: Integrated in hbase-0.95-on-hadoop2 #276 (See [https://builds.apache.org/job/hbase-0.95-on-hadoop2/276/]) HBASE-9299 Generate the protobuf classes with hadoop-maven-plugin (stack: rev 1518313) * /hbase/branches/0.95/hbase-protocol/README.txt * /hbase/branches/0.95/hbase-protocol/pom.xml * /hbase/branches/0.95/hbase-protocol/src/main/protobuf/README.txt * /hbase/branches/0.95/src/main/docbkx/developer.xml > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles >Assignee: Eric Charles > Fix For: 0.98.0, 0.96.0 > > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13752919#comment-13752919 ] Hudson commented on HBASE-9299: --- SUCCESS: Integrated in HBase-TRUNK #4441 (See [https://builds.apache.org/job/HBase-TRUNK/4441/]) HBASE-9299 Generate the protobuf classes with hadoop-maven-plugin (stack: rev 1518312) * /hbase/trunk/hbase-protocol/README.txt * /hbase/trunk/hbase-protocol/pom.xml * /hbase/trunk/hbase-protocol/src/main/protobuf/README.txt * /hbase/trunk/src/main/docbkx/developer.xml > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles >Assignee: Eric Charles > Fix For: 0.98.0, 0.96.0 > > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13752910#comment-13752910 ] Hudson commented on HBASE-9299: --- SUCCESS: Integrated in hbase-0.95 #500 (See [https://builds.apache.org/job/hbase-0.95/500/]) HBASE-9299 Generate the protobuf classes with hadoop-maven-plugin (stack: rev 1518313) * /hbase/branches/0.95/hbase-protocol/README.txt * /hbase/branches/0.95/hbase-protocol/pom.xml * /hbase/branches/0.95/hbase-protocol/src/main/protobuf/README.txt * /hbase/branches/0.95/src/main/docbkx/developer.xml > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles >Assignee: Eric Charles > Fix For: 0.98.0, 0.96.0 > > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13750557#comment-13750557 ] Hadoop QA commented on HBASE-9299: -- {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12599614/HBASE-9299.patch against trunk revision . {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:red}-1 tests included{color}. The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. {color:green}+1 hadoop1.0{color}. The patch compiles against the hadoop 1.0 profile. {color:green}+1 javadoc{color}. The javadoc tool did not generate any warning messages. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 findbugs{color}. The patch does not introduce any new Findbugs (version 1.3.9) warnings. {color:red}-1 release audit{color}. The applied patch generated 2 release audit warnings (more than the trunk's current 0 warnings). {color:green}+1 lineLengths{color}. The patch does not introduce lines longer than 100 {color:green}+1 site{color}. The mvn site goal succeeds with this patch. {color:green}+1 core tests{color}. The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//testReport/ Release audit warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/patchReleaseAuditProblems.txt Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/6903//console This message is automatically generated. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles >Assignee: Eric Charles > Fix For: 0.98.0, 0.96.0 > > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13749313#comment-13749313 ] Eric Charles commented on HBASE-9299: - Hi [~saint@gmail.com] the plugin is commented out in the patch. + > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13748811#comment-13748811 ] stack commented on HBASE-9299: -- I don't want us running protoc on each build given we only work w/ 2.5 pb anyways so just comment out the plugin? > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13748728#comment-13748728 ] Eric Charles commented on HBASE-9299: - yes, protoc will be run at every build, putting the java file in target/..., that's how the plugins that generate work. but written in the README.txt, protoc is fast. The idea is to commit a plugin commented-in. So it will not be invoked. Only developers willing to run the plugin sould comment-out the definition. Does it make sense? Maybe you can write a clearer sentence? > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13748736#comment-13748736 ] Eric Charles commented on HBASE-9299: - (sorry, inverse -in and -out when you read my previous post) > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13748689#comment-13748689 ] stack commented on HBASE-9299: -- Patch is great except for addition of the hadoop plugin. It seems bound to the generate-sources phase so it will be run everytime? We don't want this (In your changes you seem so indicate that you can uncomment the plugin but it seems commented-in, not commented-out -- perhaps I missed something?). Thanks Eric. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > Attachments: HBASE-9299.patch > > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747785#comment-13747785 ] stack commented on HBASE-9299: -- +1 on README mention in dev section of refguide (and any edits to README you'd suggest). > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747736#comment-13747736 ] Nicolas Liochon commented on HBASE-9299: bq. http://hbase.apache.org/book/developer.html should also contain a section that explains how protobuf is used and what to do in case of change, and link to the README in the src. +1. I think the readme should be there. bq. http://hbase.apache.org/book/developer.html should also contain a section that explains how protobuf is used and what to do in case of change, and link to the README in the src. If protobuf allows it we could move faster than hadoop core. bq. Not sure to completelty understand "encapsulate the protoc version and would get it on the fly": The hadoop one is quite clever and depending on the protobuf.jar version, it fails fast if the protoc --version is not the same. Is this what you mean? I haven't noticed about the failfast. It's great :-). But what we should ideally have is something that does not require anything installed locally: like surefire for example: you don't have to install it locally. AFAIK it's not possible. bq. A bottom line would be to leave it as such and provide 2 ways to create the protobuf if needed: I like that. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747723#comment-13747723 ] Eric Charles commented on HBASE-9299: - I began using that plugin to allow me testing a various builds 2.4.1 (just like trunk was sometime ago) with 2.5. Using a Hbase (proto-2.4.1) againt a recent Hadoop (proto-2.5) was breaking the communication. Now that HBase trunk uses proto-2.5, it is easier and the added-value of the maven plugin makes less sense. Btw, I tested hbase trunk (proto 2.5) agains hadoop 1.2.1, 2.0.5, and 3.0, it all works fine. For the doc, I would have indeed put that in a README, but just under hbase-protocol. The current README.txt is a bit too general. I should contain the exacts command to copy/paste and run with the I and java_out params. http://hbase.apache.org/book/developer.html should also contain a section that explains how protobuf is used and what to do in case of change, and link to the README in the src. Once we agree on what to do, I am happy to submit a patch that implements our decisions. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747726#comment-13747726 ] Eric Charles commented on HBASE-9299: - Also, do we know what are the expected changes on the protobuf version evolution? I guess this is more a matter to follow the hadoop ones. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747587#comment-13747587 ] stack commented on HBASE-9299: -- One issue to consider is that our code has actually moved to depend on pb2.5. We make use of the new PARSER define and a few APIs not in 2.4.1. Doc on how to generate is in hbase-protocol/src/main/protos/README.txt. Is it too deeply buried [~echarles]? We should surface it more? Into the pom? Thanks for looking into this [~echarles] > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747581#comment-13747581 ] Eric Charles commented on HBASE-9299: - I agree with Nicolas arguments, still the barrier to be a time to time contributor is just already so high now, that protoc is not too much... A bottom line would be to leave it as such and provide 2 ways to create the protobuf if needed: - document the command line. - put in the pom the commented directive to build (and document that that one can uncomment these to test new interfaces). Not sure to completelty understand "encapsulate the protoc version and would get it on the fly": The hadoop one is quite clever and depending on the protobuf.jar version, it fails fast if the protoc --version is not the same. Is this what you mean? > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin
[ https://issues.apache.org/jira/browse/HBASE-9299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13747405#comment-13747405 ] Nicolas Liochon commented on HBASE-9299: I use the first two approaches, I personally prefer the first to the second. I would not -1 the second, I can live with it, but I prefer the first one because: - for contributors fixing a bug from time to time, they don't need to know about protoc: they usually don't change the interface. - for myself, when I have issues with the last build, I can compared with the apache build w/o thinking about protoc. I have to think about it only when I modify the interfaces (and yes it's badly documented). I would love a plugin that would encapsulate the protoc version and would get it on the fly (i.e. a real plugin, not a wrapper...), but I haven't found one. > Generate the protobuf classes with hadoop-maven-plugin > -- > > Key: HBASE-9299 > URL: https://issues.apache.org/jira/browse/HBASE-9299 > Project: HBase > Issue Type: New Feature >Reporter: Eric Charles > > For now, the protobuf classes are generated once by a dev, and put in > src/main/resouce. > This allows the other dev to not have the correct protoc version available on > their machine. However, when a dev wants to modify the protoc messages, he > has to know how to generate the classes. This could be documented... > Another approach would be to put a harder requirement on the hbase developers > (protoc available) and let the hadoop-maven-plugin > (http://central.maven.org/maven2/org/apache/hadoop/hadoop-maven-plugins/2.0.5-alpha) > to do the work (I have bad experience with other maven protobuf plugins, the > hadoop one works just out of the box). > I don't think asking to install protoc to build hbase is so difficult, but > that's an additional step between the dev and the artifcat. > The advantage would be to allow to have different protobuf versions for > different hbase distributions (perfectly possible but quite theorical). > So > option 1: We are happy to keep the classes in src/main/java > option 2: We want to move to hadoop-maven-plugin > option 3: I may be short of idea... any other input? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira