[jira] [Commented] (HBASE-9299) Generate the protobuf classes with hadoop-maven-plugin

2014-04-15 Thread stack (JIRA)

[ 
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

2013-08-28 Thread Hudson (JIRA)

[ 
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

2013-08-28 Thread Hudson (JIRA)

[ 
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

2013-08-28 Thread Hudson (JIRA)

[ 
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

2013-08-28 Thread Hudson (JIRA)

[ 
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

2013-08-26 Thread Hadoop QA (JIRA)

[ 
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

2013-08-23 Thread Eric Charles (JIRA)

[ 
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

2013-08-23 Thread stack (JIRA)

[ 
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

2013-08-23 Thread Eric Charles (JIRA)

[ 
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

2013-08-23 Thread Eric Charles (JIRA)

[ 
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

2013-08-23 Thread stack (JIRA)

[ 
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

2013-08-22 Thread stack (JIRA)

[ 
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

2013-08-22 Thread Nicolas Liochon (JIRA)

[ 
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

2013-08-22 Thread Eric Charles (JIRA)

[ 
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

2013-08-22 Thread Eric Charles (JIRA)

[ 
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

2013-08-22 Thread stack (JIRA)

[ 
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

2013-08-22 Thread Eric Charles (JIRA)

[ 
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

2013-08-22 Thread Nicolas Liochon (JIRA)

[ 
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