[jira] [Updated] (HBASE-13122) return codes of some filters not efficent

2015-02-26 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-13122:
---
Status: Patch Available  (was: Open)

 return codes of some filters not efficent
 -

 Key: HBASE-13122
 URL: https://issues.apache.org/jira/browse/HBASE-13122
 Project: HBase
  Issue Type: Improvement
  Components: Filters
Affects Versions: 0.98.10.1, 0.94.24, 1.0.1
Reporter: Shuaifeng Zhou
 Attachments: 13122-master.patch, 13122.patch


 ColumnRangeFilter:
  when minColumnInclusive is false, it means all the cells at the current 
 rowcolumn not fit the condition, so it should skip to next column, return 
 code should be NEXT_COL, not SKIP.
 FamilyFilter is the similar sitution.
 Currently, SKIP will not causing error, but not efficent.



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


[jira] [Updated] (HBASE-13082) Coarsen StoreScanner locks to RegionScanner

2015-02-26 Thread Lars Hofhansl (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lars Hofhansl updated HBASE-13082:
--
Status: Patch Available  (was: Open)

 Coarsen StoreScanner locks to RegionScanner
 ---

 Key: HBASE-13082
 URL: https://issues.apache.org/jira/browse/HBASE-13082
 Project: HBase
  Issue Type: Bug
Reporter: Lars Hofhansl
 Attachments: 13082-test.txt, 13082.txt, 13082.txt


 Continuing where HBASE-10015 left of.
 We can avoid locking (and memory fencing) inside StoreScanner by deferring to 
 the lock already held by the RegionScanner.
 In tests this shows quite a scan improvement and reduced CPU (the fences make 
 the cores wait for memory fetches).
 There are some drawbacks too:
 * All calls to RegionScanner need to be remain synchronized
 * Implementors of coprocessors need to be diligent in following the locking 
 contract. For example Phoenix does not lock RegionScanner.nextRaw() and 
 required in the documentation (not picking on Phoenix, this one is my fault 
 as I told them it's OK)
 * possible starving of flushes and compaction with heavy read load. 
 RegionScanner operations would keep getting the locks and the 
 flushes/compactions would not be able finalize the set of files.
 I'll have a patch soon.



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


[jira] [Commented] (HBASE-13082) Coarsen StoreScanner locks to RegionScanner

2015-02-26 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl commented on HBASE-13082:
---

We have three problems:
# StoreScanner is locked too often
# If StoreScanner.next(ListCell) does not find any Cells (for example if they 
do not match timerange or filter) it will exhaust the entire store while 
holding the lock, preventing flushes/compactions from finishing
# Client can timeout even though the server is still working, because the 
server does not currently indicate that it is working but just not returning 
anything.

This patch is for #1. We can fix #2 in many cases by just returning an empty 
result after some number of iterations - but we *only* do that if we not found 
any Cells for the current row, otherwise we need to finish the row, i.e.  find 
the next row (which of course could then exhaust the region if we're unlucky).
But note that the solution for #2 would *clash* with this patch. With this 
patch it is no longer the lock on StoreScanner that protects it from concurrent 
flushes, but the synchronized on RegionScannerImpl, and that we cannot easily 
let without actually returning something back to the client.
#3 would only work with HBASE-11544 since we still need to be able to guarantee 
entire rows to the client, but if we break out of the loops because we did not 
find any Cell after some time we do not know whether we do a whole row or not.

So in reality all these things look like need to be fixed together. Given that 
neither #2 nor #3 can be satisfactorily fixed without HBASE-11544, I propose 
doing a bit more testing on patch, and then committing this here. Then we fix 
#3 (which would incidentally also fix #2 after HBASE-11544 is in).


 Coarsen StoreScanner locks to RegionScanner
 ---

 Key: HBASE-13082
 URL: https://issues.apache.org/jira/browse/HBASE-13082
 Project: HBase
  Issue Type: Bug
Reporter: Lars Hofhansl
 Attachments: 13082-test.txt, 13082.txt


 Continuing where HBASE-10015 left of.
 We can avoid locking (and memory fencing) inside StoreScanner by deferring to 
 the lock already held by the RegionScanner.
 In tests this shows quite a scan improvement and reduced CPU (the fences make 
 the cores wait for memory fetches).
 There are some drawbacks too:
 * All calls to RegionScanner need to be remain synchronized
 * Implementors of coprocessors need to be diligent in following the locking 
 contract. For example Phoenix does not lock RegionScanner.nextRaw() and 
 required in the documentation (not picking on Phoenix, this one is my fault 
 as I told them it's OK)
 * possible starving of flushes and compaction with heavy read load. 
 RegionScanner operations would keep getting the locks and the 
 flushes/compactions would not be able finalize the set of files.
 I'll have a patch soon.



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


[jira] [Commented] (HBASE-13082) Coarsen StoreScanner locks to RegionScanner

2015-02-26 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl commented on HBASE-13082:
---

In other tests I find the gain about 41ns per row and per core (you can see how 
the results drift more with more cores in use above).
Above I measured 66ns. So scanning 10m rows, we'd save 0.4-0.6s, 100m rows 
that'd be 4-6s, and with 1bn rows it'd add up to 40-60s.
(Note that in tests above I scanned about 11m rows/s when using all 8 cores/HTs 
on my box)


 Coarsen StoreScanner locks to RegionScanner
 ---

 Key: HBASE-13082
 URL: https://issues.apache.org/jira/browse/HBASE-13082
 Project: HBase
  Issue Type: Bug
Reporter: Lars Hofhansl
 Attachments: 13082-test.txt, 13082.txt, 13082.txt


 Continuing where HBASE-10015 left of.
 We can avoid locking (and memory fencing) inside StoreScanner by deferring to 
 the lock already held by the RegionScanner.
 In tests this shows quite a scan improvement and reduced CPU (the fences make 
 the cores wait for memory fetches).
 There are some drawbacks too:
 * All calls to RegionScanner need to be remain synchronized
 * Implementors of coprocessors need to be diligent in following the locking 
 contract. For example Phoenix does not lock RegionScanner.nextRaw() and 
 required in the documentation (not picking on Phoenix, this one is my fault 
 as I told them it's OK)
 * possible starving of flushes and compaction with heavy read load. 
 RegionScanner operations would keep getting the locks and the 
 flushes/compactions would not be able finalize the set of files.
 I'll have a patch soon.



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


[jira] [Commented] (HBASE-13097) Use same EventLoopGroup for different AsyncRpcClients if possible

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13097:
---

{color:green}+1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12701268/HBASE-13097_1.patch
  against master branch at commit 458846ef7b0528cb7952c413694eaf55c5d94342.
  ATTACHMENT ID: 12701268

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

{color:green}+1 tests included{color}.  The patch appears to include 11 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/12990//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12990//artifact/patchprocess/checkstyle-aggregate.html

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

This message is automatically generated.

 Use same EventLoopGroup for different AsyncRpcClients if possible
 -

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch, HBASE-13097_1.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): 

[jira] [Updated] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13100:
--
Attachment: HBASE-13100.patch

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Commented] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-13100:
-

Does round-tripping work with the empty split point still present?

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Commented] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-13100:
-

{quote}
bq. Does round-tripping work with the empty split point still present?

Sorry, I did not get what you mean.
{quote}

Can you take the array of splits that comes back, pass it to a new table 
creation, and end up with the same split points?

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Commented] (HBASE-13084) Add labels to VisibilityLabelsCache asynchronously causes TestShell flakey

2015-02-26 Thread zhangduo (JIRA)

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

zhangduo commented on HBASE-13084:
--

[~ram_krish] Have you tried the new patch? Does it work for you? Thanks~

 Add labels to VisibilityLabelsCache asynchronously causes TestShell flakey
 --

 Key: HBASE-13084
 URL: https://issues.apache.org/jira/browse/HBASE-13084
 Project: HBase
  Issue Type: Bug
  Components: test
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13084-addendum.patch, HBASE-13084.patch, 
 HBASE-13084_1.patch, HBASE-13084_2.patch, HBASE-13084_2.patch, 
 HBASE-13084_2.patch, HBASE-13084_2.patch, HBASE-13084_2_disable_test.patch


 As discussed in HBASE-12953, we found this error in PreCommit log
 https://builds.apache.org/job/PreCommit-HBASE-Build/12918/artifact/hbase-shell/target/surefire-reports/org.apache.hadoop.hbase.client.TestShell-output.txt
 {noformat}
   1) Error:
 test_The_get/put_methods_should_work_for_data_written_with_Visibility(Hbase::VisibilityLabelsAdminMethodsTest):
 ArgumentError: org.apache.hadoop.hbase.DoNotRetryIOException: 
 org.apache.hadoop.hbase.security.visibility.InvalidLabelException: Label 
 'TEST_VISIBILITY' doesn't exists
   at 
 org.apache.hadoop.hbase.security.visibility.VisibilityController.setAuths(VisibilityController.java:808)
   at 
 org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos$VisibilityLabelsService$1.setAuths(VisibilityLabelsProtos.java:6036)
   at 
 org.apache.hadoop.hbase.protobuf.generated.VisibilityLabelsProtos$VisibilityLabelsService.callMethod(VisibilityLabelsProtos.java:6219)
   at 
 org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:6867)
   at 
 org.apache.hadoop.hbase.regionserver.RSRpcServices.execServiceOnRegion(RSRpcServices.java:1707)
   at 
 org.apache.hadoop.hbase.regionserver.RSRpcServices.execService(RSRpcServices.java:1689)
   at 
 org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:31309)
   at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2038)
   at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
   at 
 org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
   at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
   at java.lang.Thread.run(Thread.java:744)
 
 /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-shell/src/main/ruby/hbase/visibility_labels.rb:84:in
  `set_auths'
 ./src/test/ruby/hbase/visibility_labels_admin_test.rb:77:in 
 `test_The_get/put_methods_should_work_for_data_written_with_Visibility'
 org/jruby/RubyProc.java:270:in `call'
 org/jruby/RubyKernel.java:2105:in `send'
 org/jruby/RubyArray.java:1620:in `each'
 org/jruby/RubyArray.java:1620:in `each'
   2) Error:
 test_The_set/clear_methods_should_work_with_authorizations(Hbase::VisibilityLabelsAdminMethodsTest):
 ArgumentError: No authentication set for the given user jenkins
 
 /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-shell/src/main/ruby/hbase/visibility_labels.rb:97:in
  `get_auths'
 ./src/test/ruby/hbase/visibility_labels_admin_test.rb:57:in 
 `test_The_set/clear_methods_should_work_with_authorizations'
 org/jruby/RubyProc.java:270:in `call'
 org/jruby/RubyKernel.java:2105:in `send'
 org/jruby/RubyArray.java:1620:in `each'
 org/jruby/RubyArray.java:1620:in `each'
 {noformat}
 This is the test code
 {code:title=visibility_labels_admin_test.rb}
   label = 'TEST_VISIBILITY'
   user = org.apache.hadoop.hbase.security.User.getCurrent().getName();
   visibility_admin.add_labels(label)
   visibility_admin.set_auths(user, label)
 {code}
 It says 'label does not exists' when calling set_auths.
 Then I add some ugly logs in  DefaultVisibilityLabelServiceImpl and 
 VisibilityLabelsCache.
 {code:title=DefaultVisibilityLabelServiceImpl.java}
   public OperationStatus[] addLabels(Listbyte[] labels) throws IOException {
 ...
 if (mutateLabelsRegion(puts, finalOpStatus)) {
   updateZk(true);
 }
 for (byte[] label : labels) {
   String labelStr = Bytes.toString(label);
   LOG.info(labelStr + = + 
 this.labelsCache.getLabelOrdinal(labelStr));
 }
 ...
   }
 {code}
 {code:title=VisibilityLabelsCache.java}
   public void refreshLabelsCache(byte[] data) throws IOException {
 LOG.info(refresh, new Exception());
 ...
   }
 {code}
 And I modified TestVisibilityLabelsWithCustomVisLabService to use 
 DefaultVisibilityLabelServiceImpl, then collected the logs of setupBeforeClass
 {noformat}
 2015-02-21 

