[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2017-11-08 Thread Andrew Purtell (JIRA)

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

Andrew Purtell updated HBASE-15456:
---
Fix Version/s: (was: 1.4.0)

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0
>
> Attachments: HBASE-15456-001_branch-1.patch, 
> HBASE-15456-branch-1.patch, HBASE-15456-branch-1.patch, 
> HBASE-15456-branch-1_v002.patch, HBASE-15456-v001.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v002.patch, HBASE-15456-v003.patch, 
> HBASE-15456-v004.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-20 Thread huaxiang sun (JIRA)

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

huaxiang sun updated HBASE-15456:
-
Attachment: HBASE-15456-001_branch-1.patch

Patch for branch-1

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, HBASE-15456-v001.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v002.patch, HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-19 Thread huaxiang sun (JIRA)

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

huaxiang sun updated HBASE-15456:
-
Attachment: HBASE-15456-v004.patch

The latest diff to address thrift unitest failure. The only difference is to 
add column families for create tableB, which addresses all thrift unittest 
failure. I got a green hbase unittest run locally.

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, 
> HBASE-15456-branch-1.patch, HBASE-15456-branch-1.patch, 
> HBASE-15456-v001.patch, HBASE-15456-v002.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v003.patch, HBASE-15456-v004.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-19 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-15456:
---
Status: Patch Available  (was: Reopened)

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, HBASE-15456-v001.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v002.patch, HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-19 Thread Ted Yu (JIRA)

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

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

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, 
> HBASE-15456-branch-1.patch, HBASE-15456-branch-1.patch, 
> HBASE-15456-v001.patch, HBASE-15456-v002.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-19 Thread huaxiang sun (JIRA)

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

huaxiang sun updated HBASE-15456:
-
Attachment: HBASE-15456-branch-1_v002.patch

The latest diff to address thrift unitest failure. The only difference is to 
add column families for create tableB, which addresses all thrift unittest 
failure. I got a green hbase unittest run locally with branch-1.

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, 
> HBASE-15456-branch-1.patch, HBASE-15456-branch-1.patch, 
> HBASE-15456-branch-1_v002.patch, HBASE-15456-v001.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v002.patch, HBASE-15456-v003.patch, 
> HBASE-15456-v004.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-19 Thread huaxiang sun (JIRA)

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

huaxiang sun updated HBASE-15456:
-
Attachment: HBASE-15456-branch-1.patch

Rename HBASE-15456-001_branch-1.patch to HBASE-15456-branch-1.patch as 
suggested by [~te...@apache.org].

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, 
> HBASE-15456-branch-1.patch, HBASE-15456-v001.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-19 Thread huaxiang sun (JIRA)

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

huaxiang sun updated HBASE-15456:
-
Attachment: HBASE-15456-branch-1.patch

Reattach the previous patch to kick off another unittest run.

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-001_branch-1.patch, 
> HBASE-15456-branch-1.patch, HBASE-15456-branch-1.patch, 
> HBASE-15456-v001.patch, HBASE-15456-v002.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-15 Thread Ted Yu (JIRA)

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

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

Thanks for the patch, huaxiang

Thanks for the reviews.

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-v001.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-15 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-15456:
---
 Hadoop Flags: Reviewed
Fix Version/s: 1.4.0

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-15456-v001.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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


[jira] [Updated] (HBASE-15456) CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family in table descriptor

2016-03-15 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-15456:
---
Summary: CreateTableProcedure/ModifyTableProcedure needs to fail when there 
is no family in table descriptor  (was: 
CreateTableProcedure/ModifyTableProcedure needs to fail when there is no family 
in descriptor)

> CreateTableProcedure/ModifyTableProcedure needs to fail when there is no 
> family in table descriptor
> ---
>
> Key: HBASE-15456
> URL: https://issues.apache.org/jira/browse/HBASE-15456
> Project: HBase
>  Issue Type: Improvement
>  Components: master
>Affects Versions: 2.0.0
>Reporter: huaxiang sun
>Assignee: huaxiang sun
>Priority: Minor
> Fix For: 2.0.0, 1.3.0
>
> Attachments: HBASE-15456-v001.patch, HBASE-15456-v002.patch, 
> HBASE-15456-v002.patch, HBASE-15456-v003.patch
>
>
> If there is only one family in the table, DeleteColumnFamilyProcedure will 
> fail. 
> Currently, when hbase.table.sanity.checks is set to false, hbase master logs 
> a warning and CreateTableProcedure/ModifyTableProcedure will succeed. 
> This behavior is not consistent with DeleteColumnFamilyProcedure's. 
> Another point, before HBASE-13145, PeriodicMemstoreFlusher will run into the 
> following exception. lastStoreFlushTimeMap is populated for families, if 
> there is no family in the table, there is no entry in lastStoreFlushTimeMap.
> {code}
> 16/02/01 11:14:26 ERROR regionserver.HRegionServer$PeriodicMemstoreFlusher: 
> Caught exception 
> java.util.NoSuchElementException 
> at 
> java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(ConcurrentHashMap.java:1354)
>  
> at 
> java.util.concurrent.ConcurrentHashMap$ValueIterator.next(ConcurrentHashMap.java:1384)
>  
> at java.util.Collections.min(Collections.java:628) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.getEarliestFlushTimeForAllStores(HRegion.java:1572)
>  
> at 
> org.apache.hadoop.hbase.regionserver.HRegion.shouldFlush(HRegion.java:1904) 
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer$PeriodicMemstoreFlusher.chore(HRegionServer.java:1509)
>  
> at org.apache.hadoop.hbase.Chore.run(Chore.java:87) 
> at java.lang.Thread.run(Thread.java:745) 
> {code}



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