[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-04-02 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14392252#comment-14392252
 ] 

Hudson commented on HBASE-12972:


SUCCESS: Integrated in HBase-1.1 #349 (See 
[https://builds.apache.org/job/HBase-1.1/349/])
HBASE-13384 Fix Javadoc warnings introduced by HBASE-12972 (apurtell: rev 
b75a4c8ef01e0e68e4f7b1e1f43884ef38ccacad)
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Region.java


 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-04-02 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14392313#comment-14392313
 ] 

Hudson commented on HBASE-12972:


FAILURE: Integrated in HBase-TRUNK #6334 (See 
[https://builds.apache.org/job/HBase-TRUNK/6334/])
HBASE-13384 Fix Javadoc warnings introduced by HBASE-12972 (apurtell: rev 
d3ed23ecf4670569270ce7f907bca50a39927495)
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Region.java


 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-31 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14389814#comment-14389814
 ] 

Andrew Purtell commented on HBASE-12972:


bq. Are you gonna work on PHOENIX-1681? I can pick it up as well if you don't 
have the time.
Sure, I can work on it. Let's follow up on the Phoenix JIRA.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-31 Thread Nick Dimiduk (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14389124#comment-14389124
 ] 

Nick Dimiduk commented on HBASE-12972:
--

Awesome, this is really helpful. Nice work on the 0.5mb patch ;)

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-31 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14389164#comment-14389164
 ] 

Enis Soztutar commented on HBASE-12972:
---

Cool. Are you gonna work on PHOENIX-1681? I can pick it up as well if you don't 
have the time.   

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-31 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14388930#comment-14388930
 ] 

Sean Busbey commented on HBASE-12972:
-

yay! can we get a release note that points downstream folks to the new 
interface?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14387169#comment-14387169
 ] 

Andrew Purtell commented on HBASE-12972:


I was held up with test failures in branch-1 on HBASE-12975, but there are no 
problems with this change on its own. I need to fix up for new commits to 
trunk. Let me put up master and branch-1 patches here for Jenkins and then 
proceed. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14387249#comment-14387249
 ] 

Andrew Purtell commented on HBASE-12972:


Attached refreshed patches

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14387446#comment-14387446
 ] 

Hadoop QA commented on HBASE-12972:
---

{color:green}+1 overall{color}.  Here are the results of testing the latest 
attachment 
  
http://issues.apache.org/jira/secure/attachment/12708220/HBASE-12972-branch-1.patch
  against branch-1 branch at commit 3815a33e3400cee73f63e205afac8f1a2d9c174f.
  ATTACHMENT ID: 12708220

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 359 
new or modified tests.

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 protoc{color}.  The applied patch does not increase the 
total number of protoc compiler warnings.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit 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/13489//testReport/
Release Findbugs (version 2.0.3)warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13489//artifact/patchprocess/newFindbugsWarnings.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13489//artifact/patchprocess/checkstyle-aggregate.html

  Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13489//console

This message is automatically generated.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-branch-1.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14387927#comment-14387927
 ] 

Hudson commented on HBASE-12972:


FAILURE: Integrated in HBase-1.1 #339 (See 
[https://builds.apache.org/job/HBase-1.1/339/])
HBASE-12972 Region, a supportable public/evolving subset of HRegion (apurtell: 
rev af1715933edc2fe9b912e6fdb8abc2d39e4d2609)
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestGetClosestAtOrBefore.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestEncryptionRandomKeying.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestTableLockManager.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestEncryptionKeyRotation.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/SnapshotManifest.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiColumnScanner.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestScannerSelectionUsingTTL.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionMergeTransaction.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestRegionPlacement.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestAtomicOperation.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/MockRegionServerServices.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/FavoredNodesForRegion.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/RegionObserver.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/SimpleRegionObserver.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMinVersions.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/util/HMerge.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/TestGlobalMemStoreSize.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/security/visibility/DefaultVisibilityLabelServiceImpl.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreFlusher.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/procedure/flush/RegionServerFlushTableProcedureManager.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockRegionServer.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/SecureBulkLoadEndpoint.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/snapshot/RegionServerSnapshotManager.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/BaseRegionServerObserver.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/security/visibility/VisibilityController.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALFiltering.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFastFail.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessControlLists.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/AggregateImplementation.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSeekOptimizations.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestGetLastFlushedSequenceId.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRowTooBig.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StorefileRefresherChore.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/MiniHBaseCluster.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestPerColumnFamilyFlush.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestHCM.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompaction.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/CompactSplitThread.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/security/visibility/VisibilityUtils.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.java
* 

[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14387945#comment-14387945
 ] 

Hudson commented on HBASE-12972:


SUCCESS: Integrated in HBase-TRUNK #6324 (See 
[https://builds.apache.org/job/HBase-TRUNK/6324/])
HBASE-12972 Region, a supportable public/evolving subset of HRegion (apurtell: 
rev f1f4b6618334767d0da0f47965309b21676e7e9f)
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/procedure/flush/FlushTableSubprocedure.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/io/encoding/TestPrefixTree.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/RegionCoprocessorEnvironment.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionServerNoMaster.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionMergeRequest.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestGetLastFlushedSequenceId.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitTransaction.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestLogRolling.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/NoOpScanPolicyObserver.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALFiltering.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionReplicaFailover.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerServices.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/security/visibility/ExpAsStringVisibilityLabelServiceImpl.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestForceCacheImportantBlocks.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompactionState.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HeapMemoryManager.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestAtomicOperation.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBlocksScanned.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestEndToEndSplitTransaction.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestMultiSlaveReplication.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsckEncryption.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanner.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpointNoMaster.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/FinishRegionRecoveringHandler.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StorefileRefresherChore.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestImportTSVWithOperationAttributes.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestInvocationRecordFilter.java
* 
hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/RegionListTmpl.jamon
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/AnnotationReadingPriorityFunction.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestRegionPlacement.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/OnlineRegions.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestClientPushback.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestResettingCounters.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerObserver.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionReplicas.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionServerQuotaManager.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ConstantSizeRegionSplitPolicy.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionMergeTransaction.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/tool/WriteSinkCoprocessor.java
* 
hbase-examples/src/main/java/org/apache/hadoop/hbase/coprocessor/example/BulkDeleteEndpoint.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestMergeTable.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/SecureTestUtil.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestFilter.java
* 

[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14384330#comment-14384330
 ] 

Andrew Purtell commented on HBASE-12972:


I'm going to commit this tonight unless objection.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14384973#comment-14384973
 ] 

Andrew Purtell commented on HBASE-12972:


I let this sit a bit longer but will commit tonight.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-27 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14385117#comment-14385117
 ] 

Anoop Sam John commented on HBASE-12972:


Had a pass over it. LGTM..  Only thing which looks bit ugly is the type casting 
happening in many places.. But no other go !

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-26 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14383210#comment-14383210
 ] 

Sean Busbey commented on HBASE-12972:
-

good by me. apologies that I haven't been able to give more feedback.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14383197#comment-14383197
 ] 

Andrew Purtell commented on HBASE-12972:


Any concerns if I commit this tomorrow to branch-1 and master (not branch-1.0 
or 0.98)?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-25 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14380867#comment-14380867
 ] 

Andrew Purtell commented on HBASE-12972:


If you're curious what HBASE-12972 and HBASE-12975 look like together, see 
https://github.com/apurtell/hbase/tree/HBASE-12972+12975 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-25 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14381030#comment-14381030
 ] 

Hadoop QA commented on HBASE-12972:
---

{color:green}+1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12707327/HBASE-12972.patch
  against master branch at commit 2e31e834a67be8a88afaaca7691eadaf55f84b49.
  ATTACHMENT ID: 12707327

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 355 
new or modified tests.

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit 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/13429//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//artifact/patchprocess/checkstyle-aggregate.html

  Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13429//console

This message is automatically generated.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch, HBASE-12972.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-20 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370832#comment-14370832
 ] 

Enis Soztutar commented on HBASE-12972:
---

Not trying to cause a stir definitely just trying to reduce down the work. I am 
-1 for this for 1.0.x branch as it is against the compat guides. For 1.1, the 
motivation is for Phoenix to not have a branch for 0.98, a branch for 1.0 and a 
branch for 1.1. Phoenix already have coprocessors defined with HRegion as 
parameters and since the observers already come with HRegion parametsr, it is 
not a matter of depending on HRegion internals, but my understanding is that 
all of the coprocessors will break to compile. If Phoenix community wants 4.x 
releases supporting 0.98, 1.0 and 1.1, then it will be three branches rather 
than 2. Phoenix might as well decide to either only support 1.1, or have 3 
branches or not support 1.1 in 4.x releases. That is up for discussion in 
phoenix-dev I guess. Agreed that this is a Phoenix issue, but we are mainly 
doing this for Phoenix, so we should keep that into account. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-20 Thread James Taylor (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370897#comment-14370897
 ] 

