[jira] [Resolved] (HBASE-6200) KeyComparator.compareWithoutRow can be wrong when families have the same prefix

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan resolved HBASE-6200.
---

  Resolution: Fixed
Hadoop Flags: Reviewed

Resolving as committed to all branches.

> KeyComparator.compareWithoutRow can be wrong when families have the same 
> prefix
> ---
>
> Key: HBASE-6200
> URL: https://issues.apache.org/jira/browse/HBASE-6200
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.90.6, 0.92.1, 0.94.0
>Reporter: Jean-Daniel Cryans
>Assignee: Jieshan Bean
>Priority: Blocker
> Fix For: 0.90.7, 0.92.2, 0.96.0, 0.94.1
>
> Attachments: 6200-0.92.txt, 6200-0.94.txt, 6200-90.patch, 
> 6200-trunk-v2.patch, 6200-trunk-v3.patch, 6200-trunk-v4.txt
>
>
> As reported by Desert Rose on IRC and on the ML, {{Result}} has a weird 
> behavior when some families share the same prefix. He posted a link to his 
> code to show how it fails, http://pastebin.com/7TBA1XGh
> Basically {{KeyComparator.compareWithoutRow}} doesn't differentiate families 
> and qualifiers so "f:a" is said to be bigger than "f1:", which is false. Then 
> what happens is that the KVs are returned in the right order from the RS but 
> then doing {{Result.binarySearch}} it uses 
> {{KeyComparator.compareWithoutRow}} which has a different sorting so the end 
> result is undetermined.
> I added some debug and I can see that the data is returned in the right order 
> but {{Arrays.binarySearch}} returned the wrong KV, which is then verified 
> agains the passed family and qualifier which fails so null is returned.
> I don't know how frequent it is for users to have families with the same 
> prefix, but those that do have that and that use those families at the same 
> time will have big correctness issues. This is why I mark this as a blocker.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-4920) We need a mascot, a totem

2012-06-27 Thread Esteban Gutierrez (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-4920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402010#comment-13402010
 ] 

Esteban Gutierrez commented on HBASE-4920:
--

Seems that I forgot to cast my vote: 
+1 Honey Badger

> We need a mascot, a totem
> -
>
> Key: HBASE-4920
> URL: https://issues.apache.org/jira/browse/HBASE-4920
> Project: HBase
>  Issue Type: Task
>Reporter: stack
> Attachments: HBase Orca Logo.jpg, Orca_479990801.jpg, Screen shot 
> 2011-11-30 at 4.06.17 PM.png, apache hbase orca logo_Proof 3.pdf, apache 
> logo_Proof 8.pdf, krake.zip, more_orcas.png, more_orcas2.png, photo (2).JPG, 
> plus_orca.png
>
>
> We need a totem for our t-shirt that is yet to be printed.  O'Reilly owns the 
> Clyesdale.  We need something else.
> We could have a fluffy little duck that quacks 'hbase!' when you squeeze it 
> and we could order boxes of them from some off-shore sweatshop that 
> subcontracts to a contractor who employs child labor only.
> Or we could have an Orca (Big!, Fast!, Killer!, and in a poem that Marcy from 
> Salesforce showed me, that was a bit too spiritual for me to be seen quoting 
> here, it had the Orca as the 'Guardian of the Cosmic Memory': i.e. in 
> translation, bigdata).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402012#comment-13402012
 ] 

Hadoop QA commented on HBASE-6227:
--

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12533605/HBASE-6227v2-94.patch
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

-1 tests included.  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.

-1 patch.  The patch command could not apply the patch.

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

This message is automatically generated.

> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6269) Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest KeyValue

2012-06-27 Thread ShiXing (JIRA)

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

ShiXing updated HBASE-6269:
---

Attachment: runAllTests.out.txt

I run
mvn test -P runAllTests

and the output is in the runAllTests.out.txt

> Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest 
> KeyValue
> -
>
> Key: HBASE-6269
> URL: https://issues.apache.org/jira/browse/HBASE-6269
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: ShiXing
>Assignee: ShiXing
> Attachments: HBASE-6269-trunk-V1.patch, HBASE-6269-v1.patch, 
> runAllTests.out.txt
>
>
> When I fix the bug HBASE-6195, there is happened to find sometimes the test 
> case will fail, https://builds.apache.org/job/HBase-0.94/259/.
> If there are two Put/Increment with same row, family, qualifier, timestamp 
> and different memstoreTS, after each Put/Increment, we do a memstore flush. 
> So there will be two StoreFile with same KeyValue(except memstoreTS and 
> SequenceId).
> When I got the row, I always got the old records, the test case like this:
> {code}
>   public void testPutWithMemStoreFlush() throws Exception {
> Configuration conf = HBaseConfiguration.create();
> String method = "testPutWithMemStoreFlush";
> byte[] tableName = Bytes.toBytes(method);
> byte[] family = Bytes.toBytes("family");;
> byte[] qualifier = Bytes.toBytes("qualifier");
> byte[] row = Bytes.toBytes("putRow");
> byte[] value = null;
> this.region = initHRegion(tableName, method, conf, family);
> Put put = null;
> Get get = null;
> List kvs = null;
> Result res = null;
> 
> put = new Put(row);
> value = Bytes.toBytes("value0");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> 
> System.out.print("get value after flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value1");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value2");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> } 
>   }
> {code}
> and the result print as followed:
> {code}
> get value before flush after put value0 : value0
> get value after flush after put value0 : value0
> get value before flush after put value1 : value1
> get value after flush after put value1 : value0
> get value before flush after put value2 : value2
> get value after flush after put value2 : 

[jira] [Commented] (HBASE-6269) Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest KeyValue

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402023#comment-13402023
 ] 

Hadoop QA commented on HBASE-6269:
--

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12533611/runAllTests.out.txt
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

+1 tests included.  The patch appears to include 1 new or modified tests.

-1 patch.  The patch command could not apply the patch.

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

This message is automatically generated.

> Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest 
> KeyValue
> -
>
> Key: HBASE-6269
> URL: https://issues.apache.org/jira/browse/HBASE-6269
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: ShiXing
>Assignee: ShiXing
> Attachments: HBASE-6269-trunk-V1.patch, HBASE-6269-v1.patch, 
> runAllTests.out.txt
>
>
> When I fix the bug HBASE-6195, there is happened to find sometimes the test 
> case will fail, https://builds.apache.org/job/HBase-0.94/259/.
> If there are two Put/Increment with same row, family, qualifier, timestamp 
> and different memstoreTS, after each Put/Increment, we do a memstore flush. 
> So there will be two StoreFile with same KeyValue(except memstoreTS and 
> SequenceId).
> When I got the row, I always got the old records, the test case like this:
> {code}
>   public void testPutWithMemStoreFlush() throws Exception {
> Configuration conf = HBaseConfiguration.create();
> String method = "testPutWithMemStoreFlush";
> byte[] tableName = Bytes.toBytes(method);
> byte[] family = Bytes.toBytes("family");;
> byte[] qualifier = Bytes.toBytes("qualifier");
> byte[] row = Bytes.toBytes("putRow");
> byte[] value = null;
> this.region = initHRegion(tableName, method, conf, family);
> Put put = null;
> Get get = null;
> List kvs = null;
> Result res = null;
> 
> put = new Put(row);
> value = Bytes.toBytes("value0");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> 
> System.out.print("get value after flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value1");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value2");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < 

[jira] [Commented] (HBASE-6274) Proto files should be in the same palce

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402048#comment-13402048
 ] 

Hadoop QA commented on HBASE-6274:
--

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12533597/6274-hbase.patch
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

-1 tests included.  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.

+1 hadoop2.0.  The patch compiles against the hadoop 2.0 profile.

+1 javadoc.  The javadoc tool did not generate any warning messages.

+1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

-1 findbugs.  The patch appears to introduce 6 new Findbugs (version 1.3.9) 
warnings.

+1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

+1 core tests.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2270//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2270//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2270//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2270//console

This message is automatically generated.

> Proto files should be in the same palce
> ---
>
> Key: HBASE-6274
> URL: https://issues.apache.org/jira/browse/HBASE-6274
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 0.96.0
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Trivial
> Fix For: 0.96.0
>
> Attachments: 6274-hbase.patch
>
>
> Currently, proto files are under hbase-server/src/main/protobuf and 
> hbase-server/src/protobuf.  It's better to put them together.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6280) why using treeMap at default implement with class Batch.Callback

2012-06-27 Thread qiujaiwei (JIRA)
qiujaiwei created HBASE-6280:


 Summary: why using treeMap at default implement with class  
Batch.Callback
 Key: HBASE-6280
 URL: https://issues.apache.org/jira/browse/HBASE-6280
 Project: HBase
  Issue Type: Bug
  Components: coprocessors
Affects Versions: 0.92.0
 Environment: centos 6.2 hbase 0.92.0
Reporter: qiujaiwei


public  Map coprocessorExec(
  Class protocol, byte[] startKey, byte[] endKey,
  Batch.Call callable)
  throws IOException, Throwable {

final Map results = new TreeMap(
Bytes.BYTES_COMPARATOR);
coprocessorExec(protocol, startKey, endKey, callable,
new Batch.Callback(){
  public void update(byte[] region, byte[] row, R value) {
results.put(region, value);
  }
});
return results;
  }





when mulit region  call the Batch.Callback ,the treemap should lockup.
we meet this situation after we run 3 month.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread chunhui shen (JIRA)

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

chunhui shen updated HBASE-6228:


Attachment: HBASE-6228v3.patch

Adding test case for this issue in the patch v3

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6273) HMasterInterface.isMasterRunning() requires clean up

2012-06-27 Thread nkeywal (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402064#comment-13402064
 ] 

nkeywal commented on HBASE-6273:


+1 as well. Errors can be:
1) Can't connect to ZK -> Hence you can't get the master address. This is 
especially true in 0.96 as the connection to ZK is made on demand. I think we 
need to have/keep this as an exception
2) There is no info on the master address in ZK. We should make this clear as 
well. The best option I see is a specific exception such as 
NoMasterAddressException or NoMasterAddressInZooKeeperException

And MasterNotRunning can be: the master is actually there, but marked 
internally as non running (stopped). The server side method 'isMasterRunning' 
will return false (you can contact the master but it's stopping). As such I 
think is better not to have an exception named MasterNotRunning as it creates 
confusion between the technical status and the functional one. 


I think the pseudo code could be, on the client interface:
{noformat}
public boolean isMasterRunning() throws MasterConnectionException, 
NoMasterAddressException, ZooKeeperConnectionException {
  ZK zk = getZK(); // Can throw ZooKeeperConnectionException
  Master m = getMaster(zk); // Can throw MasterConnectionException or 
NoMasterAddressException 
  boolean isRunning = m.isMasterRunning(); // can throw 
MasterConnectionException 

  return isRunning;
}
{noformat}



> HMasterInterface.isMasterRunning() requires clean up
> 
>
> Key: HBASE-6273
> URL: https://issues.apache.org/jira/browse/HBASE-6273
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Affects Versions: 0.94.0
>Reporter: ramkrishna.s.vasudevan
> Fix For: 0.96.0
>
>
> This JIRA is in reference to JD's comments regarding the clean up needed in 
> isMasterRunning().  Refer to 
> https://issues.apache.org/jira/browse/HBASE-6240?focusedCommentId=13400772&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13400772

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6280) why using treeMap at default implement with class Batch.Callback

2012-06-27 Thread Jieshan Bean (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402074#comment-13402074
 ] 

Jieshan Bean commented on HBASE-6280:
-

Good finding, qiujaiwei. It seems a concurrency issue. We can see from the 
method of HConnectionManager#processExecs:
{noformat}
Future future = pool.submit(
 new Callable() {
  public R call() throws Exception {
T instance = (T)Proxy.newProxyInstance(conf.getClassLoader(),
new Class[]{protocol},
invoker);
R result = callable.call(instance);
byte[] region = invoker.getRegionName();
if (callback != null) {
  callback.update(region, r, result);
}
return result;
  }
});
{noformat}

I think we should use a concurrent map instead of using TreeMap.


> why using treeMap at default implement with class  Batch.Callback
> -
>
> Key: HBASE-6280
> URL: https://issues.apache.org/jira/browse/HBASE-6280
> Project: HBase
>  Issue Type: Bug
>  Components: coprocessors
>Affects Versions: 0.92.0
> Environment: centos 6.2 hbase 0.92.0
>Reporter: qiujaiwei
>
> public  Map coprocessorExec(
>   Class protocol, byte[] startKey, byte[] endKey,
>   Batch.Call callable)
>   throws IOException, Throwable {
> final Map results = new TreeMap(
> Bytes.BYTES_COMPARATOR);
> coprocessorExec(protocol, startKey, endKey, callable,
> new Batch.Callback(){
>   public void update(byte[] region, byte[] row, R value) {
> results.put(region, value);
>   }
> });
> return results;
>   }
> when mulit region  call the Batch.Callback ,the treemap should lockup.
> we meet this situation after we run 3 month.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402091#comment-13402091
 ] 

ramkrishna.s.vasudevan commented on HBASE-6228:
---

