diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableDescriptorBuilder.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableDescriptorBuilder.java index d2cfff59f31f..a39292883276 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableDescriptorBuilder.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableDescriptorBuilder.java @@ -1044,6 +1044,10 @@ public ModifyableTableDescriptor setColumnFamily(final ColumnFamilyDescriptor fa if (family.getName() == null || family.getName().length <= 0) { throw new IllegalArgumentException("Family name cannot be null or empty"); } + int flength = family.getName() == null ? 0 : family.getName().length; + if (flength > Byte.MAX_VALUE) { + throw new IllegalArgumentException("The length of family name is bigger than " + Byte.MAX_VALUE); + } if (hasColumnFamily(family.getName())) { throw new IllegalArgumentException("Family '" + family.getNameAsString() + "' already exists so cannot be added");