James Taylor commented on HBASE-12972:
--

I think this change benefits not just Phoenix, but any application using these 
coprocessor interfaces.

As far as the Phoenix code base, the coprocessors classes are pretty isolated 
and do not change very often. They're used more as entry points that invoke 
common core classes (which is where the bulk of changes occur). I don't think 
the burden would be high if Phoenix had to have another branch.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-20 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14372100#comment-14372100
 ] 

Enis Soztutar commented on HBASE-12972:
---

It seems due to HBASE-11544, we already have to have shim/branch between 1.0 
and 1.1 support in Phoenix anyway (see PHOENIX-1763). Please consider my 
earlier reservations lifted. No easy way to get away without branching/shim. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-20 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14372176#comment-14372176
 ] 

Andrew Purtell commented on HBASE-12972:


bq. It seems due to HBASE-11544, we already have to have shim/branch between 
1.0 and 1.1 support in Phoenix anyway (see PHOENIX-1763). Please consider my 
earlier reservations lifted. No easy way to get away without branching/shim

This is depressing... 
Over on HBASE-13303 we are putting in a stop-gap measure for sizestepping the 
scanner result size estimation issues. However, to do it right I think we 
should have newer released servers (even in 0.98) sending back NextState in PB, 
and newer released clients able to understand it, therefore doing the right 
thing. But if this means porting back HBASE-11544, then we'd have another point 
in the 0.98 line where all Phoenix versions released prior to the change will 
fail to compile. 

Anyway, with regards to this issue let me get it to a committable state.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370360#comment-14370360
 ] 

Andrew Purtell commented on HBASE-12972:


I would *really* rather not do it, because it involves most methods in 
RegionObserver, RegionServerObserver, RegionServerServices, but it is possible 
to keep the methods that accept HRegion objects, deprecate them, and print 
warnings if they are used. This would mean the master patch stays as is but the 
branch-1 port would have up to a doubling of methods in some interfaces. As 
[~busbey] pointed out in a comment above see 
[CoprocessHost#useLegacyMethod|https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java#L573],
 
[CoprocesorHost#legacyWarning|https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java#L631],
 and their use in 
[RegionCoprocessorHost|https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java#L131].
 We'd do the same in RegionObserver and extend their use to more methods in 
RegionServerObserver. I advocated for a clean break from 1.1+ but we can do 
that only in 2.0 and higher. But please consider the amount of deprecated code 
this leaves around throughout all of 1.x as proposed, and it only pushes the 
day of reckoning down the road until whenever we do a 2.0. Related, until we 
have a 2.0 projects like Phoenix would have no reason to change. The way I read 
the above pushing this out to 2.0 is exactly so Phoenix won't have to deal with 
this change until 2.0. Do I have that wrong?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370406#comment-14370406
 ] 

stack commented on HBASE-12972:
---

bq. However, if we have the same patch in branch-1, we might need yet another 
branch in Phoenix. 

I thought that this patch in branch-1 was the idea and that the 'yet another 
branch' would actually be the Phoenix master branch and the way forward for all 
future Phoenix releases; no more need to do a release per hbase version because 
Andrew's work made it so Phoenix no longer needed to muck in our internals.

I spent a bunch of time reviewing Andrew's work because I had this 
understanding (I've +1'd it for 1.1).

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread James Taylor (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370421#comment-14370421
 ] 

James Taylor commented on HBASE-12972:
--

I'm +1 on Andrew's patch for 1.1 too. If that patch can be backported to your 
branch for 1.0 too, all the better. If not, then that's fine too - we'll deal 
with our branches on the Phoenix side of the world. It's most important to get 
Phoenix on HBase APIs that are more stable and to do that ASAP.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370228#comment-14370228
 ] 

Andrew Purtell commented on HBASE-12972:


Just FYI, the unit tests need debugging before this is committable but I'm 
going to context switch to other work pending further feedback on this issue.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370572#comment-14370572
 ] 

Sean Busbey commented on HBASE-12972:
-

My understanding of the push for branch-1 was as above: to get Phoenix off of 
internal APIs. Users of the coprocessor APIs should always be aware that 
they're on difficult terrain. That's the trade off for the advantages of being 
in our internals. If our compatibility promises don't provide enough of a 
warning for that, then we should try to do better at education.

I'm all for stability in APIs, but it's untenable to keep IA.Private pieces in 
those parts of the API that are relied on for projects like Phoenix. As a 
community, we are pretty good at recognizing when something might break 
downstream folks; but all of that diligence goes out the window when something 
is labeled IA.Private.

