You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Nihal Jain (JIRA)" <ji...@apache.org> on 2018/06/29 07:07:00 UTC
[jira] [Created] (HBASE-20821) Re-creating a dropped namespace and
contained table inherits previously set space quota settings
Nihal Jain created HBASE-20821:
----------------------------------
Summary: Re-creating a dropped namespace and contained table inherits previously set space quota settings
Key: HBASE-20821
URL: https://issues.apache.org/jira/browse/HBASE-20821
Project: HBase
Issue Type: Bug
Reporter: Nihal Jain
Assignee: Nihal Jain
As demonstarted in [HBASE-20662.master.002.patch|https://issues.apache.org/jira/secure/attachment/12927187/HBASE-20662.master.002.patch] re-creating a dropped namespace and contained table inherits previously set space quota settings.
*Steps*
* Create a namespace and a table in it
* Set space quota on namespace
* Drop table and then namespace
* Re create same namespace and same table
*
{code:java}
private void setQuotaAndThenDropNamespace(final String namespace, SpaceViolationPolicy policy)
throws Exception {
Put put = new Put(Bytes.toBytes("to_reject"));
put.addColumn(Bytes.toBytes(SpaceQuotaHelperForTests.F1), Bytes.toBytes("to"),
Bytes.toBytes("reject"));
createNamespaceIfNotExist(TEST_UTIL.getAdmin(), namespace);
// Do puts until we violate space policy
final TableName tn = writeUntilNSSpaceViolationAndVerifyViolation(namespace, policy, put);
// Now, drop the table
TEST_UTIL.deleteTable(tn);
LOG.debug("Successfully deleted table ", tn);
// Now, drop the namespace
TEST_UTIL.getAdmin().deleteNamespace(namespace);
LOG.debug("Successfully deleted the namespace ", namespace);
// Now re-create the namespace
createNamespaceIfNotExist(TEST_UTIL.getAdmin(), namespace);
LOG.debug("Successfully re-created the namespace ", namespace);
TEST_UTIL.createTable(tn, Bytes.toBytes(SpaceQuotaHelperForTests.F1));
LOG.debug("Successfully re-created table ", tn);
// Put some rows now: should not violate as namespace/quota was dropped
verifyNoViolation(policy, tn, put);
}
{code}
*Expected*: SpaceQuota settings should not exist on the newly re-created table
*Actual:* SpaceQuota settings (systematically created due to previously added namespace space quota) exist on table
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)