Thanks, see HBASE-1184.
Toby
On 4 Feb 2009, at 17:59, stack wrote:
File an issue and a patch and we'll commit it. Seems like a
reasonable
expectation for a column family name.
Thanks Toby,
St.Ack
On Wed, Feb 4, 2009 at 9:53 AM, Toby White <[email protected]> wrote:
I quite wanted to use a hyphen in the name (so that it could be a
direct
mapping to an HTTP header field name), but hbase wouldn't let me.
Not massively onerous - it's easy to translate; it's just a slight
awkwardness.
Toby
On 4 Feb 2009, at 17:49, stack wrote:
Yeah, the architecture document is starting to showing its age.
Needs a
nip
and tuck.
No big reasons for family name being 'text'/'printable'. Is it an
onerous
restriction?
St.Ack
On Wed, Feb 4, 2009 at 8:09 AM, Toby White <[email protected]>
wrote:
From the HBase documentation (
http://wiki.apache.org/hadoop/Hbase/HbaseArchitecture)
'A column name has the form "<family>:<label>" where <family> and
<label>
can be arbitrary byte arrays'
yet in HColumnDescriptor.java:
for (int i = 0; i < (b.length - 1); i++) {
if (Character.isLetterOrDigit(b[i]) || b[i] == '_' || b[i] ==
'.') {
continue;
}
throw new IllegalArgumentException("Illegal character <" + b[i] +
">. Family names can only contain 'word characters' and
must end"
+
"with a colon: " + Bytes.toString(b));
}
Presumably the code is the authoritative source here; but why is
there
such
a restriction on family names?
Toby