I added the utilities for backwards compatible changes to coprocessors that 
Andrew mentions specifically to avoid impacting Phoenix with the WAL 
refactoring. It is a very blunt instrument. So long as Phoenix is set to move 
to the API changes in 1.1, then I agree with Andrew that the maintenance burden 
of keeping the old API in place isn't worth the benefit.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370751#comment-14370751
 ] 

Lars Hofhansl commented on HBASE-12972:
---

+1 to have this in 1.1 or later.
-1 on making this change in 1.0.x

[~enis], what's your motivation for not having this in 1.1+? Did you mean 0.98 
and branch-1.0 in the above?


 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370076#comment-14370076
 ] 

Andrew Purtell commented on HBASE-12972:


Per previous discussion, I have no plans for either 0.98 or branch-1.0. We can 
file a backport JIRA to discuss additional backport work after the commit to 
master and branch-1 for 1.1+

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370086#comment-14370086
 ] 

Andrew Purtell commented on HBASE-12972:


This absolutely must go into branch-1 for 1.1+. Omitting coprocessor API 
changes would completely defeat the purpose of the work, might as well resolve 
as Won't Fix. This isn't about causing pain or not, this is about an existing 
coprocessor application using _unsupportable_ internal APIs. I would think 
Phoenix and everybody else would welcome supportable APIs at the earliest 
possible convenience. Why is this only coming up now? Have I been wasting my 
time for two weeks?

Any thoughts here [~jamestaylor]?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-19 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14370058#comment-14370058
 ] 

Enis Soztutar commented on HBASE-12972:
---

What is the plan for branch-1 for this? Over at Phoenix, I am creating the 
branches for supporting 4.4+ to be released with HBase-0.98 and HBase-1.0 
support. However, if we have the same patch in branch-1, we might need yet 
another branch in Phoenix. 
I was thinking about committing this to master, but omit the changes to 
coprocessor interfaces in branch-1 and 0.98. I think for both 0.98 and 
branch-1, we do not want to cause more pain to coprocessor writes (and Phoenix) 
if possible. Is it possible that we only get the changes which introduce the 
new interface, but do not change the existing observer signatures ?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-18 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14367464#comment-14367464
 ] 

stack commented on HBASE-12972:
---

I went through patch in rb. Do an edit and lets commit. Can do fine tuning in 
followups. Nice work [~apurtell]

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-18 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14368128#comment-14368128
 ] 

Hadoop QA commented on HBASE-12972:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12705439/HBASE-12972.patch
  against master branch at commit f9a17edc252a88c5a1a2c7764e3f9f65623e0ced.
  ATTACHMENT ID: 12705439

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 355 
new or modified tests.

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 javadoc{color}.  The javadoc tool appears to have generated 7 
warning messages.

{color:red}-1 checkstyle{color}.  The applied patch generated 
1919 checkstyle errors (more than the master's current 1917 errors).

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 lineLengths{color}.  The patch introduces the following lines 
longer than 100:
+LOG.trace(High priority because region= + 
region.getRegionInfo().getRegionNameAsString());
+.abort(Exception during region  + 
getRegionInfo().getRegionNameAsString() +  initialization.);
+LOG.info(getName() +  requesting flush for region  + 
r.getRegionInfo().getRegionNameAsString() +
+Region region = 
TEST_UTIL.getRSForFirstRegionInTable(tableName).getFromOnlineRegions(regionName);
+testRegionWithFamilies(family1).bulkLoadHFiles(new ArrayListPairbyte[], 
String(), false, null);
+  private Region initHRegion(HTableDescriptor htd, byte[] startKey, byte[] 
stopKey, int replicaId) throws IOException {
+  private void putData(Region region, int startRow, int numRows, byte[] qf, 
byte[]... families) throws IOException {

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
   org.apache.hadoop.hbase.TestIOFencing
  
org.apache.hadoop.hbase.replication.regionserver.TestRegionReplicaReplicationEndpoint

 {color:red}-1 core zombie tests{color}.  There are 1 zombie test(s):   
at 
org.apache.hadoop.hbase.replication.regionserver.TestRegionReplicaReplicationEndpoint.testRegionReplicaReplication(TestRegionReplicaReplicationEndpoint.java:195)
at 
org.apache.hadoop.hbase.replication.regionserver.TestRegionReplicaReplicationEndpoint.testRegionReplicaReplicationWith3Replicas(TestRegionReplicaReplicationEndpoint.java:255)

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13299//artifact/patchprocess/checkstyle-aggregate.html

  

[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-18 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14368143#comment-14368143
 ] 

Andrew Purtell commented on HBASE-12972:


I will fix the long lines.

I don't think the test failures are related but will run the indicated units a 
few times with and without the patch and fix as indicated.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-18 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14368542#comment-14368542
 ] 

Andrew Purtell commented on HBASE-12972:


I fixed the overly long lines.

All tests were passing before but with the latest rebase I am seeing the test 
failures flagged above locally too. Will update the patch when fixed.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch, 
 HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-18 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14367670#comment-14367670
 ] 

Andrew Purtell commented on HBASE-12972:


Thanks for the ton of feedback [~stack]. I'm working on a new rev and will post 
it here and to RB shortly.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-13 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14360875#comment-14360875
 ] 

Andrew Purtell commented on HBASE-12972:


bq. TestInterfaceAudienceAnnotations

That's a minor nit, will fix. Will also look at the javadoc warnings reported 
to see if they are related to this change.

Should not preclude review at this point.




 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-12 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359819#comment-14359819
 ] 