[jira] [Commented] (HBASE-13124) Option to collect latencies for individual requests

2015-02-26 Thread Hari Krishna Dara (JIRA)

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

Hari Krishna Dara commented on HBASE-13124:
---

[~busbey] I was thinking somethinng much simpler and attached a patch.

 Option to collect latencies for individual requests
 ---

 Key: HBASE-13124
 URL: https://issues.apache.org/jira/browse/HBASE-13124
 Project: HBase
  Issue Type: Improvement
  Components: Performance, test
Affects Versions: 0.98.6
Reporter: Hari Krishna Dara
 Attachments: HBASE-13124-1.patch


 Currently, the only option in {{PerformanceEvaluation}} is to print latency 
 percentile summary at the end, and it is also not suitable if we are testing 
 for a long duration (as all the timings are collected in memory). There 
 should be an option to dump the latencies with a timestamp as CSV to a file 
 so that this allows a detailed analysis on the generated data, such as:
 - Percentile calculation at the desired precision on the latencies 
 - Latencies over time
 - Histograms



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


[jira] [Commented] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leak connection

2015-02-26 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13112:


FAILURE: Integrated in HBase-1.1 #217 (See 
[https://builds.apache.org/job/HBase-1.1/217/])
HBASE-13112 quota.rb, security.rb and visibility_labels.rb leak connection 
(Ashish Singhi) (tedyu: rev 0ff1418b32fc490993e20c51ff85879d2406ea75)
* hbase-shell/src/main/ruby/hbase/hbase.rb
* hbase-shell/src/main/ruby/hbase/security.rb
* hbase-shell/src/main/ruby/hbase/visibility_labels.rb


 quota.rb, security.rb and visibility_labels.rb leak connection
 --

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112-branch-1.0.patch, HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Commented] (HBASE-12975) SplitTranaction, RegionMergeTransaction to should have InterfaceAudience of LimitedPrivate(Coproc,Phoenix)

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-12975:
-

If we make the LimitedPrivate Unstable for 1.0.z and then Evolving for 1.1.z+, 
then we'd be fine. Quote from when this came up on HBASE-12972:

{quote}
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.
{quote}

The reason to use it is that we'd label it Evolving or Stable in the next minor 
release. We could even add a note in the javadoc explaining that it's Unstable 
just to flag that folks have to keep in mind that it wasn't around at the start 
of the API cut off for 1.0. Like the compat guide says, just because we have 
the option to break things at a particular version (in this case at patches 
sine it's Unstable) doesn't mean we will.

{quote}
I'd hope not, if perhaps only for this case. Otherwise we cannot extract 
ourselves from this unfortunate situation until 1.1.0.
{quote}

Why don't we just plan to get 1.1.0 out the door in time for Phoenix 1.0? How 
aggressive is the timeline?

 SplitTranaction, RegionMergeTransaction to should have InterfaceAudience of 
 LimitedPrivate(Coproc,Phoenix)
 --

 Key: HBASE-12975
 URL: https://issues.apache.org/jira/browse/HBASE-12975
 Project: HBase
  Issue Type: Improvement
Reporter: Rajeshbabu Chintaguntla
Assignee: Rajeshbabu Chintaguntla
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-12975.patch


 Making SplitTransaction, RegionMergeTransaction limited private is required 
 to support local indexing feature in Phoenix to ensure regions colocation. 
 We can ensure region split, regions merge in the coprocessors in few method 
 calls without touching internals like creating zk's, file layout changes or 
 assignments.
 1) stepsBeforePONR, stepsAfterPONR we can ensure split.
 2) meta entries can pass through coprocessors to atomically update with the 
 normal split/merge.
 3) rollback on failure.



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


[jira] [Commented] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leak connection

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13112:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  
http://issues.apache.org/jira/secure/attachment/12701276/HBASE-13112-branch-1.0.patch
  against branch-1.0 branch at commit 458846ef7b0528cb7952c413694eaf55c5d94342.
  ATTACHMENT ID: 12701276

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

{color:red}-1 tests included{color}.  The patch doesn't appear to include 
any new or modified tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

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

This message is automatically generated.

 quota.rb, security.rb and visibility_labels.rb leak connection
 --

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112-branch-1.0.patch, HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Updated] (HBASE-13123) Minor bug in ROW bloom filter

2015-02-26 Thread ramkrishna.s.vasudevan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13123?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ramkrishna.s.vasudevan updated HBASE-13123:
---
Status: Patch Available  (was: Open)

 Minor bug in ROW bloom filter
 -

 Key: HBASE-13123
 URL: https://issues.apache.org/jira/browse/HBASE-13123
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Attachments: HBASE-13163.patch


 While checking the code for Bloom filter found that while checking if a key 
 passes the ROW bloom check we try to create a bloom key. The bloom key should 
 be constructed only with the row part of the key. But try to form the bloom 
 key including the meta data part of the key.



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


[jira] [Updated] (HBASE-13123) Minor bug in ROW bloom filter

2015-02-26 Thread ramkrishna.s.vasudevan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13123?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ramkrishna.s.vasudevan updated HBASE-13123:
---
Attachment: HBASE-13163.patch

A simple one line patch. 

 Minor bug in ROW bloom filter
 -

 Key: HBASE-13123
 URL: https://issues.apache.org/jira/browse/HBASE-13123
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Attachments: HBASE-13163.patch


 While checking the code for Bloom filter found that while checking if a key 
 passes the ROW bloom check we try to create a bloom key. The bloom key should 
 be constructed only with the row part of the key. But try to form the bloom 
 key including the meta data part of the key.



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


[jira] [Updated] (HBASE-13082) Coarsen StoreScanner locks to RegionScanner

2015-02-26 Thread Lars Hofhansl (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lars Hofhansl updated HBASE-13082:
--
Attachment: 13082.txt

Reattaching patch for testing.

 Coarsen StoreScanner locks to RegionScanner
 ---

 Key: HBASE-13082
 URL: https://issues.apache.org/jira/browse/HBASE-13082
 Project: HBase
  Issue Type: Bug
Reporter: Lars Hofhansl
 Attachments: 13082-test.txt, 13082.txt, 13082.txt


 Continuing where HBASE-10015 left of.
 We can avoid locking (and memory fencing) inside StoreScanner by deferring to 
 the lock already held by the RegionScanner.
 In tests this shows quite a scan improvement and reduced CPU (the fences make 
 the cores wait for memory fetches).
 There are some drawbacks too:
 * All calls to RegionScanner need to be remain synchronized
 * Implementors of coprocessors need to be diligent in following the locking 
 contract. For example Phoenix does not lock RegionScanner.nextRaw() and 
 required in the documentation (not picking on Phoenix, this one is my fault 
 as I told them it's OK)
 * possible starving of flushes and compaction with heavy read load. 
 RegionScanner operations would keep getting the locks and the 
 flushes/compactions would not be able finalize the set of files.
 I'll have a patch soon.



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


[jira] [Commented] (HBASE-13097) Use same EventLoopGroup for different AsyncRpcClients if possible

2015-02-26 Thread zhangduo (JIRA)

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

zhangduo commented on HBASE-13097:
--

Yeah, all green.

 Use same EventLoopGroup for different AsyncRpcClients if possible
 -

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch, HBASE-13097_1.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): count=15 time=55525ms
 {noformat}
 Update: We use a singleton PooledByteBufAllocator so the reason should be too 
 many threads. So we will work on reduce the connections and rpclients in unit 
 tests.



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


[jira] [Commented] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Ashish Singhi (JIRA)

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

Ashish Singhi commented on HBASE-13100:
---

Manual test result.
{noformat}
hbase(main):003:0 create 't2', 'f1', SPLITS = ['10', '20', '30', '40']
0 row(s) in 1.3820 seconds

= Hbase::Table - t2
hbase(main):004:0 get_splits 't2'
Total number of splits = 5

= [, 10, 20, 30, 40]

{noformat}

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Updated] (HBASE-13097) Use same EventLoopGroup for different AsyncRpcClients if possible