@Chunhui
Thanks for the testcase.  I ran the testcase without patch.  It passes many 
times even with out the fix.
{code}
RegionTransition rt = RegionTransition.parseFrom(data);
if (rt.getEventType() == 
EventHandler.EventType.RS_ZK_REGION_OPENED) {
  // Make a new region plan
  
master.getAssignmentManager().getRegionPlan(daughterARegionState,
  daughterARegionState.getServerName(), true);
  return;
}
{code}
This part of code may not work right.  Because the node state can be changed 
before that Thread.sleep is done.
And so if we don't update the region plan we cannot assure that double 
assignment can be done.  Even i was trying to write a testcase and was caught 
up in a similar state.  Good on you Chunhui.


> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402094#comment-13402094
 ] 

Hadoop QA commented on HBASE-6228:
--

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12533624/HBASE-6228v3.patch
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

+1 tests included.  The patch appears to include 3 new or modified tests.

+1 hadoop2.0.  The patch compiles against the hadoop 2.0 profile.

+1 javadoc.  The javadoc tool did not generate any warning messages.

+1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

-1 findbugs.  The patch appears to introduce 6 new Findbugs (version 1.3.9) 
warnings.

+1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

 -1 core tests.  The patch failed these unit tests:
   org.apache.hadoop.hbase.replication.TestReplication

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2272//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2272//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2272//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2272//console

This message is automatically generated.

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread chunhui shen (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402106#comment-13402106
 ] 

chunhui shen commented on HBASE-6228:
-

@ram
Do you run the case in trunk? Maybe case is not good, but I run it and always 
failed without patch.

bq.update the region plan we cannot assure that double assignment can be done

If we restart master after fixup daughter, master won't contain any plans, so I 
just simulate it and ensure case could happen.

Another thing, I think I must say:
If we send open region RPC twice for one region, but not assigned twice because 
we have many protection through version. But we also have risk of data 
correctness.
Why?:
When region in opening, it will replay log edits and flush; if two 
regionservers do opening region together, could we ensure data correctness?

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-6228:
--

Attachment: HBASE-6228v4.patch

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch, HBASE-6228v4.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-6228:
--

Status: Patch Available  (was: Open)

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch, HBASE-6228v4.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-6228:
--

Status: Open  (was: Patch Available)

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch, HBASE-6228v4.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402145#comment-13402145
 ] 

ramkrishna.s.vasudevan commented on HBASE-6228:
---

@Jon 
I have added a testcase to show the problem.
bq.but my general impression is that I cannot easily tell if this patch (and 
several similar to it) are just pushing a race from one place to another.
Could you let us know what type of issues are like that, if you have some list 
with you?

@Chunhui
What if the master initialization and SSH both are in fixUpDaughters? Then we 
are bound to get double assignment right?
The scenario am telling is Master has just completed joinCluster().  By the 
time a RS went down while splitting .  SSH starts and it comes to 
processDeadRegion.
Later master also sees there are daughters to fixup.  Now we may end up in same 
problem? I think here we need some sync mechanism.  What do you feel Chunhui?


> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch, HBASE-6228v4.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread rajeshbabu (JIRA)

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

rajeshbabu updated HBASE-6281:
--

Summary: Assignment need not be called for disabling table regions during 
clean cluster start up.  (was: Assignment need not be called for disabling 
table regions during clean cluste start up.)

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluste start up.

2012-06-27 Thread rajeshbabu (JIRA)
rajeshbabu created HBASE-6281:
-

 Summary: Assignment need not be called for disabling table regions 
during clean cluste start up.
 Key: HBASE-6281
 URL: https://issues.apache.org/jira/browse/HBASE-6281
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.94.0, 0.92.1
Reporter: rajeshbabu
Assignee: rajeshbabu
 Fix For: 0.92.2, 0.96.0, 0.94.1


Currently during clean cluster start up if there are tables in DISABLING state, 
we do bulk assignment through assignAllUserRegions() and after region is OPENED 
in RS, master checks if the table is in DISBALING/DISABLED state (in 
Am.regionOnline) and again calls unassign.  This roundtrip can be avoided even 
before calling assignment.
This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6170) Timeouts for row lock and scan should be separate

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402157#comment-13402157
 ] 

Hudson commented on HBASE-6170:
---

Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #71 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/71/])
HBASE-6170 Timeouts for row lock and scan should be separate (Chris Trezzo) 
(Revision 1354325)

 Result = FAILURE
tedyu : 
Files : 
* 
/hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/client/ClientScanner.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Leases.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScannerTimeout.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java


> Timeouts for row lock and scan should be separate
> -
>
> Key: HBASE-6170
> URL: https://issues.apache.org/jira/browse/HBASE-6170
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: Otis Gospodnetic
>Assignee: Chris Trezzo
>Priority: Minor
> Fix For: 0.96.0
>
> Attachments: 6170v4.patch, HBASE-6170v1.patch, HBASE-6170v1.patch, 
> HBASE-6170v1.patch, HBASE-6170v2.patch, HBASE-6170v3.patch
>
>
> Apparently the timeout used for row locking and for scanning is global.  It 
> would be better to have two separate timeouts.
> (opening the issue to make Lars George happy)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402167#comment-13402167
 ] 

Hadoop QA commented on HBASE-6228:
--

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12533642/HBASE-6228v4.patch
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

+1 tests included.  The patch appears to include 3 new or modified tests.

+1 hadoop2.0.  The patch compiles against the hadoop 2.0 profile.

+1 javadoc.  The javadoc tool did not generate any warning messages.

+1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

-1 findbugs.  The patch appears to introduce 6 new Findbugs (version 1.3.9) 
warnings.

+1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

+1 core tests.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2273//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2273//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2273//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2273//console

This message is automatically generated.

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch, HBASE-6228v4.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6228) Fixup daughters twice cause daughter region assigned twice

2012-06-27 Thread chunhui shen (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402168#comment-13402168
 ] 

chunhui shen commented on HBASE-6228:
-

@ram
Could you talk about sync mechanism?
Based on the current patch, I think we won't assign twice. If need, we could 
add a synchronized block for the following:
{code}isDaughterMissing(catalogTracker, daughter)) {
LOG.info("Fixup; missing daughter " + daughter.getRegionNameAsString());
MetaEditor.addDaughter(catalogTracker, daughter, null);
{code}

What do you think?

> Fixup daughters twice  cause daughter region assigned twice
> ---
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, 
> HBASE-6228v2.patch, HBASE-6228v3.patch, HBASE-6228v4.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through 
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't 
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is 
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B 
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B 
> is missing and assign it. It is because FindDaughterVisitor consider daughter 
> is missing if its serverName=null

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-2730) Expose RS work queue contents on web UI

2012-06-27 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-2730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402181#comment-13402181
 ] 

Ted Yu commented on HBASE-2730:
---

Can you attach screen shot of queue dump ?

Thanks

> Expose RS work queue contents on web UI
> ---
>
> Key: HBASE-2730
> URL: https://issues.apache.org/jira/browse/HBASE-2730
> Project: HBase
>  Issue Type: New Feature
>  Components: monitoring, regionserver
>Reporter: Todd Lipcon
>Priority: Critical
> Fix For: 0.96.0
>
> Attachments: hbase-2730-0_94_0.patch
>
>
> Would be nice to be able to see the contents of the various work queues - eg 
> to know what regions are pending compaction/split/flush/etc. This is handy 
> for debugging why a region might be blocked, etc.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-4364) Filters applied to columns not in the selected column list are ignored

2012-06-27 Thread Jie Huang (JIRA)

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

Jie Huang updated HBASE-4364:
-

Attachment: (was: hbase-4364-0_94_0.patch)

> Filters applied to columns not in the selected column list are ignored
> --
>
> Key: HBASE-4364
> URL: https://issues.apache.org/jira/browse/HBASE-4364
> Project: HBase
>  Issue Type: Bug
>  Components: filters
>Affects Versions: 0.90.4, 0.92.0
>Reporter: Todd Lipcon
>Priority: Critical
>
> For a scan, if you select some set of columns using addColumns(), and then 
> apply a SingleColumnValueFilter that restricts the results based on some 
> other columns which aren't selected, then those filter conditions are ignored.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-4364) Filters applied to columns not in the selected column list are ignored

2012-06-27 Thread Jie Huang (JIRA)

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

Jie Huang updated HBASE-4364:
-

Attachment: hbase-4364-0_94_0.patch

One possible solution for the feature: 
1. Add sanityCheck() API in Filter. And call the check function in 
getScanner(). So the filter can check the scan and its criteria before hand.
2. In SingleColumnValueFilter, if the tested set doesn't include the criteria 
column, add it in sanityCheck(). Afterwards,  remove the column in 
filterRow(kv), so that the user will get all required columns.

I will add one corresponding testcase and do the verification later. Any 
comment, please let me know. thanks.

> Filters applied to columns not in the selected column list are ignored
> --
>
> Key: HBASE-4364
> URL: https://issues.apache.org/jira/browse/HBASE-4364
> Project: HBase
>  Issue Type: Bug
>  Components: filters
>Affects Versions: 0.90.4, 0.92.0
>Reporter: Todd Lipcon
>Priority: Critical
> Attachments: hbase-4364-0_94_0.patch
>
>
> For a scan, if you select some set of columns using addColumns(), and then 
> apply a SingleColumnValueFilter that restricts the results based on some 
> other columns which aren't selected, then those filter conditions are ignored.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-5904) is_enabled from shell returns differently from pre- and post- HBASE-5155

2012-06-27 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh updated HBASE-5904:
--

  Resolution: Fixed
Release Note: This reverts a patch included in 0.90.6 that broke 
compatibility.  
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

Thanks for the patch Dave, Thanks for reviews Stack and Ram.

> is_enabled from shell returns differently from pre- and post- HBASE-5155
> 
>
> Key: HBASE-5904
> URL: https://issues.apache.org/jira/browse/HBASE-5904
> Project: HBase
>  Issue Type: Bug
>  Components: zookeeper
>Affects Versions: 0.90.6
>Reporter: David S. Wang
>Assignee: David S. Wang
>Priority: Blocker
> Fix For: 0.90.7
>
> Attachments: HBASE-5904.patch
>
>
> If I launch an hbase shell that uses HBase and ZooKeeper without HBASE-5155, 
> against HBase servers with HBASE-5155, then is_enabled for a table always 
> returns false even if the table is considered enabled by the servers from the 
> logs.  If I then do the same thing but with an HBase shell and ZooKeeper with 
> HBASE-5155, then is_enabled returns as expected.
> If I launch an HBase shell that uses HBase and ZooKeeper without HBASE-5155, 
> against HBase servers also without HBASE-5155, then is_enabled works as you'd 
> expect.  But if I then do the same thing but with an HBase shell and 
> ZooKeeper with HBASE-5155, then is_enabled returns false even though the 
> table is considered enabled by the servers from the logs.
> Additionally, if I then try to enable the table from the 
> HBASE-5155-containing shell, it hangs because the ZooKeeper code waits for 
> the ZNode to be updated with "ENABLED" in the data field, but what actually 
> happens is that the ZNode gets deleted since the servers are running without 
> HBASE-5155.
> I think the culprit is that the indication of how a table is considered 
> enabled inside ZooKeeper has changed with HBASE-5155.  Before HBASE-5155, a 
> table was considered enabled if the ZNode for it did not exist.  After 
> HBASE-5155, a table is considered enabled if the ZNode for it exists and has 
> "ENABLED" in its data.  I think the current code is incompatible when running 
> clients and servers where one side has HBASE-5155 and the other side does not.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-3855) Performance degradation of memstore because reseek is linear

2012-06-27 Thread Jonathan Hsieh (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402210#comment-13402210
 ] 

Jonathan Hsieh commented on HBASE-3855:
---

Hey [~dhruba], do you plan on taking on this issue on or shall we punt on this 
for 0.90.7 release? 



> Performance degradation of memstore because reseek is linear
> 
>
> Key: HBASE-3855
> URL: https://issues.apache.org/jira/browse/HBASE-3855
> Project: HBase
>  Issue Type: Improvement
>Reporter: dhruba borthakur
>Priority: Blocker
> Fix For: 0.90.7
>
> Attachments: memstoreReseek.txt, memstoreReseek2.txt
>
>
> The scanner use reseek to find the next row (or next column) as part of a 
> scan. The reseek code iterates over a Set to position itself at the right 
> place. If there are many thousands of kvs that need to be skipped over, then 
> the time-cost is very high. In this case, a seek would be far lesser in cost 
> than a reseek.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Assigned] (HBASE-6273) HMasterInterface.isMasterRunning() requires clean up

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan reassigned HBASE-6273:
-

Assignee: ramkrishna.s.vasudevan

> HMasterInterface.isMasterRunning() requires clean up
> 
>
> Key: HBASE-6273
> URL: https://issues.apache.org/jira/browse/HBASE-6273
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Affects Versions: 0.94.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 0.96.0
>
>
> This JIRA is in reference to JD's comments regarding the clean up needed in 
> isMasterRunning().  Refer to 
> https://issues.apache.org/jira/browse/HBASE-6240?focusedCommentId=13400772&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13400772

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6170) Timeouts for row lock and scan should be separate

2012-06-27 Thread Zhihong Ted Yu (JIRA)

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

Zhihong Ted Yu updated HBASE-6170:
--

Attachment: 6170.addendum

Addendum that modifies hbase-default.xml

> Timeouts for row lock and scan should be separate
> -
>
> Key: HBASE-6170
> URL: https://issues.apache.org/jira/browse/HBASE-6170
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: Otis Gospodnetic
>Assignee: Chris Trezzo
>Priority: Minor
> Fix For: 0.96.0
>
> Attachments: 6170.addendum, 6170v4.patch, HBASE-6170v1.patch, 
> HBASE-6170v1.patch, HBASE-6170v1.patch, HBASE-6170v2.patch, HBASE-6170v3.patch
>
>
> Apparently the timeout used for row locking and for scanning is global.  It 
> would be better to have two separate timeouts.
> (opening the issue to make Lars George happy)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread rajeshbabu (JIRA)

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

rajeshbabu updated HBASE-6281:
--

Attachment: HBASE-6281_94.patch

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread rajeshbabu (JIRA)

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

rajeshbabu updated HBASE-6281:
--

Attachment: HBASE-6281_trunk.patch

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread rajeshbabu (JIRA)

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

rajeshbabu updated HBASE-6281:
--

Status: Patch Available  (was: Open)

Attached patch for 94 and trunk. Please review and provide comments/suggestions.
running test suite for 94 and let you know result by tomorrow. 

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.94.0, 0.92.1
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6192) Document ACL matrix in the book

2012-06-27 Thread Laxman (JIRA)

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

Laxman updated HBASE-6192:
--

Status: Patch Available  (was: Open)

> Document ACL matrix in the book
> ---
>
> Key: HBASE-6192
> URL: https://issues.apache.org/jira/browse/HBASE-6192
> Project: HBase
>  Issue Type: Sub-task
>  Components: documentation, security
>Affects Versions: 0.96.0, 0.94.1
>Reporter: Enis Soztutar
>Assignee: Laxman
>  Labels: documentaion, security
> Attachments: HBase Security-ACL Matrix.pdf, HBase Security-ACL 
> Matrix.pdf, HBase Security-ACL Matrix.pdf, HBase Security-ACL Matrix.xls, 
> HBase Security-ACL Matrix.xls, HBase Security-ACL Matrix.xls
>
>
> We have an excellent matrix at 
> https://issues.apache.org/jira/secure/attachment/12531252/Security-ACL%20Matrix.pdf
>  for ACL. Once the changes are done, we can adapt that and put it in the 
> book, also add some more documentation about the new authorization features. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6192) Document ACL matrix in the book

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402267#comment-13402267
 ] 

Hadoop QA commented on HBASE-6192:
--

-1 overall.  Here are the results of testing the latest attachment 
  
http://issues.apache.org/jira/secure/attachment/1257/HBase%20Security-ACL%20Matrix.xls
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

+0 tests included.  The patch appears to be a documentation patch that 
doesn't require tests.

-1 patch.  The patch command could not apply the patch.

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

This message is automatically generated.

> Document ACL matrix in the book
> ---
>
> Key: HBASE-6192
> URL: https://issues.apache.org/jira/browse/HBASE-6192
> Project: HBase
>  Issue Type: Sub-task
>  Components: documentation, security
>Affects Versions: 0.96.0, 0.94.1
>Reporter: Enis Soztutar
>Assignee: Laxman
>  Labels: documentaion, security
> Attachments: HBase Security-ACL Matrix.pdf, HBase Security-ACL 
> Matrix.pdf, HBase Security-ACL Matrix.pdf, HBase Security-ACL Matrix.xls, 
> HBase Security-ACL Matrix.xls, HBase Security-ACL Matrix.xls
>
>
> We have an excellent matrix at 
> https://issues.apache.org/jira/secure/attachment/12531252/Security-ACL%20Matrix.pdf
>  for ACL. Once the changes are done, we can adapt that and put it in the 
> book, also add some more documentation about the new authorization features. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6170) Timeouts for row lock and scan should be separate

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402272#comment-13402272
 ] 

Hudson commented on HBASE-6170:
---

Integrated in HBase-TRUNK #3080 (See 
[https://builds.apache.org/job/HBase-TRUNK/3080/])
HBASE-6170 add the two new config parameters in hbase-default.xml (Revision 
1354500)

 Result = SUCCESS
tedyu : 
Files : 
* /hbase/trunk/hbase-server/src/main/resources/hbase-default.xml


> Timeouts for row lock and scan should be separate
> -
>
> Key: HBASE-6170
> URL: https://issues.apache.org/jira/browse/HBASE-6170
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: Otis Gospodnetic
>Assignee: Chris Trezzo
>Priority: Minor
> Fix For: 0.96.0
>
> Attachments: 6170.addendum, 6170v4.patch, HBASE-6170v1.patch, 
> HBASE-6170v1.patch, HBASE-6170v1.patch, HBASE-6170v2.patch, HBASE-6170v3.patch
>
>
> Apparently the timeout used for row locking and for scanning is global.  It 
> would be better to have two separate timeouts.
> (opening the issue to make Lars George happy)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6241) HBaseCluster interface for interacting with the cluster from system tests

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402293#comment-13402293
 ] 

Zhihong Ted Yu commented on HBASE-6241:
---

{code}
+  private Class[] getIntegrationTestClasses() {
+//TODO: replace this with smt to find all classes in the classpath
+//having @Category(IntegrationTests.class) annotation
{code}
See TestCheckTestClasses.findTestClasses() for example on how the above can be 
done.

> HBaseCluster interface for interacting with the cluster from system tests 
> --
>
> Key: HBASE-6241
> URL: https://issues.apache.org/jira/browse/HBASE-6241
> Project: HBase
>  Issue Type: Sub-task
>Reporter: Enis Soztutar
>Assignee: Enis Soztutar
> Attachments: HBASE-6241_v0.2.patch
>
>
> We need to abstract away the cluster interactions for system tests running on 
> actual clusters. 
> MiniHBaseCluster and RealHBaseCluster should both implement this interface, 
> and system tests should work with both.
> I'll split Devaraj's patch in HBASE-6053 for the initial version. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402295#comment-13402295
 ] 

Hadoop QA commented on HBASE-6281:
--

-1 overall.  Here are the results of testing the latest attachment 
  
http://issues.apache.org/jira/secure/attachment/12533661/HBASE-6281_trunk.patch
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

+1 tests included.  The patch appears to include 3 new or modified tests.

+1 hadoop2.0.  The patch compiles against the hadoop 2.0 profile.

+1 javadoc.  The javadoc tool did not generate any warning messages.

+1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

-1 findbugs.  The patch appears to introduce 6 new Findbugs (version 1.3.9) 
warnings.

+1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

+1 core tests.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2274//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2274//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2274//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2274//console

This message is automatically generated.

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-4920) We need a mascot, a totem

2012-06-27 Thread Jonathan Hsieh (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-4920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402306#comment-13402306
 ] 

Jonathan Hsieh commented on HBASE-4920:
---

Epic totem battle: whales vs squid.  
http://alaskarobotics.com/2009/12/01/whale-vs-squid/

> We need a mascot, a totem
> -
>
> Key: HBASE-4920
> URL: https://issues.apache.org/jira/browse/HBASE-4920
> Project: HBase
>  Issue Type: Task
>Reporter: stack
> Attachments: HBase Orca Logo.jpg, Orca_479990801.jpg, Screen shot 
> 2011-11-30 at 4.06.17 PM.png, apache hbase orca logo_Proof 3.pdf, apache 
> logo_Proof 8.pdf, krake.zip, more_orcas.png, more_orcas2.png, photo (2).JPG, 
> plus_orca.png
>
>
> We need a totem for our t-shirt that is yet to be printed.  O'Reilly owns the 
> Clyesdale.  We need something else.
> We could have a fluffy little duck that quacks 'hbase!' when you squeeze it 
> and we could order boxes of them from some off-shore sweatshop that 
> subcontracts to a contractor who employs child labor only.
> Or we could have an Orca (Big!, Fast!, Killer!, and in a poem that Marcy from 
> Salesforce showed me, that was a bit too spiritual for me to be seen quoting 
> here, it had the Orca as the 'Guardian of the Cosmic Memory': i.e. in 
> translation, bigdata).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402334#comment-13402334
 ] 

Zhihong Ted Yu commented on HBASE-6281:
---

Patch looks good.
{code}
+// Skip assignment for regions of tables in DISABLING state also because 
during clean cluster startup no
+// RS is alive and regions map also doesn't have any information about the 
regions. See HBASE-6281.
{code}
Please wrap long lines above.

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402336#comment-13402336
 ] 

ramkrishna.s.vasudevan commented on HBASE-6227:
---

Planning to commit this now.

> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Resolved] (HBASE-6091) Come up with strawman proposal for RC testing matrix

2012-06-27 Thread David S. Wang (JIRA)

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

David S. Wang resolved HBASE-6091.
--

Resolution: Implemented

> Come up with strawman proposal for RC testing matrix
> 
>
> Key: HBASE-6091
> URL: https://issues.apache.org/jira/browse/HBASE-6091
> Project: HBase
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 0.96.0
>Reporter: David S. Wang
>Assignee: David S. Wang
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402339#comment-13402339
 ] 

Zhihong Ted Yu commented on HBASE-6281:
---

For 0.92, there is no 
src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
It would be nice if you can create the file and put your test there.

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6281) Assignment need not be called for disabling table regions during clean cluster start up.

2012-06-27 Thread rajeshbabu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402348#comment-13402348
 ] 

rajeshbabu commented on HBASE-6281:
---

@Ted,
Thanks for review. I will prepare patch for 92 and upload patches addressing 
above comment.

> Assignment need not be called for disabling table regions during clean 
> cluster start up.
> 
>
> Key: HBASE-6281
> URL: https://issues.apache.org/jira/browse/HBASE-6281
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.92.1, 0.94.0
>Reporter: rajeshbabu
>Assignee: rajeshbabu
> Fix For: 0.92.2, 0.96.0, 0.94.1
>
> Attachments: HBASE-6281_94.patch, HBASE-6281_trunk.patch
>
>
> Currently during clean cluster start up if there are tables in DISABLING 
> state, we do bulk assignment through assignAllUserRegions() and after region 
> is OPENED in RS, master checks if the table is in DISBALING/DISABLED state 
> (in Am.regionOnline) and again calls unassign.  This roundtrip can be avoided 
> even before calling assignment.
> This JIRA is to address the above scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6261) Better approximate high-percentile percentile latency metrics

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402354#comment-13402354
 ] 

Zhihong Ted Yu commented on HBASE-6261:
---

So far I think the assumption is that the new algorithm would apply to the 
computation of all metrics.

Is it possible to configure "Approximate Counts and Quantiles over Sliding 
Windows" for a few selected metrics (to be consumed by load balancer, e.g.) 
while the others get computed with light weight algorithm ?

> Better approximate high-percentile percentile latency metrics
> -
>
> Key: HBASE-6261
> URL: https://issues.apache.org/jira/browse/HBASE-6261
> Project: HBase
>  Issue Type: New Feature
>Reporter: Andrew Wang
>  Labels: metrics
> Attachments: Latencyestimation.pdf
>
>
> The existing reservoir-sampling based latency metrics in HBase are not 
> well-suited for providing accurate estimates of high-percentile (e.g. 90th, 
> 95th, or 99th) latency. This is a well-studied problem in the literature (see 
> [1] and [2]), the question is determining which methods best suit our needs 
> and then implementing it.
> Ideally, we should be able to estimate these high percentiles with minimal 
> memory and CPU usage as well as minimal error (e.g. 1% error on 90th, or .1% 
> on 99th). It's also desirable to provide this over different time-based 
> sliding windows, e.g. last 1 min, 5 mins, 15 mins, and 1 hour.
> I'll note that this would also be useful in HDFS, or really anywhere latency 
> metrics are kept.
> [1] http://www.cs.rutgers.edu/~muthu/bquant.pdf
> [2] http://infolab.stanford.edu/~manku/papers/04pods-sliding.pdf

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-6227:
--

Fix Version/s: 0.94.1
   0.96.0

> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0, 0.94.1
>
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-6227:
--

  Resolution: Fixed
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

Commmitted to trunk and 0.94.
Thanks for the patch Chunhui.
Thanks for the review Ted.

> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-4920) We need a mascot, a totem

2012-06-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-4920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402389#comment-13402389
 ] 

Andrew Purtell commented on HBASE-4920:
---

-1 on Honey Badger. I'm pretty ignorant of Internet memes, for full disclosure, 
but someone recently showed me the Youtube video behind this one and, frankly, 
it's one of the dumbest fucking things I've ever seen, to use a technical term.

> We need a mascot, a totem
> -
>
> Key: HBASE-4920
> URL: https://issues.apache.org/jira/browse/HBASE-4920
> Project: HBase
>  Issue Type: Task
>Reporter: stack
> Attachments: HBase Orca Logo.jpg, Orca_479990801.jpg, Screen shot 
> 2011-11-30 at 4.06.17 PM.png, apache hbase orca logo_Proof 3.pdf, apache 
> logo_Proof 8.pdf, krake.zip, more_orcas.png, more_orcas2.png, photo (2).JPG, 
> plus_orca.png
>
>
> We need a totem for our t-shirt that is yet to be printed.  O'Reilly owns the 
> Clyesdale.  We need something else.
> We could have a fluffy little duck that quacks 'hbase!' when you squeeze it 
> and we could order boxes of them from some off-shore sweatshop that 
> subcontracts to a contractor who employs child labor only.
> Or we could have an Orca (Big!, Fast!, Killer!, and in a poem that Marcy from 
> Salesforce showed me, that was a bit too spiritual for me to be seen quoting 
> here, it had the Orca as the 'Guardian of the Cosmic Memory': i.e. in 
> translation, bigdata).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6170) Timeouts for row lock and scan should be separate

2012-06-27 Thread Jesse Yates (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402397#comment-13402397
 ] 

Jesse Yates commented on HBASE-6170:


Are we sure that this didn't introduce any findbugs problems that might be a 
problem? I thought we had fixed the findbugs new-problem finding, so we need to 
make sure that no new bugs were actually introduced or if they were, that we 
consider them ok.

> Timeouts for row lock and scan should be separate
> -
>
> Key: HBASE-6170
> URL: https://issues.apache.org/jira/browse/HBASE-6170
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: Otis Gospodnetic
>Assignee: Chris Trezzo
>Priority: Minor
> Fix For: 0.96.0
>
> Attachments: 6170.addendum, 6170v4.patch, HBASE-6170v1.patch, 
> HBASE-6170v1.patch, HBASE-6170v1.patch, HBASE-6170v2.patch, HBASE-6170v3.patch
>
>
> Apparently the timeout used for row locking and for scanning is global.  It 
> would be better to have two separate timeouts.
> (opening the issue to make Lars George happy)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6205) Support an option to keep data of dropped table for some time

2012-06-27 Thread Jesse Yates (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402404#comment-13402404
 ] 

Jesse Yates commented on HBASE-6205:


@Lars HBASE-5547 might not fully subsume this - conceptually we could have our 
own trash directory that just has a bunch of references files the original 
HFiles (like what I'm doing with snapshots in HBASE-6055). You would need to 
hack Reference.java a little bit to support full file references (or just use 
what I wrote: 
https://github.com/jyates/hbase/blob/timestamp-snapshots-r0/hbase-server/src/main/java/org/apache/hadoop/hbase/io/Reference.java).
 

This way you don't end up doing any actual file copying, but still can keep 
track of the files.

> Support an option to keep data of dropped table for some time
> -
>
> Key: HBASE-6205
> URL: https://issues.apache.org/jira/browse/HBASE-6205
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.94.0, 0.96.0
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6205.patch, HBASE-6205v2.patch, 
> HBASE-6205v3.patch, HBASE-6205v4.patch, HBASE-6205v5.patch
>
>
> User may drop table accidentally because of error code or other uncertain 
> reasons.
> Unfortunately, it happens in our environment because one user make a mistake 
> between production cluster and testing cluster.
> So, I just give a suggestion, do we need to support an option to keep data of 
> dropped table for some time, e.g. 1 day
> In the patch:
> We make a new dir named .trashtables in the rood dir.
> In the DeleteTableHandler, we move files in dropped table's dir to trash 
> table dir instead of deleting them directly.
> And Create new class TrashCleaner which will clean dropped tables if it is 
> time out with a period check.
> Default keep time for dropped tables is 1 day, and check period is 1 hour.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402405#comment-13402405
 ] 

Hudson commented on HBASE-6227:
---

Integrated in HBase-0.94 #285 (See 
[https://builds.apache.org/job/HBase-0.94/285/])
HBASE-6227 SSH and cluster startup causes data loss

Submitted by:Chunhui
Reviewed by:Ted, Ram (Revision 1354635)

 Result = SUCCESS
ramkrishna : 
Files : 
* 
/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java


> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0, 0.94.1
>
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6170) Timeouts for row lock and scan should be separate

2012-06-27 Thread Chris Trezzo (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402407#comment-13402407
 ] 

Chris Trezzo commented on HBASE-6170:
-

I greped through the FindBugs report and I didn't really see anything that was 
related. It was complaining about synchronization in the leases class, but that 
was there before the change.

> Timeouts for row lock and scan should be separate
> -
>
> Key: HBASE-6170
> URL: https://issues.apache.org/jira/browse/HBASE-6170
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: Otis Gospodnetic
>Assignee: Chris Trezzo
>Priority: Minor
> Fix For: 0.96.0
>
> Attachments: 6170.addendum, 6170v4.patch, HBASE-6170v1.patch, 
> HBASE-6170v1.patch, HBASE-6170v1.patch, HBASE-6170v2.patch, HBASE-6170v3.patch
>
>
> Apparently the timeout used for row locking and for scanning is global.  It 
> would be better to have two separate timeouts.
> (opening the issue to make Lars George happy)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-5547) Don't delete HFiles when in "backup mode"

2012-06-27 Thread Jesse Yates (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-5547?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402412#comment-13402412
 ] 

Jesse Yates commented on HBASE-5547:


Anyone else have any objections to Lar's proposal? Otherwise I'd like to get 
hacking on it this afternoon.

> Don't delete HFiles when in "backup mode"
> -
>
> Key: HBASE-5547
> URL: https://issues.apache.org/jira/browse/HBASE-5547
> Project: HBase
>  Issue Type: New Feature
>Reporter: Lars Hofhansl
>Assignee: Jesse Yates
> Attachments: hbase-5447-v8.patch, hbase-5447-v8.patch, 
> java_HBASE-5547_v4.patch, java_HBASE-5547_v5.patch, java_HBASE-5547_v6.patch, 
> java_HBASE-5547_v7.patch
>
>
> This came up in a discussion I had with Stack.
> It would be nice if HBase could be notified that a backup is in progress (via 
> a znode for example) and in that case either:
> 1. rename HFiles to be delete to .bck
> 2. rename the HFiles into a special directory
> 3. rename them to a general trash directory (which would not need to be tied 
> to backup mode).
> That way it should be able to get a consistent backup based on HFiles (HDFS 
> snapshots or hard links would be better options here, but we do not have 
> those).
> #1 makes cleanup a bit harder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6279) Remove the RpcController argument from the PB methods' signatures

2012-06-27 Thread Devaraj Das (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402421#comment-13402421
 ] 

Devaraj Das commented on HBASE-6279:


So in those cases where the interface extends proto-generated code, it seems 
like the RpcController cannot be avoided (at least I don't know if there is a 
way). For example, see AdminProtocol (in trunk) - it extends 
AdminService.BlockingInterface... 
But in the cases where the interface is written by hand (for example, 
HMasterInterface) the RpcController argument can be avoided. 
It makes sense to extend the proto-generated code to reduce maintenance burden. 
But yeah, then the RpcController will stick around.. 

[Meant to reply back yesterday, but forgot. Sorry]

> Remove the RpcController argument from the PB methods' signatures
> -
>
> Key: HBASE-6279
> URL: https://issues.apache.org/jira/browse/HBASE-6279
> Project: HBase
>  Issue Type: Bug
>Reporter: Devaraj Das
>
> I don't see a reason for having the RPC methods (like HMasterInterface) 
> define methods with the RpcController argument (which is always passed as 
> null during invocation). 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6261) Better approximate high-percentile percentile latency metrics

2012-06-27 Thread Andrew Wang (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402429#comment-13402429
 ] 

Andrew Wang commented on HBASE-6261:


@Elliot: Moving averages can be cheaply computed on the existing reservoir 
sample, this is more about percentiles. I'm not sure how OpenTSDB factors into 
this, since you'd have to feed the latency stream to OpenTSDB to figure out 
percentiles, which seems expensive. Depending on how tight your speed and 
memory constraints are, I think we could do this in HBase at acceptably minimal 
cost, or make this configurable somehow.

@Ted: The additional cost to do sliding windows is somewhat significant (I 
think 10s of MB more memory). Both the sliding and non-sliding methods allow 
for arbitrary percentiles. Anyway, I think reporting the 50th, 90th, 95th, and 
99th should satisfy anyone. Mixing and matching algorithms is possible and 
probably even advised since it's only worth doing this for high-rate streams 
where accuracy is important. Implementations of the cheaper and less accurate 
algos are already available.

> Better approximate high-percentile percentile latency metrics
> -
>
> Key: HBASE-6261
> URL: https://issues.apache.org/jira/browse/HBASE-6261
> Project: HBase
>  Issue Type: New Feature
>Reporter: Andrew Wang
>  Labels: metrics
> Attachments: Latencyestimation.pdf
>
>
> The existing reservoir-sampling based latency metrics in HBase are not 
> well-suited for providing accurate estimates of high-percentile (e.g. 90th, 
> 95th, or 99th) latency. This is a well-studied problem in the literature (see 
> [1] and [2]), the question is determining which methods best suit our needs 
> and then implementing it.
> Ideally, we should be able to estimate these high percentiles with minimal 
> memory and CPU usage as well as minimal error (e.g. 1% error on 90th, or .1% 
> on 99th). It's also desirable to provide this over different time-based 
> sliding windows, e.g. last 1 min, 5 mins, 15 mins, and 1 hour.
> I'll note that this would also be useful in HDFS, or really anywhere latency 
> metrics are kept.
> [1] http://www.cs.rutgers.edu/~muthu/bquant.pdf
> [2] http://infolab.stanford.edu/~manku/papers/04pods-sliding.pdf

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6205) Support an option to keep data of dropped table for some time

2012-06-27 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402436#comment-13402436
 ] 

Enis Soztutar commented on HBASE-6205:
--

Considering this, HBASE-5547, and snapshots, it seems that we can decouple file 
management, and region-file association. We can build a very lightweight file 
manager, and remove all file deletion code from RS code. 

As in the bigtable design, we can keep the current hfile's (and WAL's) of the 
regions in META, and RS flushes, or rolls the log, adds the file reference at 
META. Then for a snapshot or a backup, we just need a point-in-time snapshot of 
the META table. A master thread can periodically scan the META, and META 
snapshots and the hdfs directories, and delete the files with 0 reference based 
on a policy. And deleting the table will just take a META snapshot for the 
table, and delete the META entries afterwards. This META snapshot will be kept 
for a while (similar to the normal snapshot retention). WDYT, how crazy is 
this? 

> Support an option to keep data of dropped table for some time
> -
>
> Key: HBASE-6205
> URL: https://issues.apache.org/jira/browse/HBASE-6205
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.94.0, 0.96.0
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6205.patch, HBASE-6205v2.patch, 
> HBASE-6205v3.patch, HBASE-6205v4.patch, HBASE-6205v5.patch
>
>
> User may drop table accidentally because of error code or other uncertain 
> reasons.
> Unfortunately, it happens in our environment because one user make a mistake 
> between production cluster and testing cluster.
> So, I just give a suggestion, do we need to support an option to keep data of 
> dropped table for some time, e.g. 1 day
> In the patch:
> We make a new dir named .trashtables in the rood dir.
> In the DeleteTableHandler, we move files in dropped table's dir to trash 
> table dir instead of deleting them directly.
> And Create new class TrashCleaner which will clean dropped tables if it is 
> time out with a period check.
> Default keep time for dropped tables is 1 day, and check period is 1 hour.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-4920) We need a mascot, a totem

2012-06-27 Thread Jonathan Hsieh (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-4920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402441#comment-13402441
 ] 

Jonathan Hsieh commented on HBASE-4920:
---

I'm also -1 for honey badger, for related technical reasons. :)


> We need a mascot, a totem
> -
>
> Key: HBASE-4920
> URL: https://issues.apache.org/jira/browse/HBASE-4920
> Project: HBase
>  Issue Type: Task
>Reporter: stack
> Attachments: HBase Orca Logo.jpg, Orca_479990801.jpg, Screen shot 
> 2011-11-30 at 4.06.17 PM.png, apache hbase orca logo_Proof 3.pdf, apache 
> logo_Proof 8.pdf, krake.zip, more_orcas.png, more_orcas2.png, photo (2).JPG, 
> plus_orca.png
>
>
> We need a totem for our t-shirt that is yet to be printed.  O'Reilly owns the 
> Clyesdale.  We need something else.
> We could have a fluffy little duck that quacks 'hbase!' when you squeeze it 
> and we could order boxes of them from some off-shore sweatshop that 
> subcontracts to a contractor who employs child labor only.
> Or we could have an Orca (Big!, Fast!, Killer!, and in a poem that Marcy from 
> Salesforce showed me, that was a bit too spiritual for me to be seen quoting 
> here, it had the Orca as the 'Guardian of the Cosmic Memory': i.e. in 
> translation, bigdata).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6205) Support an option to keep data of dropped table for some time

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402442#comment-13402442
 ] 

Zhihong Ted Yu commented on HBASE-6205:
---

Interesting idea.
.META. scanning is not atomic. How about storing this information in zookeeper ?

> Support an option to keep data of dropped table for some time
> -
>
> Key: HBASE-6205
> URL: https://issues.apache.org/jira/browse/HBASE-6205
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.94.0, 0.96.0
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6205.patch, HBASE-6205v2.patch, 
> HBASE-6205v3.patch, HBASE-6205v4.patch, HBASE-6205v5.patch
>
>
> User may drop table accidentally because of error code or other uncertain 
> reasons.
> Unfortunately, it happens in our environment because one user make a mistake 
> between production cluster and testing cluster.
> So, I just give a suggestion, do we need to support an option to keep data of 
> dropped table for some time, e.g. 1 day
> In the patch:
> We make a new dir named .trashtables in the rood dir.
> In the DeleteTableHandler, we move files in dropped table's dir to trash 
> table dir instead of deleting them directly.
> And Create new class TrashCleaner which will clean dropped tables if it is 
> time out with a period check.
> Default keep time for dropped tables is 1 day, and check period is 1 hour.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6261) Better approximate high-percentile percentile latency metrics

2012-06-27 Thread Elliott Clark (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402443#comment-13402443
 ] 

Elliott Clark commented on HBASE-6261:
--

Basically I'm saying that I don't think that sliding windows are useful since 
most things that consume the metrics can do a moving average, which performs a 
very similar job as sliding windows.



> Better approximate high-percentile percentile latency metrics
> -
>
> Key: HBASE-6261
> URL: https://issues.apache.org/jira/browse/HBASE-6261
> Project: HBase
>  Issue Type: New Feature
>Reporter: Andrew Wang
>  Labels: metrics
> Attachments: Latencyestimation.pdf
>
>
> The existing reservoir-sampling based latency metrics in HBase are not 
> well-suited for providing accurate estimates of high-percentile (e.g. 90th, 
> 95th, or 99th) latency. This is a well-studied problem in the literature (see 
> [1] and [2]), the question is determining which methods best suit our needs 
> and then implementing it.
> Ideally, we should be able to estimate these high percentiles with minimal 
> memory and CPU usage as well as minimal error (e.g. 1% error on 90th, or .1% 
> on 99th). It's also desirable to provide this over different time-based 
> sliding windows, e.g. last 1 min, 5 mins, 15 mins, and 1 hour.
> I'll note that this would also be useful in HDFS, or really anywhere latency 
> metrics are kept.
> [1] http://www.cs.rutgers.edu/~muthu/bquant.pdf
> [2] http://infolab.stanford.edu/~manku/papers/04pods-sliding.pdf

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6268) Can't enable a table on a 0.94 cluster from a 0.92 client

2012-06-27 Thread Jean-Daniel Cryans (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6268?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402449#comment-13402449
 ] 

Jean-Daniel Cryans commented on HBASE-6268:
---

This is why I'm not a big fan of backports that are not simple-ish fixes...

So to me the most important would be to fix the 0.92 side as usually the 
infrastructure in place will rely on the older version first. In our case we 
started the migration of our clusters to 0.94 starting with the less important 
ones so our tools are still relying on 0.92

> Can't enable a table on a 0.94 cluster from a 0.92 client
> -
>
> Key: HBASE-6268
> URL: https://issues.apache.org/jira/browse/HBASE-6268
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Daniel Cryans
> Fix For: 0.92.2
>
>
> In 0.92 we know a table's enabled by doing this in HCM.isEnabledTable:
> bq. return getTableState(zkw, tableName) == null;
> In 0.94 we do:
> bq. return getTableState(zkw, tableName) == TableState.ENABLED;
> So what happens is that the the 0.92 client will hang forever since the znode 
> contains ENABLED instead of being absent.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6205) Support an option to keep data of dropped table for some time

2012-06-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402453#comment-13402453
 ] 

Andrew Purtell commented on HBASE-6205:
---

bq. .META. scanning is not atomic. How about storing this information in 
zookeeper ?

We could use ZK for coordination but would also need to store back after to 
.META., so we can repopulate ZK in cold boot scenarios. So... both?

> Support an option to keep data of dropped table for some time
> -
>
> Key: HBASE-6205
> URL: https://issues.apache.org/jira/browse/HBASE-6205
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.94.0, 0.96.0
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6205.patch, HBASE-6205v2.patch, 
> HBASE-6205v3.patch, HBASE-6205v4.patch, HBASE-6205v5.patch
>
>
> User may drop table accidentally because of error code or other uncertain 
> reasons.
> Unfortunately, it happens in our environment because one user make a mistake 
> between production cluster and testing cluster.
> So, I just give a suggestion, do we need to support an option to keep data of 
> dropped table for some time, e.g. 1 day
> In the patch:
> We make a new dir named .trashtables in the rood dir.
> In the DeleteTableHandler, we move files in dropped table's dir to trash 
> table dir instead of deleting them directly.
> And Create new class TrashCleaner which will clean dropped tables if it is 
> time out with a period check.
> Default keep time for dropped tables is 1 day, and check period is 1 hour.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6241) HBaseCluster interface for interacting with the cluster from system tests

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402458#comment-13402458
 ] 

Zhihong Ted Yu commented on HBASE-6241:
---

{code}
+  cluster.abortRegionServer(selected);
+  sleep(ONE_MIN);
+  cluster.startRegionServer(servers[selected].getHostname());
+  sleep(ONE_MIN);
{code}
Is there better way to detect the stop of region server has completed ?
{code}
+  public static enum ServiceType {
{code}
Should job/task tracker be in the enum as well ?
{code}
+  public abstract boolean signal(ServiceType service, String signal, String 
hostname) throws IOException;
{code}
Line length should be 100 chars or shorter.

For HBaseCluster.java, remove year in license.
{code}
+   * @return Name of master that just went down.
+   */
+  public abstract String waitOnMaster(final int serverNumber);
{code}
If no enum argument is planned to be added, the method can be renamed as 
waitOnMasterToStop().
{code}
+  public void restoreInitialState() throws IOException {
{code}
How about restoring to one of the ClusterStatus previously captured by 
getClusterStatus() ? (future enhancement)

I think getInitialClusterStatus() and getClusterStatus() can be unified into 
one method with enum indicating the type of status.
{code}
+   * @return Index into List of {@link 
MiniHBaseCluster#getRegionServerThreads()}
+   * of HRS carrying .META.. Returns -1 if none found.
+   */
+  public abstract int getServerWith(byte[] regionName) throws IOException;
{code}
The return value isn't just for .META. server. Its javadoc, should be improved 
- considering MiniHBaseCluster being a subclass of HBaseCluster.

More review comments to follow.

> HBaseCluster interface for interacting with the cluster from system tests 
> --
>
> Key: HBASE-6241
> URL: https://issues.apache.org/jira/browse/HBASE-6241
> Project: HBase
>  Issue Type: Sub-task
>Reporter: Enis Soztutar
>Assignee: Enis Soztutar
> Attachments: HBASE-6241_v0.2.patch
>
>
> We need to abstract away the cluster interactions for system tests running on 
> actual clusters. 
> MiniHBaseCluster and RealHBaseCluster should both implement this interface, 
> and system tests should work with both.
> I'll split Devaraj's patch in HBASE-6053 for the initial version. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-2730) Expose RS work queue contents on web UI

2012-06-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-2730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402461#comment-13402461
 ] 

Andrew Purtell commented on HBASE-2730:
---

bq. By default, "hbase.regionserver.servlet.show.queuedump" equals false to 
disable this feature

Why not add this to the debug dump? Why do we need a separate dump/report? Why 
should it be disabled by default?

> Expose RS work queue contents on web UI
> ---
>
> Key: HBASE-2730
> URL: https://issues.apache.org/jira/browse/HBASE-2730
> Project: HBase
>  Issue Type: New Feature
>  Components: monitoring, regionserver
>Reporter: Todd Lipcon
>Priority: Critical
> Fix For: 0.96.0
>
> Attachments: hbase-2730-0_94_0.patch
>
>
> Would be nice to be able to see the contents of the various work queues - eg 
> to know what regions are pending compaction/split/flush/etc. This is handy 
> for debugging why a region might be blocked, etc.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402466#comment-13402466
 ] 

Hudson commented on HBASE-6227:
---

Integrated in HBase-TRUNK #3082 (See 
[https://builds.apache.org/job/HBase-TRUNK/3082/])
HBASE-6227 SSH and cluster startup causes data loss

Submitted by:Chunhui
Reviewed by:Ram, Ted (Revision 1354634)

 Result = SUCCESS
ramkrishna : 
Files : 
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java


> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0, 0.94.1
>
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6273) HMasterInterface.isMasterRunning() requires clean up

2012-06-27 Thread Jean-Daniel Cryans (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402480#comment-13402480
 ] 

Jean-Daniel Cryans commented on HBASE-6273:
---

+1

> HMasterInterface.isMasterRunning() requires clean up
> 
>
> Key: HBASE-6273
> URL: https://issues.apache.org/jira/browse/HBASE-6273
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Affects Versions: 0.94.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 0.96.0
>
>
> This JIRA is in reference to JD's comments regarding the clean up needed in 
> isMasterRunning().  Refer to 
> https://issues.apache.org/jira/browse/HBASE-6240?focusedCommentId=13400772&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13400772

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6279) Remove the RpcController argument from the PB methods' signatures

2012-06-27 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402482#comment-13402482
 ] 

Andrew Purtell commented on HBASE-6279:
---

> It makes sense to extend the proto-generated code to reduce maintenance 
> burden.

Maybe not. From https://developers.google.com/protocol-buffers/docs/cpptutorial:
{quote}
If you want to add richer behaviour to a generated class, the best way to do 
this is to wrap the generated protocol buffer class in an application-specific 
class. ... You should never add behaviour to the generated classes by 
inheriting from them. This will break internal mechanisms and is not good 
object-oriented practice anyway.
{quote}

Of course this refers to the message classes, but regards protobuf's "RPC 
support" why not just use the message objects and leave out the RPC bits from 
proto files? There is no actual RPC implementation provided by the protobuf 
compiler or library, and there are classes such as RpcController that don't 
make sense and are polluting the interfaces.

> Remove the RpcController argument from the PB methods' signatures
> -
>
> Key: HBASE-6279
> URL: https://issues.apache.org/jira/browse/HBASE-6279
> Project: HBase
>  Issue Type: Bug
>Reporter: Devaraj Das
>
> I don't see a reason for having the RPC methods (like HMasterInterface) 
> define methods with the RpcController argument (which is always passed as 
> null during invocation). 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6282) The introspection, etc. of objects in the RPC has to be handled for PB objects

2012-06-27 Thread Devaraj Das (JIRA)
Devaraj Das created HBASE-6282:
--

 Summary: The introspection, etc. of objects in the RPC has to be 
handled for PB objects
 Key: HBASE-6282
 URL: https://issues.apache.org/jira/browse/HBASE-6282
 Project: HBase
  Issue Type: Bug
  Components: ipc
Reporter: Devaraj Das
 Fix For: 0.96.0


The places where the type of objects are inspected need to be updated to take 
into consideration PB types. I have noticed Objects.describeQuantity being 
used, and the private WritableRpcEngine.Server.logResponse method also needs 
updating (in the PB world, all information about operations/tablenames is 
contained in one PB argument).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-4920) We need a mascot, a totem

2012-06-27 Thread Roman Shaposhnik (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-4920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402498#comment-13402498
 ] 

Roman Shaposhnik commented on HBASE-4920:
-

@Jonathan 

"Obviously, You're Not a Golfer" (tm) ;-)

> We need a mascot, a totem
> -
>
> Key: HBASE-4920
> URL: https://issues.apache.org/jira/browse/HBASE-4920
> Project: HBase
>  Issue Type: Task
>Reporter: stack
> Attachments: HBase Orca Logo.jpg, Orca_479990801.jpg, Screen shot 
> 2011-11-30 at 4.06.17 PM.png, apache hbase orca logo_Proof 3.pdf, apache 
> logo_Proof 8.pdf, krake.zip, more_orcas.png, more_orcas2.png, photo (2).JPG, 
> plus_orca.png
>
>
> We need a totem for our t-shirt that is yet to be printed.  O'Reilly owns the 
> Clyesdale.  We need something else.
> We could have a fluffy little duck that quacks 'hbase!' when you squeeze it 
> and we could order boxes of them from some off-shore sweatshop that 
> subcontracts to a contractor who employs child labor only.
> Or we could have an Orca (Big!, Fast!, Killer!, and in a poem that Marcy from 
> Salesforce showed me, that was a bit too spiritual for me to be seen quoting 
> here, it had the Orca as the 'Guardian of the Cosmic Memory': i.e. in 
> translation, bigdata).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6283) [region_mover.rb] Add option to exclude list of hosts on unload instead of just assuming the source node.

2012-06-27 Thread Jonathan Hsieh (JIRA)
Jonathan Hsieh created HBASE-6283:
-

 Summary: [region_mover.rb] Add option to exclude list of hosts on 
unload instead of just assuming the source node.
 Key: HBASE-6283
 URL: https://issues.apache.org/jira/browse/HBASE-6283
 Project: HBase
  Issue Type: Improvement
Reporter: Jonathan Hsieh


Currently, the region_mover.rb script excludes a single host, the host 
offloading data, as a region move target.  This essentially limits the number 
of machines that can be shutdown at a time to one.  For larger clusters, it is 
manageable to have several nodes down at a time and desirable to get this 
process done more quickly.

The proposed patch adds an exclude file option, that allows multiple hosts to 
be excluded as targets.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Assigned] (HBASE-6283) [region_mover.rb] Add option to exclude list of hosts on unload instead of just assuming the source node.

2012-06-27 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh reassigned HBASE-6283:
-

Assignee: Jonathan Hsieh

> [region_mover.rb] Add option to exclude list of hosts on unload instead of 
> just assuming the source node.
> -
>
> Key: HBASE-6283
> URL: https://issues.apache.org/jira/browse/HBASE-6283
> Project: HBase
>  Issue Type: Improvement
>Reporter: Jonathan Hsieh
>Assignee: Jonathan Hsieh
>  Labels: jruby
>
> Currently, the region_mover.rb script excludes a single host, the host 
> offloading data, as a region move target.  This essentially limits the number 
> of machines that can be shutdown at a time to one.  For larger clusters, it 
> is manageable to have several nodes down at a time and desirable to get this 
> process done more quickly.
> The proposed patch adds an exclude file option, that allows multiple hosts to 
> be excluded as targets.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6269) Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest KeyValue

2012-06-27 Thread Zhihong Ted Yu (JIRA)

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

Zhihong Ted Yu updated HBASE-6269:
--

Status: Open  (was: Patch Available)

> Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest 
> KeyValue
> -
>
> Key: HBASE-6269
> URL: https://issues.apache.org/jira/browse/HBASE-6269
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: ShiXing
>Assignee: ShiXing
> Attachments: HBASE-6269-trunk-V1.patch, HBASE-6269-v1.patch, 
> runAllTests.out.txt
>
>
> When I fix the bug HBASE-6195, there is happened to find sometimes the test 
> case will fail, https://builds.apache.org/job/HBase-0.94/259/.
> If there are two Put/Increment with same row, family, qualifier, timestamp 
> and different memstoreTS, after each Put/Increment, we do a memstore flush. 
> So there will be two StoreFile with same KeyValue(except memstoreTS and 
> SequenceId).
> When I got the row, I always got the old records, the test case like this:
> {code}
>   public void testPutWithMemStoreFlush() throws Exception {
> Configuration conf = HBaseConfiguration.create();
> String method = "testPutWithMemStoreFlush";
> byte[] tableName = Bytes.toBytes(method);
> byte[] family = Bytes.toBytes("family");;
> byte[] qualifier = Bytes.toBytes("qualifier");
> byte[] row = Bytes.toBytes("putRow");
> byte[] value = null;
> this.region = initHRegion(tableName, method, conf, family);
> Put put = null;
> Get get = null;
> List kvs = null;
> Result res = null;
> 
> put = new Put(row);
> value = Bytes.toBytes("value0");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> 
> System.out.print("get value after flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value1");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value2");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> } 
>   }
> {code}
> and the result print as followed:
> {code}
> get value before flush after put value0 : value0
> get value after flush after put value0 : value0
> get value before flush after put value1 : value1
> get value after flush after put value1 : value0
> get value before flush after put value2 : value2
> get value after flush after put value2 : value0
> {code}
> I analyze the code for StoreFileScanner with lazy se

[jira] [Commented] (HBASE-6269) Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest KeyValue

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402523#comment-13402523
 ] 

Zhihong Ted Yu commented on HBASE-6269:
---

Integrated to trunk.

Thanks for the patch, Xing.

Thanks for the review, Ramkrishna and Annop.

> Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest 
> KeyValue
> -
>
> Key: HBASE-6269
> URL: https://issues.apache.org/jira/browse/HBASE-6269
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: ShiXing
>Assignee: ShiXing
> Attachments: HBASE-6269-trunk-V1.patch, HBASE-6269-v1.patch, 
> runAllTests.out.txt
>
>
> When I fix the bug HBASE-6195, there is happened to find sometimes the test 
> case will fail, https://builds.apache.org/job/HBase-0.94/259/.
> If there are two Put/Increment with same row, family, qualifier, timestamp 
> and different memstoreTS, after each Put/Increment, we do a memstore flush. 
> So there will be two StoreFile with same KeyValue(except memstoreTS and 
> SequenceId).
> When I got the row, I always got the old records, the test case like this:
> {code}
>   public void testPutWithMemStoreFlush() throws Exception {
> Configuration conf = HBaseConfiguration.create();
> String method = "testPutWithMemStoreFlush";
> byte[] tableName = Bytes.toBytes(method);
> byte[] family = Bytes.toBytes("family");;
> byte[] qualifier = Bytes.toBytes("qualifier");
> byte[] row = Bytes.toBytes("putRow");
> byte[] value = null;
> this.region = initHRegion(tableName, method, conf, family);
> Put put = null;
> Get get = null;
> List kvs = null;
> Result res = null;
> 
> put = new Put(row);
> value = Bytes.toBytes("value0");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> 
> System.out.print("get value after flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value1");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value2");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> } 
>   }
> {code}
> and the result print as followed:
> {code}
> get value before flush after put value0 : value0
> get value after flush after put value0 : value0
> get value before flush after put value1 : value1
> get value after flush after put value1 : value0
> get value before flush after put value

[jira] [Updated] (HBASE-6283) [region_mover.rb] Add option to exclude list of hosts on unload instead of just assuming the source node.

2012-06-27 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh updated HBASE-6283:
--

Attachment: region_mover.rb

Patch for trunk.  Was originally developed and tested against 0.90 (should 
apply to all active branches).

Manually tested by having TestLoadAndVerify running and executing 
region_mover.rb unloads while running.

> [region_mover.rb] Add option to exclude list of hosts on unload instead of 
> just assuming the source node.
> -
>
> Key: HBASE-6283
> URL: https://issues.apache.org/jira/browse/HBASE-6283
> Project: HBase
>  Issue Type: Improvement
>Reporter: Jonathan Hsieh
>Assignee: Jonathan Hsieh
>  Labels: jruby
> Attachments: region_mover.rb
>
>
> Currently, the region_mover.rb script excludes a single host, the host 
> offloading data, as a region move target.  This essentially limits the number 
> of machines that can be shutdown at a time to one.  For larger clusters, it 
> is manageable to have several nodes down at a time and desirable to get this 
> process done more quickly.
> The proposed patch adds an exclude file option, that allows multiple hosts to 
> be excluded as targets.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6283) [region_mover.rb] Add option to exclude list of hosts on unload instead of just assuming the source node.

2012-06-27 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh updated HBASE-6283:
--

Attachment: hbase-6283.patch

> [region_mover.rb] Add option to exclude list of hosts on unload instead of 
> just assuming the source node.
> -
>
> Key: HBASE-6283
> URL: https://issues.apache.org/jira/browse/HBASE-6283
> Project: HBase
>  Issue Type: Improvement
>Reporter: Jonathan Hsieh
>Assignee: Jonathan Hsieh
>  Labels: jruby
> Attachments: hbase-6283.patch
>
>
> Currently, the region_mover.rb script excludes a single host, the host 
> offloading data, as a region move target.  This essentially limits the number 
> of machines that can be shutdown at a time to one.  For larger clusters, it 
> is manageable to have several nodes down at a time and desirable to get this 
> process done more quickly.
> The proposed patch adds an exclude file option, that allows multiple hosts to 
> be excluded as targets.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6283) [region_mover.rb] Add option to exclude list of hosts on unload instead of just assuming the source node.

2012-06-27 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh updated HBASE-6283:
--

Attachment: (was: region_mover.rb)

> [region_mover.rb] Add option to exclude list of hosts on unload instead of 
> just assuming the source node.
> -
>
> Key: HBASE-6283
> URL: https://issues.apache.org/jira/browse/HBASE-6283
> Project: HBase
>  Issue Type: Improvement
>Reporter: Jonathan Hsieh
>Assignee: Jonathan Hsieh
>  Labels: jruby
> Attachments: hbase-6283.patch
>
>
> Currently, the region_mover.rb script excludes a single host, the host 
> offloading data, as a region move target.  This essentially limits the number 
> of machines that can be shutdown at a time to one.  For larger clusters, it 
> is manageable to have several nodes down at a time and desirable to get this 
> process done more quickly.
> The proposed patch adds an exclude file option, that allows multiple hosts to 
> be excluded as targets.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6279) Remove the RpcController argument from the PB methods' signatures

2012-06-27 Thread Devaraj Das (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402535#comment-13402535
 ] 

Devaraj Das commented on HBASE-6279:


Yeah, I agree that we don't need the RPC bits in the proto files. We could 
remove them, and instead define the RPCs with appropriate PB messages in the 
Java files...

> Remove the RpcController argument from the PB methods' signatures
> -
>
> Key: HBASE-6279
> URL: https://issues.apache.org/jira/browse/HBASE-6279
> Project: HBase
>  Issue Type: Bug
>Reporter: Devaraj Das
>
> I don't see a reason for having the RPC methods (like HMasterInterface) 
> define methods with the RpcController argument (which is always passed as 
> null during invocation). 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6241) HBaseCluster interface for interacting with the cluster from system tests

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402544#comment-13402544
 ] 

Zhihong Ted Yu commented on HBASE-6241:
---

{code}
+   * @return whether we are interacting with a real cluster as opposed to and 
in-process mini
{code}
'and' -> 'an'

For HBaseClusterManager, I see enum STATUS but don't see method which issues 
that command.

For HBaseTestingUtility.java:
{code}
+} catch (Exception ex) {
+  throw new RuntimeException(ex);
+}
{code}
The above doesn't seem necessary.

For RealHBaseCluster.java, please add license.

For waitForActiveAndReadyMaster():
{code}
+  } catch (MasterNotRunningException m) {
+LOG.warn("Master not started yet " + m);
{code}
Does it make sense to introduce timeout since loop may wait indefinitely.

> HBaseCluster interface for interacting with the cluster from system tests 
> --
>
> Key: HBASE-6241
> URL: https://issues.apache.org/jira/browse/HBASE-6241
> Project: HBase
>  Issue Type: Sub-task
>Reporter: Enis Soztutar
>Assignee: Enis Soztutar
> Attachments: HBASE-6241_v0.2.patch
>
>
> We need to abstract away the cluster interactions for system tests running on 
> actual clusters. 
> MiniHBaseCluster and RealHBaseCluster should both implement this interface, 
> and system tests should work with both.
> I'll split Devaraj's patch in HBASE-6053 for the initial version. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6284) Introduce HRegion#doMiniBatchDelete()

2012-06-27 Thread Zhihong Ted Yu (JIRA)
Zhihong Ted Yu created HBASE-6284:
-

 Summary: Introduce HRegion#doMiniBatchDelete()
 Key: HBASE-6284
 URL: https://issues.apache.org/jira/browse/HBASE-6284
 Project: HBase
  Issue Type: Bug
Reporter: Zhihong Ted Yu


>From Anoop under thread 'Can there be a doMiniBatchDelete in HRegion':

The HTable#delete(List) groups the Deletes for the same RS and make one 
n/w call only. But within the RS, there will be N number of delete calls on the 
region one by one. This will include N number of HLog write and sync. If this 
also can be grouped can we get better performance for the multi row delete.

I have made the new miniBatchDelete () and made the HTable#delete(List) 
to call this new batch delete.
Just tested initially with the one node cluster.  In that itself I am getting a 
performance boost which is very much promising.
Only one CF and qualifier.
10K total rows delete with a batch of 100 deletes. Only deletes happening on 
the table from one thread.
With the new way the net time taken is reduced by more than 1/10
Will test in a 4 node cluster also. I think it will worth doing this change.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6285) HBase master should log INFO message when it attempts to assign a region

2012-06-27 Thread Aditya Kishore (JIRA)
Aditya Kishore created HBASE-6285:
-

 Summary: HBase master should log INFO message when it attempts to 
assign a region
 Key: HBASE-6285
 URL: https://issues.apache.org/jira/browse/HBASE-6285
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 0.94.0
Reporter: Aditya Kishore
Assignee: Aditya Kishore
Priority: Minor


With the default logging level (INFO), it is very difficult to diagnose a large 
HBase cluster that is having problems assigning regions because the HBase 
master logs a DEBUG message when it instructs a region-server to assign a 
region.

You actually have to crawl EVERY HBase region-server log to find out which node 
received the request for a particular region. Further, lets say the HBase 
master sends the request and something goes wrong, we might not even get a 
message in the region-server log.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6285) HBase master should log INFO message when it attempts to assign a region

2012-06-27 Thread Aditya Kishore (JIRA)

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

Aditya Kishore updated HBASE-6285:
--

Attachment: HBASE-6285_trunk.patch

Patch for trunk with existing DEBUG log message changed to INFO.

> HBase master should log INFO message when it attempts to assign a region
> 
>
> Key: HBASE-6285
> URL: https://issues.apache.org/jira/browse/HBASE-6285
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Affects Versions: 0.94.0
>Reporter: Aditya Kishore
>Assignee: Aditya Kishore
>Priority: Minor
> Attachments: HBASE-6285_trunk.patch
>
>
> With the default logging level (INFO), it is very difficult to diagnose a 
> large HBase cluster that is having problems assigning regions because the 
> HBase master logs a DEBUG message when it instructs a region-server to assign 
> a region.
> You actually have to crawl EVERY HBase region-server log to find out which 
> node received the request for a particular region. Further, lets say the 
> HBase master sends the request and something goes wrong, we might not even 
> get a message in the region-server log.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-6286) Upgrade maven-compiler-plugin to 2.5.1

2012-06-27 Thread Andrew Purtell (JIRA)

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

Andrew Purtell updated HBASE-6286:
--

Attachment: HBASE-6286.patch

> Upgrade maven-compiler-plugin to 2.5.1
> --
>
> Key: HBASE-6286
> URL: https://issues.apache.org/jira/browse/HBASE-6286
> Project: HBase
>  Issue Type: Improvement
>  Components: build
>Reporter: Andrew Purtell
>Assignee: Andrew Purtell
>Priority: Minor
> Attachments: HBASE-6286.patch
>
>
> time mvn -PlocalTests clean install -DskipTests 
> With 2.5.1:
> |user|1m35.634s|1m31.178s|1m31.366s|
> |sys|0m06.540s|0m05.376s|0m05.488s|
> With 2.0.2 (current):
> |user|2m01.168s|1m54.027s|1m57.799s|
> |sys|0m05.896s|0m05.912s|0m06.032s|

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6286) Upgrade maven-compiler-plugin to 2.5.1

2012-06-27 Thread Andrew Purtell (JIRA)
Andrew Purtell created HBASE-6286:
-

 Summary: Upgrade maven-compiler-plugin to 2.5.1
 Key: HBASE-6286
 URL: https://issues.apache.org/jira/browse/HBASE-6286
 Project: HBase
  Issue Type: Improvement
  Components: build
Reporter: Andrew Purtell
Assignee: Andrew Purtell
Priority: Minor
 Attachments: HBASE-6286.patch

time mvn -PlocalTests clean install -DskipTests 

With 2.5.1:

|user|1m35.634s|1m31.178s|1m31.366s|
|sys|0m06.540s|0m05.376s|0m05.488s|

With 2.0.2 (current):

|user|2m01.168s|1m54.027s|1m57.799s|
|sys|0m05.896s|0m05.912s|0m06.032s|

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6269) Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest KeyValue

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402580#comment-13402580
 ] 

Hudson commented on HBASE-6269:
---

Integrated in HBase-TRUNK #3083 (See 
[https://builds.apache.org/job/HBase-TRUNK/3083/])
HBASE-6269 Lazyseek should use the maxSequenseId StoreFile's KeyValue as 
the latest KeyValue (Xing Shi) (Revision 1354703)

 Result = SUCCESS
tedyu : 
Files : 
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/KeyValueHeap.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java


> Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest 
> KeyValue
> -
>
> Key: HBASE-6269
> URL: https://issues.apache.org/jira/browse/HBASE-6269
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: ShiXing
>Assignee: ShiXing
> Attachments: HBASE-6269-trunk-V1.patch, HBASE-6269-v1.patch, 
> runAllTests.out.txt
>
>
> When I fix the bug HBASE-6195, there is happened to find sometimes the test 
> case will fail, https://builds.apache.org/job/HBase-0.94/259/.
> If there are two Put/Increment with same row, family, qualifier, timestamp 
> and different memstoreTS, after each Put/Increment, we do a memstore flush. 
> So there will be two StoreFile with same KeyValue(except memstoreTS and 
> SequenceId).
> When I got the row, I always got the old records, the test case like this:
> {code}
>   public void testPutWithMemStoreFlush() throws Exception {
> Configuration conf = HBaseConfiguration.create();
> String method = "testPutWithMemStoreFlush";
> byte[] tableName = Bytes.toBytes(method);
> byte[] family = Bytes.toBytes("family");;
> byte[] qualifier = Bytes.toBytes("qualifier");
> byte[] row = Bytes.toBytes("putRow");
> byte[] value = null;
> this.region = initHRegion(tableName, method, conf, family);
> Put put = null;
> Get get = null;
> List kvs = null;
> Result res = null;
> 
> put = new Put(row);
> value = Bytes.toBytes("value0");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> 
> System.out.print("get value after flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value1");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value2");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toS

[jira] [Commented] (HBASE-2611) Handle RS that fails while processing the failure of another one

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-2611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402582#comment-13402582
 ] 

Zhihong Ted Yu commented on HBASE-2611:
---

Putting patch on review board helps.

{code}
+   * @param opList: list of Op to be executed as one trx.
{code}
'trx' -> 'transaction'
{code}
+if(opList == null || opList.size() ==0)
{code}
Space between if and (.
{code}
+}catch (InterruptedException ie) {
+  LOG.warn("multi call interrupted; process failed!" + ie);
{code}
Restore interrupt status for the thread (same for doMultiAndWatch). Space 
between } and catch.
{code}
+  LOG.warn("multi call failed! One of the passed ops has failed which 
result in the rolled back.");
{code}
Line length beyond 100.
{code}
+   * @return
+   */
+  public SortedMap> copyDeadRSLogsWithMulti(
+  String deadRSZnode) {
{code}
javadoc for the return value.
{code}
+  LOG.warn("This is us! Skipping the processing as we might be closing 
down.");
{code}
Add deadRSZnodePath to the log.
{code}
+RetryCounterFactory retryCounterFactory = new 
RetryCounterFactory(Integer.MAX_VALUE, 3 * 1000);
{code}
I don't think MAX_VALUE is a good choice.
{code}
+SortedSet logQueue = new TreeSet();
{code}
Why is logQueue backed by a TreeSet ?
{code}
+LOG.warn("KeeperException occurred in multi; " +
+"seems some other regionserver took the logs before us.");
{code}
Add ke to the above message.
{code}
+Op deleteOpForLog = Op.delete(zNodeForCurrentLog, -1);
+znodesToWatch.add(logZnode);
+opsList.add(createOpForLog);
+opsList.add(deleteOpForLog);
{code}
Please reorder the above calls so that znodesToWatch.add() is after 
opsList.add() calls. This would make code more readable.

> Handle RS that fails while processing the failure of another one
> 
>
> Key: HBASE-2611
> URL: https://issues.apache.org/jira/browse/HBASE-2611
> Project: HBase
>  Issue Type: Sub-task
>  Components: replication
>Reporter: Jean-Daniel Cryans
>Assignee: Jean-Daniel Cryans
> Attachments: HBase-2611-upstream-v1.patch
>
>
> HBASE-2223 doesn't manage region servers that fail while doing the transfer 
> of HLogs queues from other region servers that failed. Devise a reliable way 
> to do it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6286) Upgrade maven-compiler-plugin to 2.5.1

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402584#comment-13402584
 ] 

Zhihong Ted Yu commented on HBASE-6286:
---

+1 on patch.

> Upgrade maven-compiler-plugin to 2.5.1
> --
>
> Key: HBASE-6286
> URL: https://issues.apache.org/jira/browse/HBASE-6286
> Project: HBase
>  Issue Type: Improvement
>  Components: build
>Reporter: Andrew Purtell
>Assignee: Andrew Purtell
>Priority: Minor
> Attachments: HBASE-6286.patch
>
>
> time mvn -PlocalTests clean install -DskipTests 
> With 2.5.1:
> |user|1m35.634s|1m31.178s|1m31.366s|
> |sys|0m06.540s|0m05.376s|0m05.488s|
> With 2.0.2 (current):
> |user|2m01.168s|1m54.027s|1m57.799s|
> |sys|0m05.896s|0m05.912s|0m06.032s|

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6205) Support an option to keep data of dropped table for some time

2012-06-27 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402586#comment-13402586
 ] 

Lars Hofhansl commented on HBASE-6205:
--

Sounds like an awful amount of work for this feature.

How about this: When a table is dropped we just delay that action by 
configurable amount of time (say 5 mins), during that time the drop action can 
be canceled.
Could just store tables to be dropped in a system table.


> Support an option to keep data of dropped table for some time
> -
>
> Key: HBASE-6205
> URL: https://issues.apache.org/jira/browse/HBASE-6205
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.94.0, 0.96.0
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6205.patch, HBASE-6205v2.patch, 
> HBASE-6205v3.patch, HBASE-6205v4.patch, HBASE-6205v5.patch
>
>
> User may drop table accidentally because of error code or other uncertain 
> reasons.
> Unfortunately, it happens in our environment because one user make a mistake 
> between production cluster and testing cluster.
> So, I just give a suggestion, do we need to support an option to keep data of 
> dropped table for some time, e.g. 1 day
> In the patch:
> We make a new dir named .trashtables in the rood dir.
> In the DeleteTableHandler, we move files in dropped table's dir to trash 
> table dir instead of deleting them directly.
> And Create new class TrashCleaner which will clean dropped tables if it is 
> time out with a period check.
> Default keep time for dropped tables is 1 day, and check period is 1 hour.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-2611) Handle RS that fails while processing the failure of another one

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-2611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402594#comment-13402594
 ] 

Zhihong Ted Yu commented on HBASE-2611:
---

Suppose there are (relatively) large number of Op's in opsList, the chance of 
collision between active region servers is high.

Some experiments should be performed so that we get idea of how long this 
procedure takes to succeed.

> Handle RS that fails while processing the failure of another one
> 
>
> Key: HBASE-2611
> URL: https://issues.apache.org/jira/browse/HBASE-2611
> Project: HBase
>  Issue Type: Sub-task
>  Components: replication
>Reporter: Jean-Daniel Cryans
>Assignee: Jean-Daniel Cryans
> Attachments: HBase-2611-upstream-v1.patch
>
>
> HBASE-2223 doesn't manage region servers that fail while doing the transfer 
> of HLogs queues from other region servers that failed. Devise a reliable way 
> to do it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-5941) improve multiDelete performance by grabbing locks ahead of time

2012-06-27 Thread Zhihong Ted Yu (JIRA)

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

Zhihong Ted Yu updated HBASE-5941:
--

Attachment: 5941.txt

> improve multiDelete performance by grabbing locks ahead of time
> ---
>
> Key: HBASE-5941
> URL: https://issues.apache.org/jira/browse/HBASE-5941
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.89.20100924, 0.89-fb, 0.94.1
>Reporter: Amitanand Aiyer
>Assignee: Amitanand Aiyer
>Priority: Minor
> Fix For: 0.89-fb
>
> Attachments: 5941.txt
>
>
> Ning reported that the performance of deletes is slower than the performance 
> of Puts. This should not be the case. 
> On digging up, it turns out that there is a difference between multiPut and 
> multiDelete in the way we grab locks.
> multiPut grabs all the locks optimistically and processes the puts one by 
> one. multiDelete grabs locks and releases
>  them one at a time, for each delete operation, as if it were done 
> separately. This may be causing a performance
>  slow down for deletes. Trying to improve it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-5705) Introduce Protocol Buffer RPC engine

2012-06-27 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-5705:
---

Attachment: 5705-1.patch

Early patch that at least builds. Still working on it. 

> Introduce Protocol Buffer RPC engine
> 
>
> Key: HBASE-5705
> URL: https://issues.apache.org/jira/browse/HBASE-5705
> Project: HBase
>  Issue Type: Sub-task
>  Components: ipc, master, migration, regionserver
>Reporter: Devaraj Das
>Assignee: Devaraj Das
> Attachments: 5705-1.patch
>
>
> Introduce Protocol Buffer RPC engine in the RPC core. Protocols that are PB 
> aware can be made to go through this RPC engine. The approach, in my current 
> thinking, would be similar to HADOOP-7773.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6284) Introduce HRegion#doMiniBatchDelete()

2012-06-27 Thread Jeff Whiting (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402656#comment-13402656
 ] 

Jeff Whiting commented on HBASE-6284:
-

While adding this it is probably worth looking at HBASE-5941 and incorporating 
its performance improvements as well.

> Introduce HRegion#doMiniBatchDelete()
> -
>
> Key: HBASE-6284
> URL: https://issues.apache.org/jira/browse/HBASE-6284
> Project: HBase
>  Issue Type: Bug
>Reporter: Zhihong Ted Yu
>
> From Anoop under thread 'Can there be a doMiniBatchDelete in HRegion':
> The HTable#delete(List) groups the Deletes for the same RS and make 
> one n/w call only. But within the RS, there will be N number of delete calls 
> on the region one by one. This will include N number of HLog write and sync. 
> If this also can be grouped can we get better performance for the multi row 
> delete.
> I have made the new miniBatchDelete () and made the 
> HTable#delete(List) to call this new batch delete.
> Just tested initially with the one node cluster.  In that itself I am getting 
> a performance boost which is very much promising.
> Only one CF and qualifier.
> 10K total rows delete with a batch of 100 deletes. Only deletes happening on 
> the table from one thread.
> With the new way the net time taken is reduced by more than 1/10
> Will test in a 4 node cluster also. I think it will worth doing this change.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (HBASE-5732) Remove the SecureRPCEngine and merge the security-related logic in the core engine

2012-06-27 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-5732:
---

   Resolution: Fixed
Fix Version/s: 0.96.0
   Status: Resolved  (was: Patch Available)

> Remove the SecureRPCEngine and merge the security-related logic in the core 
> engine
> --
>
> Key: HBASE-5732
> URL: https://issues.apache.org/jira/browse/HBASE-5732
> Project: HBase
>  Issue Type: Improvement
>Reporter: Devaraj Das
>Assignee: Devaraj Das
> Fix For: 0.96.0
>
> Attachments: 5732-rpcengine-merge.11.patch, 
> 5732-rpcengine-merge.12.patch, 5732-rpcengine-merge.7.patch, 
> rpcengine-merge.10.patch, rpcengine-merge.11.patch, rpcengine-merge.12.patch, 
> rpcengine-merge.3.patch, rpcengine-merge.4.patch, rpcengine-merge.9.patch, 
> rpcengine-merge.patch
>
>
> Remove the SecureRPCEngine and merge the security-related logic in the core 
> engine. Follow up to HBASE-5727.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-5612) Data types for HBase values