Hadoop QA commented on HBASE-12972:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12704323/HBASE-12972.patch
  against master branch at commit 3509cc21349cdc54d9aa22f5534207920e8100ff.
  ATTACHMENT ID: 12704323

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 343 
new or modified tests.

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 javadoc{color}.  The javadoc tool appears to have generated 8 
warning messages.

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 lineLengths{color}.  The patch introduces the following lines 
longer than 100:
+LOG.trace(High priority because region= + 
region.getRegionInfo().getRegionNameAsString());
+LOG.info(getName() +  requesting flush for region  + 
r.getRegionInfo().getRegionNameAsString() +
+Region region = 
TEST_UTIL.getRSForFirstRegionInTable(tableName).getFromOnlineRegions(regionName);
+testRegionWithFamilies(family1).bulkLoadHFiles(new ArrayListPairbyte[], 
String(), false, null);
+  private Region initHRegion(HTableDescriptor htd, byte[] startKey, byte[] 
stopKey, int replicaId) throws IOException {
+  private void putData(Region region, int startRow, int numRows, byte[] qf, 
byte[]... families) throws IOException {

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
   org.apache.hadoop.hbase.TestInterfaceAudienceAnnotations

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/checkstyle-aggregate.html

  Javadoc warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//artifact/patchprocess/patchJavadocWarnings.txt
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/13222//console

This message is automatically generated.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: 

[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-03-05 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14349455#comment-14349455
 ] 

Andrew Purtell commented on HBASE-12972:


A quick update. I have been working on a patch for master. It's become a multi 
day effort as where drawing the line on what should be in Region vs HRegion is 
a trade off between getting good encapsulation in Region and a bunch of casting 
where code wants HRegion internals. I'm working on keeping casts to a minimum. 
I should have something today.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14340450#comment-14340450
 ] 

Andrew Purtell commented on HBASE-12972:


[~jamestaylor] Would something like this be fine?
- Phoenix 4.x - HBase 0.98.x
- Phoenix 5.0.x - HBase 1.0.x
- Phoenix 5.1.x - HBase 1.1.x (not compatible with HBase 1.0.x or earlier)


 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-27 Thread James Taylor (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14340455#comment-14340455
 ] 

James Taylor commented on HBASE-12972:
--

We should discuss a bit, but depending on timing of HBase 1.1 release, we may 
want to start our Phoenix support from there. Thanks for doing this too, Andrew 
- this is super valuable.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14340502#comment-14340502
 ] 

Andrew Purtell commented on HBASE-12972:


bq. We should discuss a bit, but depending on timing of HBase 1.1 release, we 
may want to start our Phoenix support from there.
That would make some things easier, but what about released versions of HBase 
1.0.x? Will a lack of support for those be an issue? I expanded on this a bit 
at 
https://issues.apache.org/jira/browse/HBASE-12975?focusedCommentId=14340495page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14340495
 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-27 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14340460#comment-14340460
 ] 

Sean Busbey commented on HBASE-12972:
-

bq. We should discuss a bit, but depending on timing of HBase 1.1 release,

I'll start this conversation on dev@hbase.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339741#comment-14339741
 ] 

Sean Busbey commented on HBASE-12972:
-

AFAICT, these are all LimitedPrivate / Evolving so breaking is fine by me now 
that we're limiting to 1.1.0+

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338592#comment-14338592
 ] 