2015-02-26 Thread zhangduo (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhangduo updated HBASE-13097:
-
Attachment: HBASE-13097_2.patch

Add unit test for global EventLoopGroup

 Use same EventLoopGroup for different AsyncRpcClients if possible
 -

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch, HBASE-13097_1.patch, 
 HBASE-13097_2.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): count=15 time=55525ms
 {noformat}
 Update: We use a singleton PooledByteBufAllocator so the reason should be too 
 many threads. So we will work on reduce the connections and rpclients in unit 
 tests.



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


[jira] [Commented] (HBASE-13058) Hbase shell command 'scan' for non existent table shows unnecessary info for one unrelated existent table.

2015-02-26 Thread Srikanth Srungarapu (JIRA)

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

Srikanth Srungarapu commented on HBASE-13058:
-

Error message is looking nasty. 
[~a72877] Just a thought. We can parse table name directly from exception 
instead of relying on the arguments. Very similar to what is being done in case 
of TableExists exception.
{code}
if cause.kind_of?(org.apache.hadoop.hbase.TableExistsException) then
  str = java.lang.String.new(#{cause})
  strs = str.split(\n)
  if strs.size  0 then
s = strs[0].split(' ');
if(s.size  1)
  raise Table already exists: #{s[1]}!
end
  raise Table already exists: #{strs[0]}!
  end
end
{code}

 Hbase shell command 'scan' for non existent table shows unnecessary info for 
 one unrelated existent table.
 --

 Key: HBASE-13058
 URL: https://issues.apache.org/jira/browse/HBASE-13058
 Project: HBase
  Issue Type: Bug
  Components: Client
Reporter: Abhishek Kumar
Assignee: Abhishek Kumar
Priority: Trivial
 Fix For: 2.0.0, 1.1.0

 Attachments: 0001-HBASE-13058-Error-messages-in-scan-table.patch, 
 0001-HBASE-13058-shell-unknown-table-message-update.patch


 When scanning for a non existent table in hbase shell, error message in shell 
  sometimes(based on META table content) displays completely unrelated table 
 info , which seems to be unnecessary and inconsistent with other error 
 messages:
 {noformat}
 hbase(main):016:0 scan 'noTable'
 ROW  COLUMN+CELL
 ERROR: Unknown table Table 'noTable' was not found, got: hbase:namespace.!
 -
 hbase(main):017:0 scan '01_noTable'
 ROW  COLUMN+CELL
 ERROR: Unknown table 01_noTable!
 --
 {noformat}
 Its happening when doing a META table scan (to locate input table ) and 
 scanner stops at row of another table (beyond which table can not exist) in 
 ConnectionManager.locateRegionInMeta:
 {noformat}
 private RegionLocations locateRegionInMeta(TableName tableName, byte[] row,
boolean useCache, boolean retry, int replicaId) throws 
 IOException {
 .
 
 // possible we got a region of a different table...
   if (!regionInfo.getTable().equals(tableName)) {
 throw new TableNotFoundException(
   Table ' + tableName + ' was not found, got:  +
   regionInfo.getTable() + .);
   }
 ...
 ...
 {noformat}
 Here, we can simply put a debug message(if required) and just throw the 
 TableNotFoundException(tableName)  with only tableName instead of with 
 scanner positioned row.



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


[jira] [Commented] (HBASE-13124) Option to collect latencies for individual requests

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-13124:
-

oooh. nice. Could we dump these as Avro?

 Option to collect latencies for individual requests
 ---

 Key: HBASE-13124
 URL: https://issues.apache.org/jira/browse/HBASE-13124
 Project: HBase
  Issue Type: Improvement
  Components: Performance, test
Affects Versions: 0.98.6
Reporter: Hari Krishna Dara

 Currently, the only option in {{PerformanceEvaluation}} is to print latency 
 percentile summary at the end, and it is also not suitable if we are testing 
 for a long duration (as all the timings are collected in memory). There 
 should be an option to dump the latencies with a timestamp as CSV to a file 
 so that this allows a detailed analysis on the generated data, such as:
 - Percentile calculation at the desired precision on the latencies 
 - Latencies over time
 - Histograms



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


[jira] [Commented] (HBASE-13124) Option to collect latencies for individual requests

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-13124:
-

Or would htrace support + a local trace-to-file receiver be enough?

 Option to collect latencies for individual requests
 ---

 Key: HBASE-13124
 URL: https://issues.apache.org/jira/browse/HBASE-13124
 Project: HBase
  Issue Type: Improvement
  Components: Performance, test
Affects Versions: 0.98.6
Reporter: Hari Krishna Dara

 Currently, the only option in {{PerformanceEvaluation}} is to print latency 
 percentile summary at the end, and it is also not suitable if we are testing 
 for a long duration (as all the timings are collected in memory). There 
 should be an option to dump the latencies with a timestamp as CSV to a file 
 so that this allows a detailed analysis on the generated data, such as:
 - Percentile calculation at the desired precision on the latencies 
 - Latencies over time
 - Histograms



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


[jira] [Updated] (HBASE-13124) Option to collect latencies for individual requests

2015-02-26 Thread Hari Krishna Dara (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13124?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hari Krishna Dara updated HBASE-13124:
--
Attachment: HBASE-13124-1.patch

Patch adds {{--responseFile}} to turn on writing this data out to the specified 
file. By default this only write a summary line every few milliseconds, but 
with {{--detailedResponse}} option, it writes every single response.

 Option to collect latencies for individual requests
 ---

 Key: HBASE-13124
 URL: https://issues.apache.org/jira/browse/HBASE-13124
 Project: HBase
  Issue Type: Improvement
  Components: Performance, test
Affects Versions: 0.98.6
Reporter: Hari Krishna Dara
 Attachments: HBASE-13124-1.patch


 Currently, the only option in {{PerformanceEvaluation}} is to print latency 
 percentile summary at the end, and it is also not suitable if we are testing 
 for a long duration (as all the timings are collected in memory). There 
 should be an option to dump the latencies with a timestamp as CSV to a file 
 so that this allows a detailed analysis on the generated data, such as:
 - Percentile calculation at the desired precision on the latencies 
 - Latencies over time
 - Histograms



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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ashish Singhi (JIRA)

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

Ashish Singhi commented on HBASE-13111:
---

Thanks Ted.

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Commented] (HBASE-13120) Allow disabling hadoop classpath and native library lookup

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-13120:
-

{quote}
+if [ $DISABLE_HADOOP_CLASSPATH_LOOKUP != true ] ; then
{quote}

Please name this HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP. Not that I think we're 
likely to conflict on the name, but just in case.

Also, if you just check if the string is non-zero length it'll be easier to 
integrate programmatically determining if we should disable.

{quote}
I think this is a valid use case where there is hadoop installed on the 
node(s), but we are trying to run HBase from a self-contained tarball. We 
should not try to find the installed hadoop in this case.
{quote}

This is a very good point. How much more work would it be to get this exported 
when we're starting local distributed mode? At a minimum we should add a note 
to the ref guide telling folks to set it.


 Allow disabling hadoop classpath and native library lookup
 --

 Key: HBASE-13120
 URL: https://issues.apache.org/jira/browse/HBASE-13120
 Project: HBase
  Issue Type: Improvement
  Components: hbase
Affects Versions: 0.98.0
Reporter: Siddharth Wagle
 Attachments: HBASE-13120.patch


 - Current bin/hbase script sets the java.library.path to include hadoop 
 native libs based on what version of hadoop is installed on the box.
 {code}
 HADOOP_IN_PATH=$(PATH=${HADOOP_HOME:-${HADOOP_PREFIX}}/bin:$PATH which 
 hadoop 2/dev/null)
 {code}
 - This effectively means that a self-contained HBase running with a different 
 version of embedded hadoop jars will fail to work in case of version 
 incompatibilities.
 - Example: AMBARI-5707, runs a embedded HBase on local FS side-by-side with 
 cluster Hadoop installation.
 - It would be good to have a hbase-env variable to completely override native 
 lib path or a config to disable native lib path lookup, in which case user 
 has to provide it during start.



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


[jira] [Updated] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13100:
--
Status: Patch Available  (was: Open)

Please review

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Commented] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Ashish Singhi (JIRA)

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

Ashish Singhi commented on HBASE-13100:
---

Sorry, I did not get what you mean.

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Commented] (HBASE-13123) Minor bug in ROW bloom filter

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13123:
---

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

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

{color:red}-1 tests included{color}.  The patch doesn't appear to include 
any new or modified tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.
{color:green}+1 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:red}-1 core tests{color}.  The patch failed these unit tests:
 

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

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

This message is automatically generated.

 Minor bug in ROW bloom filter
 -

 Key: HBASE-13123
 URL: https://issues.apache.org/jira/browse/HBASE-13123
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Attachments: HBASE-13163.patch


 While checking the code for Bloom filter found that while checking if a key 
 passes the ROW bloom check we try to create a bloom key. The bloom key should 
 be constructed only with the row part of the key. But try to form the bloom 
 key including the meta data part of the key.



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


[jira] [Commented] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-13100:
-

please make sure that folks can get the splits from the table object as well. 
e.g.

{code}
hbase(main):003:0 create 't2', 'f1', SPLITS = ['10', '20', '30', '40']
0 row(s) in 1.3820 seconds

= Hbase::Table - t2
hbase(main):004:0  table = get_table 't2'
= Hbase::Table - t2
hbase(main):004:0 table.get_splits
Total number of splits = 5

= [, 10, 20, 30, 40]
{code}

You can use HBase::Table.add_shell_command to do this quickly in the definition 
of get_splits (see shell/commands/count for an example)

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13100.patch


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



