[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15337059#comment-15337059 ] Matt Warhaftig commented on HBASE-15112: Would anyone be available to code review this patch? - It is fairly large so would prefer to get feedback before I forgot the intricacies. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk >Assignee: Matt Warhaftig > Attachments: hbase-15112-v1.patch, hbase-15112-v1.patch, > hbase-15112.tiff > > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15325720#comment-15325720 ] Hadoop QA commented on HBASE-15112: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s {color} | {color:green} The patch appears to include 6 new or modified test files. {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 20s {color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 10s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 3s {color} | {color:green} master passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 48s {color} | {color:green} master passed with JDK v1.7.0_79 {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 50s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 28s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 48s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 53s {color} | {color:green} master passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 52s {color} | {color:green} master passed with JDK v1.7.0_79 {color} | | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 10s {color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 0s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 4s {color} | {color:green} the patch passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 4s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 48s {color} | {color:green} the patch passed with JDK v1.7.0_79 {color} | | {color:red}-1{color} | {color:red} javac {color} | {color:red} 3m 4s {color} | {color:red} hbase-server-jdk1.7.0_79 with JDK v1.7.0_79 generated 2 new + 4 unchanged - 2 fixed = 6 total (was 6) {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 48s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 48s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 25s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} Patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 25m 59s {color} | {color:green} Patch does not cause any errors with Hadoop 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 21s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 52s {color} | {color:green} the patch passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 51s {color} | {color:green} the patch passed with JDK v1.7.0_79 {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 0m 56s {color} | {color:green} hbase-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 85m 24s {color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 29s {color} | {color:green} Patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 134m 8s {color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.mapreduce.TestLoadIncrementalHFilesUseSecurityEndPoint | \\ \\ || Subsystem || Report/Notes || | JIRA Patch URL |
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15325654#comment-15325654 ] Hadoop QA commented on HBASE-15112: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:red}-1{color} | {color:red} pre-patch {color} | {color:red} 0m 0s {color} | {color:red} JAVA_HOME is not defined. {color} | \\ \\ || Subsystem || Report/Notes || | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12809608/hbase-15112-v1.patch | | JIRA Issue | HBASE-15112 | | Optional Tests | asflicense javac javadoc unit findbugs hadoopcheck hbaseanti checkstyle compile | | uname | Linux pietas.apache.org 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh | | git revision | master / bd45cf3 | | Console output | https://builds.apache.org/job/PreCommit-HBASE-Build/2183/console | | Powered by | Apache Yetus 0.2.1 http://yetus.apache.org | This message was automatically generated. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk >Assignee: Matt Warhaftig > Attachments: hbase-15112-v1.patch > > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15302931#comment-15302931 ] Nick Dimiduk commented on HBASE-15112: -- Good points on the perf impact of ServiceLoader. A similar refresh interval of 5-10 minutes should be more than adequate for this implementation as well. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15302898#comment-15302898 ] Andrew Purtell commented on HBASE-15112: We already use Service interfaces in the compat modules FWIW, but what ServiceLoader does is expensive (as I discovered here: https://issues.apache.org/jira/browse/HBASE-14738?focusedCommentId=14984882=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14984882) so as long as instances are infrequently resolved that would be fine. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15302882#comment-15302882 ] Nick Dimiduk commented on HBASE-15112: -- Actually I don't think we need to touch anything else here. Instead we could add a [Service Interface|https://docs.oracle.com/javase/tutorial/ext/basics/spi.html]; any jar on the classpath would contribute implementations. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15302237#comment-15302237 ] Matt Warhaftig commented on HBASE-15112: Eh, the following interfaces already extend {{org.apache.hadoop.hbase.Coprocessor}} and would also need to have child interfaces to handle software attributes: * org.apache.hadoop.hbase.coprocessor.BulkLoadObserver * org.apache.hadoop.hbase.coprocessor.EndpointObserver * org.apache.hadoop.hbase.coprocessor.MasterObserver * org.apache.hadoop.hbase.coprocessor.RegionObserver * org.apache.hadoop.hbase.coprocessor.RegionServerObserver * org.apache.hadoop.hbase.coprocessor.WALObserver That makes my suggested approach even more inelegant. I would prefer waiting until Java 8 to handle this through default method. If anyone has other suggestions for patterns to approach this feature or wants to vote for the current approach please comment. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15301157#comment-15301157 ] Nick Dimiduk commented on HBASE-15112: -- That sounds reasonable. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-15112) Allow coprocessors to extend 'software attributes' list
[ https://issues.apache.org/jira/browse/HBASE-15112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15297452#comment-15297452 ] Matt Warhaftig commented on HBASE-15112: Hi [~ndimiduk], What do you think about approaching this by adding a new interface that extends the existing {{org.apache.hadoop.hbase.Coprocessor}} interface and only adds: {noformat} public MapcoprocessorAttributes(); {noformat} The implemented method's returned map of specified attribute key and value would be published to the master or rs 'Software Attributes' list. > Allow coprocessors to extend 'software attributes' list > --- > > Key: HBASE-15112 > URL: https://issues.apache.org/jira/browse/HBASE-15112 > Project: HBase > Issue Type: Improvement > Components: Coprocessors >Reporter: Nick Dimiduk > > Over on the {{/master-status}} and {{/rs-status}} pages we have a list of > release properties, giving details about the cluster deployment. We should > make this an extension point, allowing coprocessors to register information > about themselves as well. For example, Phoenix, Trafodion, Tephra, might > want to advertise installed version and build details as well. -- This message was sent by Atlassian JIRA (v6.3.4#6332)