Sean Busbey commented on HBASE-12972:
-

Looks like the current patch makes changes that won't allow it in 1.0.z 
(non-binary compat changes to existing LimitedPrivate.Evolving, adding new 
features to LimitedPrivate.Evolving).

Can we aim for 0.98.y, 1.1.z, 2.y.z, or would folks prefer feedback to make it 
compat?



 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338776#comment-14338776
 ] 

Sean Busbey commented on HBASE-12972:
-

{quote}
bq. 'm treating introduction of the Region interface as a singularity of sorts 
for coprocessors: neither source nor binary compatibility will be maintained. I 
don't see the harm in a singularity, HRegion isn't supported, that's the point 
of this work... to replace it with something that is. However, after there is a 
first workable patch if it's not too onerous to make addtional changes that 
keep source or binary compatibility then we can do that.

Let's discuss.
{quote}

We just started having a compatibility statement, so I'd really like to avoid 
breaking it right away. What's the timeline for Phoenix 1.0? Do we have time to 
get a HBase 1.1.0 out?

I haven't seen a discussion of how we interpret the add new feature part of 
semver, so my apologies if I've missed it. My own interpretation is that the 
addition of an API like Region qualifies, since a user that built on it 
wouldn't be able to go back to the 1.0.0 release without things breaking.

What if we marked Region LimitedPrivate / Unstable in 1.0.z? We say that those 
things may break in patch releases, so someone following our compatibility 
guidelines wouldn't have an expectation that they can rely on it and still go 
back to 1.0.0. We could mark it Evolving (or Stable or whatever you please) in 
1.1.0+.

With that change, we could do similar overloading and runtime checking to that 
done in HBASE-10378 to make sure we keep our compat promises.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338793#comment-14338793
 ] 

Andrew Purtell commented on HBASE-12972:


bq. I haven't seen a discussion of how we interpret the add new feature part 
of semver, so my apologies if I've missed it. My own interpretation is that the 
addition of an API like Region qualifies, since a user that built on it 
wouldn't be able to go back to the 1.0.0 release without things breaking.

That sucks but is valid. 

However, HRegion is Private. This is enabling something that technically 
shouldn't have been done in the first place. 

bq. What if we marked Region LimitedPrivate / Unstable in 1.0.z? 

Then why would someone use it? Region is supposed to be the supportable version 
of HRegion. Unstable provides only effectively the same guarantees as 
inappropriate use of Private interfaces.

We can strongly suggest Phoenix drop its local mutable indexing feature as a 
mistake until HBase can support it, in 1.1 or 2.0 or whatever, but I don't 
think they will go for that. So, it's likely that use of Private interfaces 
will continue without having something like Region in place on the occasion of 
the port of Phoenix to HBase 1.0. If that's the case then this work is moot 
now, we can table it until we are nearing a 1.1 or 2.0 release.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338812#comment-14338812
 ] 

Andrew Purtell commented on HBASE-12972:


Also, we haven't really gotten to the hard part yet, where we show folks like 
[~rajeshbabu], [~jesse_yates], [~jamestaylor], and others on Phoenix the new 
opaque SplitTransaction and RegionMergeTransaction interfaces and ask them if 
local mutable indexes can be reimplemented without diving into the details. You 
can see the trouble spots in Phoenix by applying the the latest patch on 
PHOENIX-1681 to the Phoenix 4.0 branch, then grep for wherever the new private 
implementation classes SplitTransactionImpl and RegionMergeTransactionImpl are 
referenced or extended.  

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338752#comment-14338752
 ] 

Andrew Purtell commented on HBASE-12972:


bq. Looks like the current patch makes changes that won't allow it in 1.0.z 
(non-binary compat changes to existing LimitedPrivate.Evolving, adding new 
features to LimitedPrivate.Evolving).

Please point these changes out where you find them. 

bq. Can we aim for 0.98.y, 1.1.z, 2.y.z, or would folks prefer feedback to make 
it compat?

Well we should have a supportable 'Region' interface for Phoenix 1.0, which 
implies in HBase 1.0.x at least. Otherwise they are going to need to continue 
to work directly with HRegion and SplitTransaction, and other things I would 
really like to -1 over there but can't if there is no realistic alternative.

I did say this above:
{quote}
'm treating introduction of the Region interface as a singularity of sorts for 
coprocessors: neither source nor binary compatibility will be maintained. I 
don't see the harm in a singularity, HRegion isn't supported, that's the point 
of this work... to replace it with something that is. However, after there is a 
first workable patch if it's not too onerous to make addtional changes that 
keep source or binary compatibility then we can do that. 
{quote}

Let's discuss.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Rajeshbabu Chintaguntla (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338922#comment-14338922
 ] 

Rajeshbabu Chintaguntla commented on HBASE-12972:
-

[~apurtell] The new interfaces for SplitTransaction, RegionMergeTransaction in 
the patch may not fully helpful for reimplementing the local indexes 
split/merge without diving into the details. I think we can handle the 
SplitTransaction,RegionMergeTransaction changes in separate JIRA(may be 
HBASE-12975 here).

To support local index regions split/merge I think splittransaction should be 
changed so that it should also split more than one region atomically and the 
steps should be changed like this.
1) We should be able pass/add one or more regions to SplitTransaction.
2) run steps before PONR(or commit) for all the regions.
3) commit split mutations of all the regions
4) run steps after PONR(or commit) for all the regions
5) Any failures before PONR rollback the regions completed steps before PONR.
This way in case of one region it should work as usual how it works currently.

Apart from  this before actual split execution starts we should give provision 
to add more regions to split through coprocessors. So this way we need not 
touch any internals.

Similar way we can change for regions merge as well.



 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14338987#comment-14338987
 ] 

Andrew Purtell commented on HBASE-12972:


We can definitely split out the SplitTransaction and RegionMergeTransaction 
changes [~rajeshbabu] , my only concern there is then the Region interface 
changes aren't sufficient to remove HRegion reference/use in Phoenix. 

I don't think we should allow users of the transactions to reach inside and 
direct what happens when. On the other hand we could provide APIs for 
registering callbacks for when different phases happen, and can take that a 
step further and allow callbacks to trigger an abort by throwing an exception. 

As for specifying what region(s) to run a transaction on, can you use the new 
factories? Create a factory, call its create() method with the desired 
regions(s), and then run it? 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339717#comment-14339717
 ] 

Andrew Purtell commented on HBASE-12972:


That's reasonable. I'd like to avoid carrying legacy around. *Every* 
RegionObserver and RegionServerObserver and RegionServerServices method that 
references the HRegion type will have to stay and will get a new twin. That's a 
lot of cruft. Nobody should be using HRegion methods anyway. Better to make a 
clean break? 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Sean Busbey (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339692#comment-14339692
 ] 

Sean Busbey commented on HBASE-12972:
-

We can make the changes to the Coprocessors in a way that is backwards 
compatible. See 
[CoprocessHost#useLegacyMethod|https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java#L573],
 
[CoprocesorHost#legacyWarning|https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java#L631],
 and their use in 
[RegionCoprocessorHost|https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java#L131].

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339608#comment-14339608
 ] 

Andrew Purtell commented on HBASE-12972:


Yes let's move the SplitTransaction and RegionMergeTransaction changes proposed 
here to HBASE-12975. I have copied the tail of the discussion here over there. 
Will update the patch here accordingly. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339648#comment-14339648
 ] 

Andrew Purtell commented on HBASE-12972:


No it looks like the worst offense (extending / overriding SplitTransaction) 
can be done separately and this will need to be deferred until 1.1 or 2.0, 
preferably the former. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339615#comment-14339615
 ] 

Andrew Purtell commented on HBASE-12972:


Patches for master and branch-1 coming tomorrow.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-26 Thread Gary Helmling (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14339642#comment-14339642
 ] 

Gary Helmling commented on HBASE-12972:
---

I agree with the goal of introducing a stable Region interface that just 
exposes what we can support.  But I don't think we can introduce this by 
changing the existing method signatures in RegionObserver / 
RegionServerObserver in 1.0.x.  Won't that break every existing coprocessor 
that overrides those methods?  

Maybe we could at least deprecate the existing methods while adding the new 
versions.  BaseRegionObserver could implement the new methods by delegating to 
the old methods.  So existing coprocessors that implement the old methods and 
derive from BaseRegionObserver would still work.  New coprocessors overriding 
the new methods would also work.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
 HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335394#comment-14335394
 ] 

Andrew Purtell commented on HBASE-12972:


I posted a companion WIP patch for Phoenix 4.x to PHOENIX-1681 for those 
interested.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335983#comment-14335983
 ] 

Andrew Purtell commented on HBASE-12972:


I will remove the 'public' keywords from the interfaces. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335984#comment-14335984
 ] 

stack commented on HBASE-12972:
---