--
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] [Updated] (HBASE-13122) return codes of some filters not efficent

2015-02-26 Thread Shuaifeng Zhou (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shuaifeng Zhou updated HBASE-13122:
---
Attachment: 13122-master.patch

patch for master branch attached

 return codes of some filters not efficent
 -

 Key: HBASE-13122
 URL: https://issues.apache.org/jira/browse/HBASE-13122
 Project: HBase
  Issue Type: Improvement
  Components: Filters
Affects Versions: 0.94.24, 1.0.1, 0.98.10.1
Reporter: Shuaifeng Zhou
 Attachments: 13122-master.patch, 13122.patch


 ColumnRangeFilter:
  when minColumnInclusive is false, it means all the cells at the current 
 rowcolumn not fit the condition, so it should skip to next column, return 
 code should be NEXT_COL, not SKIP.
 FamilyFilter is the similar sitution.
 Currently, SKIP will not causing error, but not efficent.



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


[jira] [Updated] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leak connection

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13112?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13112:
--
Attachment: HBASE-13112-branch-1.0.patch

Patch for branch-1*
In branch-1* there is no quota.rb as it will commit only to master branch as 
part of HBASE-11598

Thanks, Ted

 quota.rb, security.rb and visibility_labels.rb leak connection
 --

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112-branch-1.0.patch, HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Updated] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leak connection

2015-02-26 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13112?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-13112:
---
  Resolution: Fixed
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

Thanks for the patch, Ashish.

 quota.rb, security.rb and visibility_labels.rb leak connection
 --

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112-branch-1.0.patch, HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Created] (HBASE-13123) Minor bug in ROW bloom filter

2015-02-26 Thread ramkrishna.s.vasudevan (JIRA)
ramkrishna.s.vasudevan created HBASE-13123:
--

 Summary: Minor bug in ROW bloom filter
 Key: HBASE-13123
 URL: https://issues.apache.org/jira/browse/HBASE-13123
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor


While checking the code for Bloom filter found that while checking if a key 
passes the ROW bloom check we try to create a bloom key. The bloom key should 
be constructed only with the row part of the key. But try to form the bloom key 
including the meta data part of the key.



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


[jira] [Created] (HBASE-13124) Option to collect latencies for individual requests

2015-02-26 Thread Hari Krishna Dara (JIRA)
Hari Krishna Dara created HBASE-13124:
-

 Summary: Option to collect latencies for individual requests
 Key: HBASE-13124
 URL: https://issues.apache.org/jira/browse/HBASE-13124
 Project: HBase
  Issue Type: Improvement
  Components: Performance, test
Affects Versions: 0.98.6
Reporter: Hari Krishna Dara


Currently, the only option in {{PerformanceEvaluation}} is to print latency 
percentile summary at the end, and it is also not suitable if we are testing 
for a long duration (as all the timings are collected in memory). There should 
be an option to dump the latencies with a timestamp as CSV to a file so that 
this allows a detailed analysis on the generated data, such as:
- Percentile calculation at the desired precision on the latencies 
- Latencies over time
- Histograms



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


[jira] [Commented] (HBASE-13124) Option to collect latencies for individual requests

2015-02-26 Thread Hari Krishna Dara (JIRA)

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

Hari Krishna Dara commented on HBASE-13124:
---

Oops... read the options as {{\--responseFile}} and {{\--detailedResponse}}.

 Option to collect latencies for individual requests
 ---

 Key: HBASE-13124
 URL: https://issues.apache.org/jira/browse/HBASE-13124
 Project: HBase
  Issue Type: Improvement
  Components: Performance, test
Affects Versions: 0.98.6
Reporter: Hari Krishna Dara
 Attachments: HBASE-13124-1.patch


 Currently, the only option in {{PerformanceEvaluation}} is to print latency 
 percentile summary at the end, and it is also not suitable if we are testing 
 for a long duration (as all the timings are collected in memory). There 
 should be an option to dump the latencies with a timestamp as CSV to a file 
 so that this allows a detailed analysis on the generated data, such as:
 - Percentile calculation at the desired precision on the latencies 
 - Latencies over time
 - Histograms



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


