[ https://issues.apache.org/jira/browse/HBASE-5070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13174648#comment-13174648 ]
jirapos...@reviews.apache.org commented on HBASE-5070: ------------------------------------------------------ bq. On 2011-12-21 06:09:56, Michael Stack wrote: bq. > This patch should go in. Good improvements. Doesn't address the bigger issues of Configuration inline w/ HTD -- have you tried it, I mean, IIRC, though you might have one custom config only, the whole Configuration will be output per Constraint? -- and adding support to shell. Those are in different issues? bq. bq. Jesse Yates wrote: bq. I'm going to try checking out the conf stuff for the Constraints today in the shell. Keep in mind that the conf stored per Constraint should just be configuration info for the Constraint, as opposed to the entire hbase conf (so we don't see all the values from hbase-site.xml, etc), but by default only see the enabled and priority configuration values. I'm expecting that to be pretty small, but I'll let you know. bq. bq. Also, there is HBASE-4879 to add shell support to Constraints as the original was already pretty massive (and taking a while) and the shell stuff could be cleanly separated out. I was working on it, but have temporarily diverted from it to work on the maven modularization (4336) as per Ted's request. So looking at in the shell isn't all that bad, assuming people create their configurations 'properly' - new Configuration(false) - and avoid loading the default values into the configuration. If you forget to do that, describe is going to be massive (10s of parameters scrolling by). However, I did a test adding 3 random configuration values, and if you do it 'correctly', its just looks like: hbase(main):008:0> describe 'testTable' DESCRIPTION ENABLED {NAME => 'testTable', constraint $org.apache.hadoop.hbase.constraint.AllPassConstraint => '<?xml version="1.0" encoding="UTF-8" s true tandalone="no"?><configuration> <property><name>anotherKey</name><value>anotherValue</value></property> <property><name>_PRIORITY </name><value>0</value></property> <property><name>third key</name><value>thirdvalue</value></property> <property><name>_ENABLED< /name><value>true</value></property> <property><name>someKey</name><value>someValue</value></property> </configuration>', coproce ssor$1 => '|org.apache.hadoop.hbase.constraint.ConstraintProcessor|1073741823|', hbase.constraint.counter => '1', FAMILIES => []} 1 row(s) in 0.0340 seconds Not that bad, IMO. There are some problems with ENABLED overlapping with the actual values, but that should be sorted when I get around to fixing the shell (not just 4879, but as we talked about on dev@ and then nothing happened.). The only question that I have is then, how do we want to make people use configurations? I'm thinking: 1) add Constraints.baseConfiguration(){ return new Configuration(false)} 2) Add information in the javadocs that you should create an empty configuration 3) Both I'm pertinent to just (2), to save on what is really extraneous coding. Only problem with that is, if you don't realize what you are doing (and there are a lot of docs to read), then you could easily forget that boolean and create a ton of massive configurations. But rtfm, right? We could also leverage (1) to make sure that all the configurations we use have a base set of properties (for now that would just be enabled and priority) and then tell people to pull the configuration from that static method. Thoughts? - Jesse ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/3273/#review4034 ----------------------------------------------------------- On 2011-12-20 19:14:46, Jesse Yates wrote: bq. bq. ----------------------------------------------------------- bq. This is an automatically generated e-mail. To reply, visit: bq. https://reviews.apache.org/r/3273/ bq. ----------------------------------------------------------- bq. bq. (Updated 2011-12-20 19:14:46) bq. bq. bq. Review request for hbase, Gary Helmling, Ted Yu, and Michael Stack. bq. bq. bq. Summary bq. ------- bq. bq. Follow-up on changes to constraint as per stack's comments on HBASE-4605. bq. bq. bq. This addresses bug HBASE-5070. bq. https://issues.apache.org/jira/browse/HBASE-5070 bq. bq. bq. Diffs bq. ----- bq. bq. src/docbkx/book.xml bd3f881 bq. src/main/java/org/apache/hadoop/hbase/constraint/BaseConstraint.java 7ce6d45 bq. src/main/java/org/apache/hadoop/hbase/constraint/Constraint.java 2d8b4d7 bq. src/main/java/org/apache/hadoop/hbase/constraint/Constraints.java 7825466 bq. src/main/java/org/apache/hadoop/hbase/constraint/package-info.java 6145ed5 bq. src/test/java/org/apache/hadoop/hbase/constraint/CheckConfigurationConstraint.java c49098d bq. bq. Diff: https://reviews.apache.org/r/3273/diff bq. bq. bq. Testing bq. ------- bq. bq. mvn clean test -P localTests -Dest=*Constraint* <- all tests pass. bq. bq. bq. Thanks, bq. bq. Jesse bq. bq. > Constraints implementation and javadoc changes > ---------------------------------------------- > > Key: HBASE-5070 > URL: https://issues.apache.org/jira/browse/HBASE-5070 > Project: HBase > Issue Type: Task > Reporter: Zhihong Yu > > This is continuation of HBASE-4605 > See Stack's comments https://reviews.apache.org/r/2579/#review3980 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira