[jira] [Created] (HBASE-5823) Hbck should be able to print help

2012-04-18 Thread Enis Soztutar (Created) (JIRA)
Hbck should be able to print help
-

 Key: HBASE-5823
 URL: https://issues.apache.org/jira/browse/HBASE-5823
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.92.1, 0.96.0, 0.94.1
Reporter: Enis Soztutar
Assignee: Enis Soztutar
Priority: Minor


bin/hbase hbck -h and -help should print the help message. It used to print 
help when unrecognized options are passed. We can backport this to 0.92/0.94 
branches as well. 

--
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-5760) Unit tests should write only under /target

2012-04-10 Thread Enis Soztutar (Created) (JIRA)
Unit tests should write only under /target
--

 Key: HBASE-5760
 URL: https://issues.apache.org/jira/browse/HBASE-5760
 Project: HBase
  Issue Type: Improvement
  Components: test
Affects Versions: 0.96.0
Reporter: Enis Soztutar
Assignee: Enis Soztutar
Priority: Minor


Some of the unit test runs result in files under $hbase_home/test, 
$hbase_home/build, or $hbase_home/. We should ensure that all tests use target 
as their data location.  

--
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-5671) hbase.metrics.showTableName should be true by default

2012-03-28 Thread Enis Soztutar (Created) (JIRA)
hbase.metrics.showTableName should be true by default
-

 Key: HBASE-5671
 URL: https://issues.apache.org/jira/browse/HBASE-5671
 Project: HBase
  Issue Type: Improvement
  Components: metrics
Reporter: Enis Soztutar
Assignee: Enis Soztutar
Priority: Trivial


HBASE-4768 added per-cf metrics and a new configuration option 
hbase.metrics.showTableName. We should switch the conf option to true by 
default, since it is not intuitive (at least to me) to aggregate per-cf across 
tables by default, and it seems confusing to report on cf's without table 
names. 

--
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-5623) Race condition when rolling the HLog and hlogFlush

2012-03-22 Thread Enis Soztutar (Created) (JIRA)
Race condition when rolling the HLog and hlogFlush
--

 Key: HBASE-5623
 URL: https://issues.apache.org/jira/browse/HBASE-5623
 Project: HBase
  Issue Type: Bug
  Components: wal
Affects Versions: 0.94.0
Reporter: Enis Soztutar
Assignee: Enis Soztutar


When doing a ycsb test with a large number of handlers 
(regionserver.handler.count=60), I get the following exceptions:

{code}
Caused by: org.apache.hadoop.ipc.RemoteException: java.io.IOException: 
java.lang.NullPointerException
at 
org.apache.hadoop.io.SequenceFile$Writer.getLength(SequenceFile.java:1099)
at 
org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter.getLength(SequenceFileLogWriter.java:314)
at org.apache.hadoop.hbase.regionserver.wal.HLog.syncer(HLog.java:1291)
at org.apache.hadoop.hbase.regionserver.wal.HLog.sync(HLog.java:1388)
at 
org.apache.hadoop.hbase.regionserver.HRegion.doMiniBatchPut(HRegion.java:2192)
at org.apache.hadoop.hbase.regionserver.HRegion.put(HRegion.java:1985)
at 
org.apache.hadoop.hbase.regionserver.HRegionServer.multi(HRegionServer.java:3400)
at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at 
org.apache.hadoop.hbase.ipc.WritableRpcEngine$Server.call(WritableRpcEngine.java:366)
at 
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1351)

at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:920)
at 
org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:152)
at $Proxy1.multi(Unknown Source)
at 
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation$3$1.call(HConnectionManager.java:1691)
at 
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation$3$1.call(HConnectionManager.java:1689)
at 
org.apache.hadoop.hbase.client.ServerCallable.withoutRetries(ServerCallable.java:214)
{code}

and 
{code}
java.lang.NullPointerException
at 
org.apache.hadoop.io.SequenceFile$Writer.checkAndWriteSync(SequenceFile.java:1026)
at 
org.apache.hadoop.io.SequenceFile$Writer.append(SequenceFile.java:1068)
at 
org.apache.hadoop.io.SequenceFile$Writer.append(SequenceFile.java:1035)
at 
org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter.append(SequenceFileLogWriter.java:279)
at 
org.apache.hadoop.hbase.regionserver.wal.HLog$LogSyncer.hlogFlush(HLog.java:1237)
at 
org.apache.hadoop.hbase.regionserver.wal.HLog.syncer(HLog.java:1271)
at 
org.apache.hadoop.hbase.regionserver.wal.HLog.sync(HLog.java:1391)
at 
org.apache.hadoop.hbase.regionserver.HRegion.doMiniBatchPut(HRegion.java:2192)
at 
org.apache.hadoop.hbase.regionserver.HRegion.put(HRegion.java:1985)
at 
org.apache.hadoop.hbase.regionserver.HRegionServer.multi(HRegionServer.java:3400)
at sun.reflect.GeneratedMethodAccessor33.invoke(Unknown Source)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at 
org.apache.hadoop.hbase.ipc.WritableRpcEngine$Server.call(WritableRpcEngine.java:366)
at 
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1351)
{code}

It seems the root cause of the issue is that we open a new log writer and close 
the old one at HLog#rollWriter() holding the updateLock, but the other threads 
doing syncer() calls
{code} 
logSyncerThread.hlogFlush(this.writer);
{code}
without holding the updateLock. LogSyncer only synchronizes against concurrent 
appends and flush(), but not on the passed writer, which can be closed already 
by rollWriter(). In this case, since SequenceFile#Writer.close() sets it's out 
field as null, we get the NPE. 


--
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-5400) Some tests does not have annotations for (Small|Medium|Large)Tests

2012-02-14 Thread Enis Soztutar (Created) (JIRA)
Some tests does not have annotations for (Small|Medium|Large)Tests 
---

 Key: HBASE-5400
 URL: https://issues.apache.org/jira/browse/HBASE-5400
 Project: HBase
  Issue Type: Bug
  Components: security, test
Affects Versions: 0.94.0, 0.92.1
Reporter: Enis Soztutar
Assignee: Enis Soztutar


These tests does not have annotations, and are not picked up by -PrunAllTests
{code}
security/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessControlFilter.java
security/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java
security/src/test/java/org/apache/hadoop/hbase/security/access/TestTablePermissions.java
security/src/test/java/org/apache/hadoop/hbase/security/access/TestZKPermissionsWatcher.java
security/src/test/java/org/apache/hadoop/hbase/security/token/TestTokenAuthentication.java
security/src/test/java/org/apache/hadoop/hbase/security/token/TestZKSecretWatcher.java
src/test/java/org/apache/hadoop/hbase/io/hfile/TestHFileDataBlockEncoder.java
{code}

We can also backport this to 0.92.1, since development will continue on 0.92 
branch. 

--
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-5385) Delete table/column should delete stored permissions on -acl- table

2012-02-10 Thread Enis Soztutar (Created) (JIRA)
Delete table/column should delete stored permissions on -acl- table  
-

 Key: HBASE-5385
 URL: https://issues.apache.org/jira/browse/HBASE-5385
 Project: HBase
  Issue Type: Sub-task
  Components: security
Affects Versions: 0.94.0
Reporter: Enis Soztutar
Assignee: Enis Soztutar


Deleting the table or a column does not cascade to the stored permissions at 
the -acl- table. We should also remove those permissions, otherwise, it can be 
a security leak, where freshly created tables contain permissions from previous 
same-named tables. We might also want to ensure, upon table creation, that no 
entries are already stored at the -acl- table. 

--
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-5371) Introduce AccessControllerProtocol.checkPermissions(Permission[] permissons) API

2012-02-09 Thread Enis Soztutar (Created) (JIRA)
Introduce AccessControllerProtocol.checkPermissions(Permission[] permissons) API


 Key: HBASE-5371
 URL: https://issues.apache.org/jira/browse/HBASE-5371
 Project: HBase
  Issue Type: Sub-task
  Components: security
Affects Versions: 0.94.0, 0.92.1
Reporter: Enis Soztutar
Assignee: Enis Soztutar


We need to introduce something like 
AccessControllerProtocol.checkPermissions(Permission[] permissions) API, so 
that clients can check access rights before carrying out the operations. We 
need this kind of operation for HCATALOG-245, which introduces authorization 
providers for hbase over hcat. We cannot use getUserPermissions() since it 
requires ADMIN permissions on the global/table level.

--
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-5372) Table mutation operations should check table level rights, not global rights

2012-02-09 Thread Enis Soztutar (Created) (JIRA)
Table mutation operations should check table level rights, not global rights 
-

 Key: HBASE-5372
 URL: https://issues.apache.org/jira/browse/HBASE-5372
 Project: HBase
  Issue Type: Sub-task
Reporter: Enis Soztutar
Assignee: Enis Soztutar


getUserPermissions(tableName)/grant/revoke and drop/modify table operations 
should not check for global CREATE/ADMIN rights, but table CREATE/ADMIN rights. 
The reasoning is that if a user is able to admin or read from a table, she 
should be able to read the table's permissions. We can choose whether we want 
only READ or ADMIN permissions for getUserPermission(). Since we check for 
global permissions first for table permissions, configuring table access using 
global permissions will continue to work. 

--
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-5358) HBaseObjectWritable should be able to serialize generic arrays not defined previously

2012-02-08 Thread Enis Soztutar (Created) (JIRA)
HBaseObjectWritable should be able to serialize generic arrays not defined 
previously
-

 Key: HBASE-5358
 URL: https://issues.apache.org/jira/browse/HBASE-5358
 Project: HBase
  Issue Type: Improvement
  Components: coprocessors, io
Reporter: Enis Soztutar
Assignee: Enis Soztutar


HBaseObjectWritable can encode Writable[]'s but, but cannot encode A[] where A 
extends Writable. This becomes an issue for example when adding a coprocessor 
method which takes A[] (see HBASE-5352). 

--
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-5341) HBase build artifact should include security code by defult

2012-02-06 Thread Enis Soztutar (Created) (JIRA)
HBase build artifact should include security code by defult 


 Key: HBASE-5341
 URL: https://issues.apache.org/jira/browse/HBASE-5341
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.94.0, 0.92.1
Reporter: Enis Soztutar
Assignee: Enis Soztutar


Hbase 0.92.0 was released with two artifacts, plain and security. The security 
code is built with -Psecurity. There are two tarballs, but only the plain jar 
in maven repo at repository.a.o. 

I see no reason to do a separate artifact for the security related code, since 
0.92 already depends on secure Hadoop 1.0.0, and all of the security related 
code is not loaded by default. In this issue, I propose, we merge the code 
under /security to src/ and remove the maven profile. 

--
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-5342) Grant/Revoke global permissions

2012-02-06 Thread Enis Soztutar (Created) (JIRA)
Grant/Revoke global permissions
---

 Key: HBASE-5342
 URL: https://issues.apache.org/jira/browse/HBASE-5342
 Project: HBase
  Issue Type: Improvement
Reporter: Enis Soztutar
Assignee: Enis Soztutar


HBASE-3025 introduced simple ACLs based on coprocessors. It defines 
global/table/cf/cq level permissions. However, there is no way to grant/revoke 
global level permissions, other than the hbase.superuser conf setting. 

--
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-5343) Access control API in HBaseAdmin.java

2012-02-06 Thread Enis Soztutar (Created) (JIRA)
Access control API in HBaseAdmin.java  
---

 Key: HBASE-5343
 URL: https://issues.apache.org/jira/browse/HBASE-5343
 Project: HBase
  Issue Type: Improvement
  Components: client, coprocessors, security
Affects Versions: 0.94.0, 0.92.1
Reporter: Enis Soztutar
Assignee: Enis Soztutar


To use the access control mechanism added in HBASE-3025, users should either 
use the shell interface, or use the coprocessor API directly, which is not very 
user friendly. We can add grant/revoke/user_permission commands similar to the 
shell interface to HBaseAdmin assuming HBASE-5341 is in. 

--
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