[jira] [Commented] (HBASE-11544) [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME

2015-02-26 Thread Jonathan Lawlor (JIRA)

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

Jonathan Lawlor commented on HBASE-11544:
-

Line length violations are in the auto generated protobuf classes

 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return 
 batch even if it means OOME
 --

 Key: HBASE-11544
 URL: https://issues.apache.org/jira/browse/HBASE-11544
 Project: HBase
  Issue Type: Bug
Reporter: stack
Assignee: Jonathan Lawlor
Priority: Critical
  Labels: beginner
 Attachments: HBASE-11544-v1.patch, HBASE-11544-v2.patch, 
 HBASE-11544-v3.patch, HBASE-11544-v4.patch, HBASE-11544-v5.patch, 
 HBASE-11544-v6.patch, HBASE-11544-v6.patch, HBASE-11544-v6.patch


 Running some tests, I set hbase.client.scanner.caching=1000.  Dataset has 
 large cells.  I kept OOME'ing.
 Serverside, we should measure how much we've accumulated and return to the 
 client whatever we've gathered once we pass out a certain size threshold 
 rather than keep accumulating till we OOME.



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


[jira] [Updated] (HBASE-13119) FileLink should implement equals

2015-02-26 Thread Enis Soztutar (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Enis Soztutar updated HBASE-13119:
--
Attachment: hbase-13119_v1.patch

Here is a simple patch. 

[~mbertozzi], [~jmhsieh] mind a quick review? 

 FileLink should implement equals
 

 Key: HBASE-13119
 URL: https://issues.apache.org/jira/browse/HBASE-13119
 Project: HBase
  Issue Type: Bug
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 2.0.0, 1.1.0

 Attachments: hbase-13119_v1.patch


 StoreFileInfo used to implement Comparable, but got changed in HBASE-12749. 
 Now comparing StoreFileInfo's with links results in false, since 
 FileLink/HFileLink does not implement equals(). 
 We should do both equals and hashCode() it seems. 



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


[jira] [Created] (HBASE-13120) Allow disabling hadoop classpath and native library lookup

2015-02-26 Thread Siddharth Wagle (JIRA)
Siddharth Wagle created HBASE-13120:
---

 Summary: Allow disabling hadoop classpath and native library lookup
 Key: HBASE-13120
 URL: https://issues.apache.org/jira/browse/HBASE-13120
 Project: HBase
  Issue Type: Improvement
  Components: hbase
Affects Versions: 0.98.0
Reporter: Siddharth Wagle


- Current bin/hbase script sets the java.library.path to include hadoop native 
libs based on what version of hadoop is installed on the box.
{code}
HADOOP_IN_PATH=$(PATH=${HADOOP_HOME:-${HADOOP_PREFIX}}/bin:$PATH which hadoop 
2/dev/null)
{code}

- This effectively means that a self-contained HBase running with a different 
version of embedded hadoop jars will fail to work in case of version 
incompatibilities.

- Example: AMBARI-5707, runs a embedded HBase on local FS side-by-side with 
cluster Hadoop installation.

- It would be good to have a hbase-env variable to completely override native 
lib path or a config to disable native lib path lookup, in which case user has 
to provide it during start.




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


[jira] [Updated] (HBASE-12924) HRegionServer#MovedRegionsCleaner Chore does not start

2015-02-26 Thread Sameet Agarwal (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-12924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sameet Agarwal updated HBASE-12924:
---
Attachment: first-task-v3.patch

Replaced Thread.Sleep with a waitFor

 HRegionServer#MovedRegionsCleaner Chore does not start
 --

 Key: HBASE-12924
 URL: https://issues.apache.org/jira/browse/HBASE-12924
 Project: HBase
  Issue Type: Bug
Reporter: Jonathan Lawlor
Priority: Minor
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: first-task-v2.patch, first-task-v3.patch, 
 first-task.patch


 This issue is very similar to the one described in HBASE-11354. The method 
 createAndStart in MovedRegionsCleaner creates an instance of the chore but 
 never starts the underlying thread:
 {code}
 static MovedRegionsCleaner createAndStart(HRegionServer rs){
   Stoppable stoppable = new Stoppable() {
 private volatile boolean isStopped = false;
 @Override public void stop(String why) { isStopped = true;}
 @Override public boolean isStopped() {return isStopped;}
   };
   return new MovedRegionsCleaner(rs, stoppable);
 }
 {code}
 Nobody has noticed this issue so far so the Chore may not be that important



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


[jira] [Updated] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13111:
--
Fix Version/s: 1.1.0
   1.0.1
   2.0.0
   Status: Patch Available  (was: Open)

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Updated] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13111:
--
Attachment: HBASE-13111.patch

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13071:
---

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

{color:red}-1 @author{color}.  The patch appears to contain 2 @author tags 
which the Hadoop community has agreed to not allow in code contributions.

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

{color:red}-1 patch{color}.  The patch command could not apply the patch.

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

This message is automatically generated.

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBaseStreamingScanDesign.pdf, 
 HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leaks connection

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13112:
---

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

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

{color:red}-1 tests included{color}.  The patch doesn't appear to include 
any new or modified tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.
{color:green}+1 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:red}-1 core tests{color}.  The patch failed these unit tests:
 

 {color:red}-1 core zombie tests{color}.  There are 2 zombie test(s):   
at 
org.apache.hadoop.hbase.master.TestCatalogJanitor.testLastParentCleanedEvenIfDaughterGoneFirst(TestCatalogJanitor.java:550)

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

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

This message is automatically generated.

 quota.rb, security.rb and visibility_labels.rb leaks connection
 ---

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13111:


FAILURE: Integrated in HBase-TRUNK #6174 (See 
[https://builds.apache.org/job/HBase-TRUNK/6174/])
HBASE-13111 truncate_preserve command is failing with undefined method error 
(Ashish Singhi) (tedyu: rev 49b4f3737eb0dd7c5d88d6dcbe8b5d4f167c6a2b)
* hbase-shell/src/main/ruby/hbase/admin.rb


 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Updated] (HBASE-11544) [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME

2015-02-26 Thread Jonathan Lawlor (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-11544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Lawlor updated HBASE-11544:

Attachment: HBASE-11544-v6.patch

New patch to fix the tests that were failing due to the new return type from 
InteralScanner

 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return 
 batch even if it means OOME
 --

 Key: HBASE-11544
 URL: https://issues.apache.org/jira/browse/HBASE-11544
 Project: HBase
  Issue Type: Bug
Reporter: stack
Assignee: Jonathan Lawlor
Priority: Critical
  Labels: beginner
 Attachments: HBASE-11544-v1.patch, HBASE-11544-v2.patch, 
 HBASE-11544-v3.patch, HBASE-11544-v4.patch, HBASE-11544-v5.patch, 
 HBASE-11544-v6.patch


 Running some tests, I set hbase.client.scanner.caching=1000.  Dataset has 
 large cells.  I kept OOME'ing.
 Serverside, we should measure how much we've accumulated and return to the 
 client whatever we've gathered once we pass out a certain size threshold 
 rather than keep accumulating till we OOME.



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


[jira] [Updated] (HBASE-12924) HRegionServer#MovedRegionsCleaner Chore does not start

2015-02-26 Thread Sameet Agarwal (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-12924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sameet Agarwal updated HBASE-12924:
---
Attachment: first-task.patch

The patch adds the MovedRegionsCleaner chore to the background chores. Also 
added a unit test to test this.


 HRegionServer#MovedRegionsCleaner Chore does not start
 --

 Key: HBASE-12924
 URL: https://issues.apache.org/jira/browse/HBASE-12924
 Project: HBase
  Issue Type: Bug
Reporter: Jonathan Lawlor
Priority: Minor
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: first-task.patch


 This issue is very similar to the one described in HBASE-11354. The method 
 createAndStart in MovedRegionsCleaner creates an instance of the chore but 
 never starts the underlying thread:
 {code}
 static MovedRegionsCleaner createAndStart(HRegionServer rs){
   Stoppable stoppable = new Stoppable() {
 private volatile boolean isStopped = false;
 @Override public void stop(String why) { isStopped = true;}
 @Override public boolean isStopped() {return isStopped;}
   };
   return new MovedRegionsCleaner(rs, stoppable);
 }
 {code}
 Nobody has noticed this issue so far so the Chore may not be that important



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


[jira] [Updated] (HBASE-11544) [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME

2015-02-26 Thread Jonathan Lawlor (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-11544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Lawlor updated HBASE-11544:

Status: Patch Available  (was: Open)

 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return 
 batch even if it means OOME
 --

 Key: HBASE-11544
 URL: https://issues.apache.org/jira/browse/HBASE-11544
 Project: HBase
  Issue Type: Bug
Reporter: stack
Assignee: Jonathan Lawlor
Priority: Critical
  Labels: beginner
 Attachments: HBASE-11544-v1.patch, HBASE-11544-v2.patch, 
 HBASE-11544-v3.patch, HBASE-11544-v4.patch, HBASE-11544-v5.patch, 
 HBASE-11544-v6.patch


 Running some tests, I set hbase.client.scanner.caching=1000.  Dataset has 
 large cells.  I kept OOME'ing.
 Serverside, we should measure how much we've accumulated and return to the 
 client whatever we've gathered once we pass out a certain size threshold 
 rather than keep accumulating till we OOME.



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


[jira] [Updated] (HBASE-11544) [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME

2015-02-26 Thread Jonathan Lawlor (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-11544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Lawlor updated HBASE-11544:

Status: Open  (was: Patch Available)

 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return 
 batch even if it means OOME
 --

 Key: HBASE-11544
 URL: https://issues.apache.org/jira/browse/HBASE-11544
 Project: HBase
  Issue Type: Bug
Reporter: stack
Assignee: Jonathan Lawlor
Priority: Critical
  Labels: beginner
 Attachments: HBASE-11544-v1.patch, HBASE-11544-v2.patch, 
 HBASE-11544-v3.patch, HBASE-11544-v4.patch, HBASE-11544-v5.patch


 Running some tests, I set hbase.client.scanner.caching=1000.  Dataset has 
 large cells.  I kept OOME'ing.
 Serverside, we should measure how much we've accumulated and return to the 
 client whatever we've gathered once we pass out a certain size threshold 
 rather than keep accumulating till we OOME.



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


[jira] [Updated] (HBASE-13014) Java Tool For Region Moving

2015-02-26 Thread Abhishek Singh Chouhan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Abhishek Singh Chouhan updated HBASE-13014:
---
Attachment: (was: HBASE-13014-v2.patch)

 Java Tool For Region Moving 
 

 Key: HBASE-13014
 URL: https://issues.apache.org/jira/browse/HBASE-13014
 Project: HBase
  Issue Type: Improvement
Reporter: Abhishek Singh Chouhan
Assignee: Abhishek Singh Chouhan
 Attachments: HBASE-13014.patch


 As per discussion on HBASE-12989 we should move the functionality of 
 region_mover.rb into a Java tool and use region_mover.rb only only as a 
 wrapper around it.



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

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

Eshcar Hillel commented on HBASE-13071:
---

I tried running the code from master, but encountered problems (even without 
the patch).
Specifically, when running commands from hbase shell wasn't able to exit the 
shell properly, therefore created the patch based on 0.98.

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Updated] (HBASE-13014) Java Tool For Region Moving

2015-02-26 Thread Abhishek Singh Chouhan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Abhishek Singh Chouhan updated HBASE-13014:
---
Attachment: HBASE-13014-v2.patch

V2 with comments incorporated.

 Java Tool For Region Moving 
 

 Key: HBASE-13014
 URL: https://issues.apache.org/jira/browse/HBASE-13014
 Project: HBase
  Issue Type: Improvement
Reporter: Abhishek Singh Chouhan
Assignee: Abhishek Singh Chouhan
 Attachments: HBASE-13014-v2.patch, HBASE-13014.patch


 As per discussion on HBASE-12989 we should move the functionality of 
 region_mover.rb into a Java tool and use region_mover.rb only only as a 
 wrapper around it.



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


[jira] [Updated] (HBASE-13014) Java Tool For Region Moving

2015-02-26 Thread Abhishek Singh Chouhan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Abhishek Singh Chouhan updated HBASE-13014:
---
Attachment: HBASE-13014-v2.patch

 Java Tool For Region Moving 
 

 Key: HBASE-13014
 URL: https://issues.apache.org/jira/browse/HBASE-13014
 Project: HBase
  Issue Type: Improvement
Reporter: Abhishek Singh Chouhan
Assignee: Abhishek Singh Chouhan
 Attachments: HBASE-13014-v2.patch, HBASE-13014.patch


 As per discussion on HBASE-12989 we should move the functionality of 
 region_mover.rb into a Java tool and use region_mover.rb only only as a 
 wrapper around it.



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13071:
---

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

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

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

{color:red}-1 patch{color}.  The patch command could not apply the patch.

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

This message is automatically generated.

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13098) HBase Connection Control

2015-02-26 Thread Ashish Singhi (JIRA)

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

Ashish Singhi commented on HBASE-13098:
---

bq. Please review current state of RPC and fold into your design what is 
missing. We already bound inbound traffic. Point out what is wrong w/ our 
approach. Thanks.
[~saint@gmail.com], thanks for your comment. There is nothing in our 
approach. I went through HBASE-11598 and found that it limits the control only 
on few api's not all (correct me If I am wrong here) and I did not find any 
other RPC connection controllers. So came up with this.
May be I can relate this one with [~ndimiduk] idea on HBASE-13101.

 HBase Connection Control
 

 Key: HBASE-13098
 URL: https://issues.apache.org/jira/browse/HBASE-13098
 Project: HBase
  Issue Type: New Feature
  Components: security
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13098.patch, HBase Connection Control.pdf


 It is desirable to set the limit on the number of client connections 
 permitted to the HBase server by controlling with certain system 
 variables/parameters. Too many connections to the HBase server imply too many 
 queries and MR jobs running on HBase. This can slow down the performance of 
 the system and lead to denial of service. Hence such connections need to be 
 controlled. Using too many connections may just cause thrashing rather than 
 get more useful work done.
 This is kind off inspired from 
 http://www.ebaytechblog.com/2014/08/21/quality-of-service-in-hadoop/#.VO2JXXyUe9y



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


[jira] [Commented] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leaks connection

2015-02-26 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-13112:


+1

 quota.rb, security.rb and visibility_labels.rb leaks connection
 ---

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Commented] (HBASE-13097) Reduce Connection and RpcClient creations in unit tests

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13097:
---

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

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

{color:red}-1 tests included{color}.  The patch doesn't appear to include 
any new or modified tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.
{color:green}+1 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:red}-1 core tests{color}.  The patch failed these unit tests:
 

 {color:red}-1 core zombie tests{color}.  There are 2 zombie test(s):   
at 
org.apache.hadoop.hbase.http.TestHttpServerLifecycle.testStartedServerIsAlive(TestHttpServerLifecycle.java:71)
at 
org.apache.hadoop.mapred.TestLazyOutput.testLazyOutput(TestLazyOutput.java:195)

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

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

This message is automatically generated.

 Reduce Connection and RpcClient creations in unit tests
 ---

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows 

[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-13097) Reduce Connection and RpcClient creations in unit tests

2015-02-26 Thread Jurriaan Mous (JIRA)

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

Jurriaan Mous commented on HBASE-13097:
---

Yes it is a valid solution and would make having multiple connections a lot 
cheaper. I am ok with it.
I think it would be very rare that anyone wants to have different Connections 
with separate eventLoopGroups with different characteristics. This way it is 
still possible.

 Reduce Connection and RpcClient creations in unit tests
 ---

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): count=15 time=55525ms
 {noformat}
 Update: We use a singleton PooledByteBufAllocator so the reason should be too 
 many threads. So we will work on reduce the connections and rpclients in unit 
 tests.



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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-13111:


+1

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Commented] (HBASE-13097) Reduce Connection and RpcClient creations in unit tests

2015-02-26 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-13097:


lgtm

 Reduce Connection and RpcClient creations in unit tests
 ---

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): count=15 time=55525ms
 {noformat}
 Update: We use a singleton PooledByteBufAllocator so the reason should be too 
 many threads. So we will work on reduce the connections and rpclients in unit 
 tests.



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


[jira] [Updated] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-13111:
---
Hadoop Flags: Reviewed

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Updated] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-13111:
---
Resolution: Fixed
Status: Resolved  (was: Patch Available)

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Updated] (HBASE-13113) BufferedMutatorImpl should return currentWriteBufferSize in getWriteBufferSize()