Ok. Then, lets do some review on it... stick up on RB?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335989#comment-14335989
 ] 

Andrew Purtell commented on HBASE-12972:


Have at it! 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335988#comment-14335988
 ] 

Andrew Purtell commented on HBASE-12972:


https://reviews.apache.org/r/31346/

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335966#comment-14335966
 ] 

stack commented on HBASE-12972:
---

Skimmed. Looks great. For 2.0? If so, commit and do cleanup in follow ups?

On Region, you don't need public qualifiers in interface (lars francke cleaned 
up our interfaces removing them everywhere).  Worth moving metrics to a 
distinct Interface?  Could this die now: getClosestRowBefore ?
  
RegionMergeFactory related change?

Otherwise, its great.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-24 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335982#comment-14335982
 ] 

Andrew Purtell commented on HBASE-12972:


No, the intent is for 0.98+. None of the touched interfaces are supported yet, 
all are annotated private. I'd like to put something in place that is 
LimitedPrivate for coprocessors and Phoenix specifically. We could do 1.x and 
higher but no harm earlier given the interface scopes now as mentioned. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-20 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14329961#comment-14329961
 ] 

Andrew Purtell commented on HBASE-12972:


I've started work on this. The first patch will be for 0.98 since there is no 
version of Phoenix (yet) ported to 1.0 or master.

I did look at master for a bit. Unfortunately there are some aspects of the 
Table interface that don't play nicely with HRegion code: close() and 
getScanner() are different. The former isn't a big deal but when RegionScanner 
needed to implement ResultScanner I stopped there. Not that we can't do it, but 
what I've decided to do instead is lift the minimum up out of HRegion into 
Region to support coprocessors in the HBase tree and Phoenix together.

I'm treating introduction of the Region interface as a singularity of sorts for 
coprocessors: neither source nor binary compatibility will be maintained. I 
don't see the harm in a singularity, HRegion isn't supported, that's the point 
of this work... to replace it with something that is. :-) However, after there 
is a first workable patch if it's not too onerous to make addtional changes 
that keep source or binary compatibility then we can do that. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-05 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14308211#comment-14308211
 ] 

Andrew Purtell commented on HBASE-12972:


[~lhofhansl], want to fold what to do about HBASE-12975 in here, after it's 
hashed out over there?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-05 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14308289#comment-14308289
 ] 

Lars Hofhansl commented on HBASE-12972:
---

Either way :)
They are related in principle but probably not in code.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-05 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14307511#comment-14307511
 ] 

Andrew Purtell commented on HBASE-12972:


I had a look at how Phoenix is using HRegion, see PHOENIX-1636, PHOENIX-1637, 
and PHOENIX-1638. 

I like Stack's suggestion above, and add access to row locks and region read 
locks (PHOENIX-1637). What else?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-05 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14308461#comment-14308461
 ] 

Andrew Purtell commented on HBASE-12972:


Well I was thinking code, so if you don't want to plug a factory or something 
like that in here then that's fine. 

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-05 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14308536#comment-14308536
 ] 

Lars Hofhansl commented on HBASE-12972:
---

A factory for Region interfaces and/or SplitTransactions? If we can combine 
this all the better.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11


 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-04 Thread Nick Dimiduk (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14305976#comment-14305976
 ] 

Nick Dimiduk commented on HBASE-12972:
--

Yes please!

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell

 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-04 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14306196#comment-14306196
 ] 

stack commented on HBASE-12972:
---

Could Region implement the bulk of the Table Interface?

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell

 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-12972) Region, a supportable public/evolving subset of HRegion

2015-02-04 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-12972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14306650#comment-14306650
 ] 

Lars Hofhansl commented on HBASE-12972:
---

[~giacomotaylor], let's figure out what Phoenix needs. That would be a good 
starting point.

 Region, a supportable public/evolving subset of HRegion
 ---

 Key: HBASE-12972
 URL: https://issues.apache.org/jira/browse/HBASE-12972
 Project: HBase
  Issue Type: New Feature
Reporter: Andrew Purtell

 On HBASE-12566, [~lhofhansl] proposed:
 {quote}
 Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
 {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
 but used in some coprocessor hooks.
 {quote}
 By example, now coprocessors have to reach into HRegion in order to 
 participate in row and region locking protocols, this is one area where the 
 functionality is legitimate for coprocessors but not for users, so an 
 in-between interface make sense.
 In addition we should promote {{Store}}'s interface audience to 
 LimitedPrivate(COPROC).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)