2012-06-27 Thread Mikhail Bautin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-5612?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402677#comment-13402677
 ] 

Mikhail Bautin commented on HBASE-5612:
---

Enis: yes, it makes sense to develop a more fine-grained data model for 
rows/qualifiers/values, not just for values.

> Data types for HBase values
> ---
>
> Key: HBASE-5612
> URL: https://issues.apache.org/jira/browse/HBASE-5612
> Project: HBase
>  Issue Type: Improvement
>Reporter: Mikhail Bautin
>Assignee: Mikhail Bautin
>
> In many real-life applications all values in a certain column family are of a 
> certain data type, e.g. 64-bit integer. We could specify that in the column 
> descriptor and enable data type-specific compression such as variable-length 
> integer encoding.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6287) Port HBASE-5941 improve multiDelete performance by grabbing locks ahead of time

2012-06-27 Thread Zhihong Ted Yu (JIRA)
Zhihong Ted Yu created HBASE-6287:
-

 Summary: Port HBASE-5941 improve multiDelete performance by 
grabbing locks ahead of time
 Key: HBASE-6287
 URL: https://issues.apache.org/jira/browse/HBASE-6287
 Project: HBase
  Issue Type: Bug
Reporter: Zhihong Ted Yu


HBASE-5941 has been integrated to 0.89-fb

This JIRA ports it to HBase trunk

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6170) Timeouts for row lock and scan should be separate

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402682#comment-13402682
 ] 

Hudson commented on HBASE-6170:
---

Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #72 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/72/])
HBASE-6170 add the two new config parameters in hbase-default.xml (Revision 
1354500)

 Result = FAILURE
tedyu : 
Files : 
* /hbase/trunk/hbase-server/src/main/resources/hbase-default.xml


> Timeouts for row lock and scan should be separate
> -
>
> Key: HBASE-6170
> URL: https://issues.apache.org/jira/browse/HBASE-6170
> Project: HBase
>  Issue Type: Improvement
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: Otis Gospodnetic
>Assignee: Chris Trezzo
>Priority: Minor
> Fix For: 0.96.0
>
> Attachments: 6170.addendum, 6170v4.patch, HBASE-6170v1.patch, 
> HBASE-6170v1.patch, HBASE-6170v1.patch, HBASE-6170v2.patch, HBASE-6170v3.patch
>
>
> Apparently the timeout used for row locking and for scanning is global.  It 
> would be better to have two separate timeouts.
> (opening the issue to make Lars George happy)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6227) SSH and cluster startup causes data loss

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402683#comment-13402683
 ] 

Hudson commented on HBASE-6227:
---

Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #72 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/72/])
HBASE-6227 SSH and cluster startup causes data loss

Submitted by:Chunhui
Reviewed by:Ram, Ted (Revision 1354634)

 Result = FAILURE
ramkrishna : 
Files : 
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java


> SSH and cluster startup  causes data loss
> -
>
> Key: HBASE-6227
> URL: https://issues.apache.org/jira/browse/HBASE-6227
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: chunhui shen
>Assignee: chunhui shen
> Fix For: 0.96.0, 0.94.1
>
> Attachments: HBASE-6227.patch, HBASE-6227v2-94.patch, 
> HBASE-6227v2.patch
>
>
> In AssignmentManager#processDeadServersAndRegionsInTransition, if 
> servershutdownhandler is processing and master consider it cluster startup, 
> master will assign all user regions, however, servershutdownhandler has not 
> completed splitting logs.
> Let me describe it in more detail.
> Suppose there are two regionservers A1 and B1, A1 carried META and ROOT
> 1.master restart and completed assignRootAndMeta
> 2.A1 and B1 are both restarted, new regionservers are A2 and B2
> 3.SSH which processed for A1 completed assigning ROOT and META
> 4.master do rebuilding user regions and no regions added to master's region 
> list
> 5.master consider it as a cluster startup, and assign all user regions
> 6.SSH which processed for B1 start to split B1's logs
> 7.All regions' data carried by B1 would loss.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6269) Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest KeyValue

2012-06-27 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402684#comment-13402684
 ] 

Hudson commented on HBASE-6269:
---

Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #72 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/72/])
HBASE-6269 Lazyseek should use the maxSequenseId StoreFile's KeyValue as 
the latest KeyValue (Xing Shi) (Revision 1354703)

 Result = FAILURE
tedyu : 
Files : 
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/KeyValueHeap.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java


> Lazyseek should use the maxSequenseId StoreFile's KeyValue as the latest 
> KeyValue
> -
>
> Key: HBASE-6269
> URL: https://issues.apache.org/jira/browse/HBASE-6269
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.0
>Reporter: ShiXing
>Assignee: ShiXing
> Attachments: HBASE-6269-trunk-V1.patch, HBASE-6269-v1.patch, 
> runAllTests.out.txt
>
>
> When I fix the bug HBASE-6195, there is happened to find sometimes the test 
> case will fail, https://builds.apache.org/job/HBase-0.94/259/.
> If there are two Put/Increment with same row, family, qualifier, timestamp 
> and different memstoreTS, after each Put/Increment, we do a memstore flush. 
> So there will be two StoreFile with same KeyValue(except memstoreTS and 
> SequenceId).
> When I got the row, I always got the old records, the test case like this:
> {code}
>   public void testPutWithMemStoreFlush() throws Exception {
> Configuration conf = HBaseConfiguration.create();
> String method = "testPutWithMemStoreFlush";
> byte[] tableName = Bytes.toBytes(method);
> byte[] family = Bytes.toBytes("family");;
> byte[] qualifier = Bytes.toBytes("qualifier");
> byte[] row = Bytes.toBytes("putRow");
> byte[] value = null;
> this.region = initHRegion(tableName, method, conf, family);
> Put put = null;
> Get get = null;
> List kvs = null;
> Result res = null;
> 
> put = new Put(row);
> value = Bytes.toBytes("value0");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> 
> System.out.print("get value after flush after put value0 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value1");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value1 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> 
> put = new Put(row);
> value = Bytes.toBytes("value2");
> put.add(family, qualifier, 1234567l, value);
> region.put(put);
> System.out.print("get value before flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   System.out.println(Bytes.toString(kvs.get(i).getValue()));
> }
> region.flushcache();
> System.out.print("get value after flush after put value2 : ");
> get = new Get(row);
> get.addColumn(family, qualifier);
> get.setMaxVersions();
> res = this.region.get(get, null);
> kvs = res.getColumn(family, qualifier);
> for (int i = 0; i < kvs.size(); i++) {
>   

[jira] [Commented] (HBASE-6287) Port HBASE-5941 improve multiDelete performance by grabbing locks ahead of time

2012-06-27 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6287?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402687#comment-13402687
 ] 

Zhihong Ted Yu commented on HBASE-6287:
---

0.89-fb doesn't have coprocessor.

We need to consider how the following should be handled:
{code}
  private void doPrePutHook(BatchOperationInProgress> 
batchOp)
...
if (coprocessorHost.prePut(put, walEdit, put.getWriteToWAL())) {
{code}
There is no coprocessorHost.preMutate() in trunk.

> Port HBASE-5941 improve multiDelete performance by grabbing locks ahead of 
> time
> ---
>
> Key: HBASE-6287
> URL: https://issues.apache.org/jira/browse/HBASE-6287
> Project: HBase
>  Issue Type: Bug
>Reporter: Zhihong Ted Yu
>
> HBASE-5941 has been integrated to 0.89-fb
> This JIRA ports it to HBase trunk

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Resolved] (HBASE-6251) [89-fb] Don't abort on flush failure in unit tests

2012-06-27 Thread Mikhail Bautin (JIRA)

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

Mikhail Bautin resolved HBASE-6251.
---

Resolution: Fixed

> [89-fb] Don't abort on flush failure in unit tests
> --
>
> Key: HBASE-6251
> URL: https://issues.apache.org/jira/browse/HBASE-6251
> Project: HBase
>  Issue Type: Improvement
>Reporter: Mikhail Bautin
>Priority: Minor
>
> If HLog flush fails, we don't want to abort the whole process in unit tests. 
> Instead, we want to throw a RuntimeException.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-6261) Better approximate high-percentile percentile latency metrics

2012-06-27 Thread Andrew Wang (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402733#comment-13402733
 ] 

Andrew Wang commented on HBASE-6261:


I've got my Java implementation of the non-sliding biased quantiles algorithm 
(QuantileEstimationCKMS.java) up on github:

https://github.com/umbrant/QuantileEstimation

Benchmarking on my laptop, I pushed 1 million shuffled items [0, 10**9) through 
it in 1.2 seconds while asking it to track the 50th, 90th, 95th, and 99th 
percentiles with low error. It kept ~5500 samples to do this, which at ~36B per 
sample, is about 193KiB. Empirical error was basically 0. I also ran it for 10 
million random longs, which took 19s and about 685KiB.

I think this is pretty lightweight. If this sounds reasonable, I'll start 
working on a patch.

> Better approximate high-percentile percentile latency metrics
> -
>
> Key: HBASE-6261
> URL: https://issues.apache.org/jira/browse/HBASE-6261
> Project: HBase
>  Issue Type: New Feature
>Reporter: Andrew Wang
>  Labels: metrics
> Attachments: Latencyestimation.pdf
>
>
> The existing reservoir-sampling based latency metrics in HBase are not 
> well-suited for providing accurate estimates of high-percentile (e.g. 90th, 
> 95th, or 99th) latency. This is a well-studied problem in the literature (see 
> [1] and [2]), the question is determining which methods best suit our needs 
> and then implementing it.
> Ideally, we should be able to estimate these high percentiles with minimal 
> memory and CPU usage as well as minimal error (e.g. 1% error on 90th, or .1% 
> on 99th). It's also desirable to provide this over different time-based 
> sliding windows, e.g. last 1 min, 5 mins, 15 mins, and 1 hour.
> I'll note that this would also be useful in HDFS, or really anywhere latency 
> metrics are kept.
> [1] http://www.cs.rutgers.edu/~muthu/bquant.pdf
> [2] http://infolab.stanford.edu/~manku/papers/04pods-sliding.pdf

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (HBASE-2611) Handle RS that fails while processing the failure of another one

2012-06-27 Thread Himanshu Vashishtha (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-2611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402775#comment-13402775
 ] 

Himanshu Vashishtha commented on HBASE-2611:


Thanks for the review Ted. I will upload a modified version on the rb. My 
initial idea of putting it here was to get some feedback on the approach.

Yes, it is zk intensive as all other regionservers are competing to do the 
transaction. But, as soon as one is successful (the first one who create the 
list and issues the multi command), other regionservers which haven't had a 
chance to do a listChildern call on the dead regionserver znode will not see 
anything; and for other regionservers which have created the Ops, the very 
first Op will fail as the znode has already moved. Zookeeper#multi op is fail 
fast, it rolls back the transaction on first failure without retrying remaining 
Ops. I tested it on a 3 RS cluster with average load being 12-14 logs, and it 
usually is done within seconds after the regionserver failure is noticed. What 
sort of experiments you are thinking about.
On an another note, TestReplication passes.

> Handle RS that fails while processing the failure of another one
> 
>
> Key: HBASE-2611
> URL: https://issues.apache.org/jira/browse/HBASE-2611
> Project: HBase
>  Issue Type: Sub-task
>  Components: replication
>Reporter: Jean-Daniel Cryans
>Assignee: Jean-Daniel Cryans
> Attachments: HBase-2611-upstream-v1.patch
>
>
> HBASE-2223 doesn't manage region servers that fail while doing the transfer 
> of HLogs queues from other region servers that failed. Devise a reliable way 
> to do it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (HBASE-6288) In hbase-daemons.sh, description of the default backup-master file path is wrong

2012-06-27 Thread Benjamin Kim (JIRA)
Benjamin Kim created HBASE-6288:
---

 Summary: In hbase-daemons.sh, description of the default 
backup-master file path is wrong
 Key: HBASE-6288
 URL: https://issues.apache.org/jira/browse/HBASE-6288
 Project: HBase
  Issue Type: Task
  Components: master, scripts, shell
Affects Versions: 0.94.0, 0.92.1, 0.92.0
Reporter: Benjamin Kim


In hbase-daemons.sh, description of the default backup-master file path is wrong

{code}
#   HBASE_BACKUP_MASTERS File naming remote hosts.
# Default is $\{HADOOP_CONF_DIR\}/backup-masters
{code}

it says the default backup-masters file path is at a hadoop-conf-dir, but 
shouldn't this be HBASE_CONF_DIR?

also adding following lines to conf/hbase-env.sh would be helpful
{code}
# File naming hosts on which backup HMaster will run.  
$HBASE_HOME/conf/backup-masters by default.
export HBASE_BACKUP_MASTERS=$\{HBASE_HOME\}/conf/backup-masters
{code}



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




  1   2   >