2015-02-26 Thread Solomon Duskis (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13113?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Solomon Duskis updated HBASE-13113:
---
Affects Version/s: 1.0.1
   2.0.0

 BufferedMutatorImpl should return currentWriteBufferSize in 
 getWriteBufferSize()
 

 Key: HBASE-13113
 URL: https://issues.apache.org/jira/browse/HBASE-13113
 Project: HBase
  Issue Type: Bug
Affects Versions: 2.0.0, 1.0.1
Reporter: Solomon Duskis





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


[jira] [Created] (HBASE-13113) BufferedMutatorImpl should return currentWriteBufferSize in getWriteBufferSize()

2015-02-26 Thread Solomon Duskis (JIRA)
Solomon Duskis created HBASE-13113:
--

 Summary: BufferedMutatorImpl should return currentWriteBufferSize 
in getWriteBufferSize()
 Key: HBASE-13113
 URL: https://issues.apache.org/jira/browse/HBASE-13113
 Project: HBase
  Issue Type: Bug
Reporter: Solomon Duskis






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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-13111:


Ran TestShell with patch which passed.

Thanks for the patch, Ashish.

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13111:


FAILURE: Integrated in HBase-1.1 #216 (See 
[https://builds.apache.org/job/HBase-1.1/216/])
HBASE-13111 truncate_preserve command is failing with undefined method error 
(Ashish Singhi) (tedyu: rev ac7faf3ef70930c1db49e0669fffc66a423b7412)
* hbase-shell/src/main/ruby/hbase/admin.rb


 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-13071:


For ClientAsyncPrefetchScanner.java and ClientSimpleScanner.java:
please add license header
add annotation for audience

Mind putting patch on reviewboard ?

Thanks

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

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

Eshcar Hillel commented on HBASE-13071:
---

I use the following commands to create the patches
git format-patch 0.98 --minimal --stdout  HBASE-13071-v1.patch 
git diff --no-prefix 0.98  HBASE-13071-v2.patch

Any idea why these can't be applied?

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-13071:


Applying patch v2 resulted in the following rejects:
{code}
-rw-r--r--  1 tyu  staff  1803 Feb 26 07:48 
./hbase-client/src/main/java/org/apache/hadoop/hbase/client/ClientScanner.java.rej
-rw-r--r--  1 tyu  staff  730 Feb 26 07:48 
./hbase-client/src/main/java/org/apache/hadoop/hbase/client/ClientSmallScanner.java.rej
-rw-r--r--  1 tyu  staff  689 Feb 26 07:48 
./hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java.rej
-rw-r--r--  1 tyu  staff  696 Feb 26 07:48 
./hbase-client/src/main/java/org/apache/hadoop/hbase/client/ReversedClientScanner.java.rej
-rw-r--r--  1 tyu  staff  1374 Feb 26 07:48 
./hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java.rej
-rw-r--r--  1 tyu  staff  1504 Feb 26 07:48 
./hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableConfiguration.java.rej
{code}
Please update your workspace to latest master.

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

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

Eshcar Hillel commented on HBASE-13071:
---

I tried running the code from master, but encountered problems (even without 
the patch).
Specifically, when running commands from hbase shell wasn't able to exit the 
shell properly, therefore created the patch based on 0.98.

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13098) HBase Connection Control

2015-02-26 Thread Ashish Singhi (JIRA)

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

Ashish Singhi commented on HBASE-13098:
---

bq. There is nothing in our approach
I meant there is nothing wrong in our approach. Sorry for the typo.

 HBase Connection Control
 

 Key: HBASE-13098
 URL: https://issues.apache.org/jira/browse/HBASE-13098
 Project: HBase
  Issue Type: New Feature
  Components: security
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13098.patch, HBase Connection Control.pdf


 It is desirable to set the limit on the number of client connections 
 permitted to the HBase server by controlling with certain system 
 variables/parameters. Too many connections to the HBase server imply too many 
 queries and MR jobs running on HBase. This can slow down the performance of 
 the system and lead to denial of service. Hence such connections need to be 
 controlled. Using too many connections may just cause thrashing rather than 
 get more useful work done.
 This is kind off inspired from 
 http://www.ebaytechblog.com/2014/08/21/quality-of-service-in-hadoop/#.VO2JXXyUe9y



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


[jira] [Commented] (HBASE-13113) BufferedMutatorImpl should return currentWriteBufferSize in getWriteBufferSize()

2015-02-26 Thread Solomon Duskis (JIRA)

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

Solomon Duskis commented on HBASE-13113:


This method in BufferedMutatorImpl is incorrect:

{code}
  @Override
  public long getWriteBufferSize() {
return this.writeBufferSize;
  }
{code}

 BufferedMutatorImpl should return currentWriteBufferSize in 
 getWriteBufferSize()
 

 Key: HBASE-13113
 URL: https://issues.apache.org/jira/browse/HBASE-13113
 Project: HBase
  Issue Type: Bug
Affects Versions: 2.0.0, 1.0.1
Reporter: Solomon Duskis
Assignee: Solomon Duskis





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


[jira] [Assigned] (HBASE-13113) BufferedMutatorImpl should return currentWriteBufferSize in getWriteBufferSize()

2015-02-26 Thread Solomon Duskis (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13113?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Solomon Duskis reassigned HBASE-13113:
--

Assignee: Solomon Duskis

 BufferedMutatorImpl should return currentWriteBufferSize in 
 getWriteBufferSize()
 

 Key: HBASE-13113
 URL: https://issues.apache.org/jira/browse/HBASE-13113
 Project: HBase
  Issue Type: Bug
Affects Versions: 2.0.0, 1.0.1
Reporter: Solomon Duskis
Assignee: Solomon Duskis





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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13111:
---

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

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

{color:red}-1 tests included{color}.  The patch doesn't appear to include 
any new or modified tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.
{color:green}+1 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/12975//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/12975//artifact/patchprocess/checkstyle-aggregate.html

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

This message is automatically generated.

 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Created] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leaks connection

2015-02-26 Thread Ashish Singhi (JIRA)
Ashish Singhi created HBASE-13112:
-

 Summary: quota.rb, security.rb and visibility_labels.rb leaks 
connection
 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi


quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
[~ndimiduk] 
[here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Updated] (HBASE-13097) Reduce Connection and RpcClient creations in unit tests

2015-02-26 Thread zhangduo (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhangduo updated HBASE-13097:
-
Fix Version/s: 1.1.0
   2.0.0
 Assignee: zhangduo
   Status: Patch Available  (was: Open)

 Reduce Connection and RpcClient creations in unit tests
 ---

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
Assignee: zhangduo
 Fix For: 2.0.0, 1.1.0

 Attachments: HBASE-13097.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): count=15 time=55525ms
 {noformat}
 Update: We use a singleton PooledByteBufAllocator so the reason should be too 
 many threads. So we will work on reduce the connections and rpclients in unit 
 tests.



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


[jira] [Commented] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

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

Eshcar Hillel commented on HBASE-13071:
---

I've just attached the patch.
The default value for scanners is sync. This can be easily changed.

Addressing the issue raised by [~jonathan.lawlor]: 
The prefetch logic is the same for sync and async scanners. Therefore, async 
scanner stops RPCs if the max result size is exceeded. However, since the 
prefetch is executed in the background, it is possible that the size of the 
data inside the cache exceeds the max size set by the user (which cannot happen 
with sync scanner). 
There are ways to handle this, but this requires knowing the size of the data 
in the cache at any point and limiting the size of the data retrieved from the 
server with respect to this size. This may reduce the performance gain. 

I plan to attach a patch of the YCSB extension if anyone wants to re-run the 
experiments.


 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBaseStreamingScanDesign.pdf, 
 HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Updated] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eshcar Hillel updated HBASE-13071:
--
Affects Version/s: 0.98.11
   Status: Patch Available  (was: Open)

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBaseStreamingScanDesign.pdf, 
 HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Updated] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eshcar Hillel updated HBASE-13071:
--
Attachment: HBASE-13071-v2.patch

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.98.11
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBASE-13071-v2.patch, 
 HBaseStreamingScanDesign.pdf, HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Commented] (HBASE-13014) Java Tool For Region Moving

2015-02-26 Thread Hari Krishna Dara (JIRA)

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

Hari Krishna Dara commented on HBASE-13014:
---

Some comments on {{readExcludes()}} method:

* The {{close()}} calls should be in a finally block.
* The below line doesn't need an initializer:
{code}
+  String line = new String();
{code}
* Replace the below block:
{code}
+  FileInputStream fis = new FileInputStream(f);
+  BufferedReader br = new BufferedReader(new InputStreamReader(fis));
{code}
with the below and just call {{br.close()}} (it will internally {[close()}} the 
underlying readers and streams).
{code}
+  BufferedReader br = new BufferedReader(new FileReader(f));
{code}
* Support comment lines (skip lines starting with #).
* You should use {{equals()}} in the below code:
{code}
+if (line != ) {
{code}
like this:
{code}
+if (line.equals()) {
{code}
Better yet, use the {{StringUtils.isEmpty()}} from commons.

You can simplify the whole logic of {{stripServers()}}, if you just 
preconstruct the {{host:port}} combination, something like this:
{code}
  private String stripServer(ArrayListString regionServers, String hostname, 
int port)
  throws Exception {
String server = hostname+ServerName.SERVERNAME_SEPARATOR+port;
if (! regionServers.remove(server)) {
  throw new Exception(Server:  + server +  is not Online);
}
return regionServers;
  }
{code}

Couple of {{close()}} calls in {{isSuccessfulScan()}} method that are not in 
{{finally}} block.

Some comments on {{getServerNameForRegion()}}
* A few {{close()}} calls not in {{finally}} block
* Returning {{null}} would be clearer here:
{code}
+  return server;
{code}
* Do you really intend to wait on {{tracker.isLocationAvailable()}} for ever? 
Is there a reason for sleeping outside in {{Thread.sleep()}} instead of letting 
the tracker do the wait? I recommend just using 
{{tracker.waitMetaRegionLocation()}} with an upper bound on {{timeout}} and 
fail the operation if a {{null}} is returned, and this method can be 
interrupted too, if that is what you were looking for.
* The outer {{new String()}} is not needed here:
{code}
+  new String(Bytes.toString(servername).replaceFirst(:, ,) + 
,
+  + Bytes.toLong(startcode));
{code}

Misc. others
* You have a couple of {{System.out.println()}}, you might want to replace with 
{{LOG}} calls.
* The below message could get misleading, since it could catch any unchecked 
exceptions also. Better to create an exception type, or may be even just use 
the return value of {{stripServer()}} to signal the error condition
{code}
+  } catch (Exception e) {
+LOG.info(hostname= + hostname +  is not up yet, waiting, e);
+  }
{code}
* Consider calling {{ExecutorService.shutdown()}} after adding all the tasks. 
The way it is right now, we have the pool leaking (applies to both {{load()}} 
and {{unload()}}).

 Java Tool For Region Moving 
 

 Key: HBASE-13014
 URL: https://issues.apache.org/jira/browse/HBASE-13014
 Project: HBase
  Issue Type: Improvement
Reporter: Abhishek Singh Chouhan
Assignee: Abhishek Singh Chouhan
 Attachments: HBASE-13014.patch


 As per discussion on HBASE-12989 we should move the functionality of 
 region_mover.rb into a Java tool and use region_mover.rb only only as a 
 wrapper around it.



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


[jira] [Updated] (HBASE-13071) Hbase Streaming Scan Feature

2015-02-26 Thread Eshcar Hillel (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eshcar Hillel updated HBASE-13071:
--
Attachment: HBASE-13071-v1.patch

 Hbase Streaming Scan Feature
 

 Key: HBASE-13071
 URL: https://issues.apache.org/jira/browse/HBASE-13071
 Project: HBase
  Issue Type: New Feature
Reporter: Eshcar Hillel
 Attachments: HBASE-13071-v1.patch, HBaseStreamingScanDesign.pdf, 
 HbaseStreamingScanEvaluation.pdf


 A scan operation iterates over all rows of a table or a subrange of the 
 table. The synchronous nature in which the data is served at the client side 
 hinders the speed the application traverses the data: it increases the 
 overall processing time, and may cause a great variance in the times the 
 application waits for the next piece of data.
 The scanner next() method at the client side invokes an RPC to the 
 regionserver and then stores the results in a cache. The application can 
 specify how many rows will be transmitted per RPC; by default this is set to 
 100 rows. 
 The cache can be considered as a producer-consumer queue, where the hbase 
 client pushes the data to the queue and the application consumes it. 
 Currently this queue is synchronous, i.e., blocking. More specifically, when 
 the application consumed all the data from the cache --- so the cache is 
 empty --- the hbase client retrieves additional data from the server and 
 re-fills the cache with new data. During this time the application is blocked.
 Under the assumption that the application processing time can be balanced by 
 the time it takes to retrieve the data, an asynchronous approach can reduce 
 the time the application is waiting for data.
 We attach a design document.
 We also have a patch that is based on a private branch, and some evaluation 
 results of this code.



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


[jira] [Created] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Ashish Singhi (JIRA)
Ashish Singhi created HBASE-13111:
-

 Summary: truncate_preserve command is failing with undefined 
method error
 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi


{noformat}
hbase(main):001:0 truncate_preserve 't1'
Truncating 't1' table (it may take a while):

ERROR: undefined method `getTable' for nil:NilClass

Here is some help for this command:
  Disables, drops and recreates the specified table while still maintaing the 
previous region boundaries.
{noformat}



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


[jira] [Updated] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leaks connection

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13112?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13112:
--
Status: Patch Available  (was: Open)

 quota.rb, security.rb and visibility_labels.rb leaks connection
 ---

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Commented] (HBASE-13099) Scans as in DynamoDB

2015-02-26 Thread Nicolas Liochon (JIRA)

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

Nicolas Liochon commented on HBASE-13099:
-

The 1mb could be changed / made configurable.

The scan could finish if we are at the end of a row and one of these conditions 
is met:
 - we already have more than XX Mb and
 - the scan has been running for more than YY seconds
 - the scan reached the end of a region

This could simplify some code, and make the server less sensitive to client 
issues.

This would allow to remove the small scan code in the client as well (and, for 
all the clients that are doing small scans w/o setting this small flag, it 
would be faster).





 Scans as in DynamoDB
 

 Key: HBASE-13099
 URL: https://issues.apache.org/jira/browse/HBASE-13099
 Project: HBase
  Issue Type: Brainstorming
  Components: Client, regionserver
Reporter: Nicolas Liochon

 cc: [~saint@gmail.com] - as discussed offline.
 DynamoDB has a very simple way to manage scans server side:
 ??citation??
 The data returned from a Query or Scan operation is limited to 1 MB; this 
 means that if you scan a table that has more than 1 MB of data, you'll need 
 to perform another Scan operation to continue to the next 1 MB of data in the 
 table.
 If you query or scan for specific attributes that match values that amount to 
 more than 1 MB of data, you'll need to perform another Query or Scan request 
 for the next 1 MB of data. To do this, take the LastEvaluatedKey value from 
 the previous request, and use that value as the ExclusiveStartKey in the next 
 request. This will let you progressively query or scan for new data in 1 MB 
 increments.
 When the entire result set from a Query or Scan has been processed, the 
 LastEvaluatedKey is null. This indicates that the result set is complete 
 (i.e. the operation processed the “last page” of data).
 ??citation??
 This means that there is no state server side: the work is done client side.



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


[jira] [Assigned] (HBASE-13100) Shell command to retrieve table splits

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi reassigned HBASE-13100:
-

Assignee: Ashish Singhi

 Shell command to retrieve table splits
 --

 Key: HBASE-13100
 URL: https://issues.apache.org/jira/browse/HBASE-13100
 Project: HBase
  Issue Type: Improvement
  Components: shell
Reporter: Sean Busbey
Assignee: Ashish Singhi
Priority: Minor
  Labels: beginner
 Fix For: 2.0.0, 1.1.0


 Add a shell command that returns the splits for a table.
 Doing this yourself is currently possible, but involves going outside of the 
 public api.
 {code}
 jruby-1.7.3 :012  create 'example_table', 'f1', SPLITS = [10, 20, 30, 
 40]
 0 row(s) in 0.5500 seconds
  = Hbase::Table - example_table 
 jruby-1.7.3 :013  
 get_table('example_table').table.get_all_region_locations.map do |location| 
 org.apache.hadoop.hbase.util.Bytes::toStringBinary(location.get_region_info.get_start_key)
  end
 0 row(s) in 0.0130 seconds
  = [, 10, 20, 30, 40] 
 jruby-1.7.3 :014  
 {code}



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


[jira] [Updated] (HBASE-13097) Reduce Connection and RpcClient creations in unit tests

2015-02-26 Thread zhangduo (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhangduo updated HBASE-13097:
-
Attachment: HBASE-13097.patch

People challenged that we need to use different connections in tests to expose 
more possible problems. That's reasonable I think, so there is another try.

Introduce a 'use global EventLoopGroup' config(so many configs :(), default is 
true. If true, will use a global EventLoopGroup instead of create a new one.
Do you guys think this is OK? Thanks. [~jurmous] [~stack]

 Reduce Connection and RpcClient creations in unit tests
 ---

 Key: HBASE-13097
 URL: https://issues.apache.org/jira/browse/HBASE-13097
 Project: HBase
  Issue Type: Bug
  Components: IPC/RPC, test
Affects Versions: 2.0.0, 1.1.0
Reporter: zhangduo
 Attachments: HBASE-13097.patch


 In some unit tests(such as TestAcidGuarantees) we create multiple Connection 
 instance. If we use AsyncRpcClient, then there will be multiple netty 
 Bootstrap and every Bootstrap has its own PooledByteBufAllocator.
 I haven't read the code clearly but it uses some threadlocal technics and 
 jmap shows io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry is the 
 biggest things on Heap.
 See 
 https://builds.apache.org/job/HBase-TRUNK/6168/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.TestAcidGuarantees-output.txt
 {noformat}
 2015-02-24 23:50:29,704 WARN  [JvmPauseMonitor] 
 util.JvmPauseMonitor$Monitor(167): Detected pause in JVM or host machine (eg 
 GC): pause of approximately 20133ms
 GC pool 'PS MarkSweep' had collection(s): count=15 time=55525ms
 {noformat}
 Update: We use a singleton PooledByteBufAllocator so the reason should be too 
 many threads. So we will work on reduce the connections and rpclients in unit 
 tests.



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


[jira] [Updated] (HBASE-13112) quota.rb, security.rb and visibility_labels.rb leaks connection

2015-02-26 Thread Ashish Singhi (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-13112?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ashish Singhi updated HBASE-13112:
--
Attachment: HBASE-13112.patch

 quota.rb, security.rb and visibility_labels.rb leaks connection
 ---

 Key: HBASE-13112
 URL: https://issues.apache.org/jira/browse/HBASE-13112
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Attachments: HBASE-13112.patch


 quota.rb, security.rb and visibility_labels.rb leaks connection as noted by 
 [~ndimiduk] 
 [here|https://issues.apache.org/jira/browse/HBASE-12833?focusedCommentId=14279465page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14279465]



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


[jira] [Created] (HBASE-13114) [UNITTEST] TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta

2015-02-26 Thread stack (JIRA)
stack created HBASE-13114:
-

 Summary: [UNITTEST] 
TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta
 Key: HBASE-13114
 URL: https://issues.apache.org/jira/browse/HBASE-13114
 Project: HBase
  Issue Type: Bug
  Components: test
Reporter: stack
Assignee: stack


I've seen this fail a few times. It just happened now on internal rig.  Looking 
into it

{code}
REGRESSION:  
org.apache.hadoop.hbase.master.handler.TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta

Error Message:
expected:0 but was:1

Stack Trace:
java.lang.AssertionError: expected:0 but was:1
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.failNotEquals(Assert.java:743)
at org.junit.Assert.assertEquals(Assert.java:118)
at org.junit.Assert.assertEquals(Assert.java:555)
at org.junit.Assert.assertEquals(Assert.java:542)
at 
org.apache.hadoop.hbase.master.handler.TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta(TestEnableTableHandler.java:151)

{code}



--
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-13114) [UNITTEST] TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta

2015-02-26 Thread Andrey Stepachev (JIRA)

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

Andrey Stepachev commented on HBASE-13114:
--

what version was it [~stack]?

 [UNITTEST] TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta
 -

 Key: HBASE-13114
 URL: https://issues.apache.org/jira/browse/HBASE-13114
 Project: HBase
  Issue Type: Bug
  Components: test
Reporter: stack
Assignee: stack

 I've seen this fail a few times. It just happened now on internal rig.  
 Looking into it
 {code}
 REGRESSION:  
 org.apache.hadoop.hbase.master.handler.TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta
 Error Message:
 expected:0 but was:1
 Stack Trace:
 java.lang.AssertionError: expected:0 but was:1
 at org.junit.Assert.fail(Assert.java:88)
 at org.junit.Assert.failNotEquals(Assert.java:743)
 at org.junit.Assert.assertEquals(Assert.java:118)
 at org.junit.Assert.assertEquals(Assert.java:555)
 at org.junit.Assert.assertEquals(Assert.java:542)
 at 
 org.apache.hadoop.hbase.master.handler.TestEnableTableHandler.testDeleteForSureClearsAllTableRowsFromMeta(TestEnableTableHandler.java:151)
 {code}



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


[jira] [Commented] (HBASE-12924) HRegionServer#MovedRegionsCleaner Chore does not start

2015-02-26 Thread Jonathan Lawlor (JIRA)

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

Jonathan Lawlor commented on HBASE-12924:
-

Thanks for fixing this one [~asameet], some review on patch below:
- Because the chore is started outside of MovedRegionsCleaner#createAndStart it 
may be best to rename the method to simply MovedRegionsCleaner#create
- As [~stack] pointed out, there are some formatting issues in the test class. 
If you're developing in eclipse there is a formatter 
(dev-support/hbase_eclipse_formatter.xml) that will do all the formatting for 
you every time you save
- May want to get the timeout value used for this chore in a method that can be 
overriden for tests

Otherwise looks good, thanks for the patch

 HRegionServer#MovedRegionsCleaner Chore does not start
 --

 Key: HBASE-12924
 URL: https://issues.apache.org/jira/browse/HBASE-12924
 Project: HBase
  Issue Type: Bug
Reporter: Jonathan Lawlor
Priority: Minor
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: first-task.patch


 This issue is very similar to the one described in HBASE-11354. The method 
 createAndStart in MovedRegionsCleaner creates an instance of the chore but 
 never starts the underlying thread:
 {code}
 static MovedRegionsCleaner createAndStart(HRegionServer rs){
   Stoppable stoppable = new Stoppable() {
 private volatile boolean isStopped = false;
 @Override public void stop(String why) { isStopped = true;}
 @Override public boolean isStopped() {return isStopped;}
   };
   return new MovedRegionsCleaner(rs, stoppable);
 }
 {code}
 Nobody has noticed this issue so far so the Chore may not be that important



--
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-13091) Split ZK Quorum on Master WebUI

2015-02-26 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari commented on HBASE-13091:
-

The logic was already there for this field, so it's less impact to just update 
the existing one instead of changing the max limit and see what the result is 
for all the fields.

 Split ZK Quorum on Master WebUI
 ---

 Key: HBASE-13091
 URL: https://issues.apache.org/jira/browse/HBASE-13091
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.1, 0.98.10.1
Reporter: Jean-Marc Spaggiari
Assignee: Jean-Marc Spaggiari
Priority: Minor
 Attachments: HBASE-13091-v0-trunk.patch, HBASE-13091-v1-trunk.patch, 
 screenshot.png


 When using ZK servers or more, on the Master WebUI, this create a very large 
 column and so reduce a lot the others, splitting all the lines and creating 
 tall cells
 Splitting the ZK quorum with one per line will make it nicer and easier to 
 read.



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


[jira] [Commented] (HBASE-13111) truncate_preserve command is failing with undefined method error

2015-02-26 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13111:


SUCCESS: Integrated in HBase-1.0 #777 (See 
[https://builds.apache.org/job/HBase-1.0/777/])
HBASE-13111 truncate_preserve command is failing with undefined method error 
(Ashish Singhi) (tedyu: rev 6fbd2eec56c296638f44e05dc64aeb00e6c074b6)
* hbase-shell/src/main/ruby/hbase/admin.rb


 truncate_preserve command is failing with undefined method error
 

 Key: HBASE-13111
 URL: https://issues.apache.org/jira/browse/HBASE-13111
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 1.0.0, 2.0.0, 1.1.0
Reporter: Ashish Singhi
Assignee: Ashish Singhi
 Fix For: 2.0.0, 1.0.1, 1.1.0

 Attachments: HBASE-13111.patch


 {noformat}
 hbase(main):001:0 truncate_preserve 't1'
 Truncating 't1' table (it may take a while):
 ERROR: undefined method `getTable' for nil:NilClass
 Here is some help for this command:
   Disables, drops and recreates the specified table while still maintaing the 
 previous region boundaries.
 {noformat}



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


[jira] [Commented] (HBASE-12924) HRegionServer#MovedRegionsCleaner Chore does not start

2015-02-26 Thread stack (JIRA)

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

stack commented on HBASE-12924:
---

Can we have it so we don't have test wait for 240 seconds for test to complete? 
 How about setting down the timers for when this task runs to a few seconds?  
Fix formatting in test too so it is like other tests (two spaces for tab).  
Otherwise, nice patch.  Thanks.

 HRegionServer#MovedRegionsCleaner Chore does not start
 --

 Key: HBASE-12924
 URL: https://issues.apache.org/jira/browse/HBASE-12924
 Project: HBase
  Issue Type: Bug
Reporter: Jonathan Lawlor
Priority: Minor
 Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11

 Attachments: first-task.patch


 This issue is very similar to the one described in HBASE-11354. The method 
 createAndStart in MovedRegionsCleaner creates an instance of the chore but 
 never starts the underlying thread:
 {code}
 static MovedRegionsCleaner createAndStart(HRegionServer rs){
   Stoppable stoppable = new Stoppable() {
 private volatile boolean isStopped = false;
 @Override public void stop(String why) { isStopped = true;}
 @Override public boolean isStopped() {return isStopped;}
   };
   return new MovedRegionsCleaner(rs, stoppable);
 }
 {code}
 Nobody has noticed this issue so far so the Chore may not be that important



--
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] [Updated] (HBASE-11544) [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME

2015-02-26 Thread Jonathan Lawlor (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-11544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Lawlor updated HBASE-11544:

Attachment: HBASE-11544-v6.patch

Forgot to include these javadoc fixes in last patch

 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return 
 batch even if it means OOME
 --

 Key: HBASE-11544
 URL: https://issues.apache.org/jira/browse/HBASE-11544
 Project: HBase
  Issue Type: Bug
Reporter: stack
Assignee: Jonathan Lawlor
Priority: Critical
  Labels: beginner
 Attachments: HBASE-11544-v1.patch, HBASE-11544-v2.patch, 
 HBASE-11544-v3.patch, HBASE-11544-v4.patch, HBASE-11544-v5.patch, 
 HBASE-11544-v6.patch, HBASE-11544-v6.patch


 Running some tests, I set hbase.client.scanner.caching=1000.  Dataset has 
 large cells.  I kept OOME'ing.
 Serverside, we should measure how much we've accumulated and return to the 
 client whatever we've gathered once we pass out a certain size threshold 
 rather than keep accumulating till we OOME.



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


[jira] [Updated] (HBASE-11544) [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME

2015-02-26 Thread Jonathan Lawlor (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-11544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Lawlor updated HBASE-11544:

Status: Open  (was: Patch Available)

 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return 
 batch even if it means OOME
 --

 Key: HBASE-11544
 URL: https://issues.apache.org/jira/browse/HBASE-11544
 Project: HBase
  Issue Type: Bug
Reporter: stack
Assignee: Jonathan Lawlor
Priority: Critical
  Labels: beginner
 Attachments: HBASE-11544-v1.patch, HBASE-11544-v2.patch, 
 HBASE-11544-v3.patch, HBASE-11544-v4.patch, HBASE-11544-v5.patch, 
 HBASE-11544-v6.patch, HBASE-11544-v6.patch


 Running some tests, I set hbase.client.scanner.caching=1000.  Dataset has 
 large cells.  I kept OOME'ing.
 Serverside, we should measure how much we've accumulated and return to the 
 client whatever we've gathered once we pass out a certain size threshold 
 rather than keep accumulating till we OOME.



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


  1   2   >