-
Bug
-
Resolution: Done
-
Major
-
8.7.1.6_2
-
None
-
None
1. Boolean values: The Teiid translates the value true/false as 1/0, but HBase does not support integer representation of boolean values [1].
2. BigInteger values ( <= -2): Teiid's bigInteger data type is wider than HBase's bigint (as wide as long) type, so it make sense to define column in HBase as e.g. decimal(30,0) and map it to Teiid's biginteger type.
From Teiid's point of view: There is no problem if inserted value is greater than or equal to -1. But if the value is less than -1, then a ClassCastException is thrown [2]. Phoenix driver require something like "UPSERT INTO smalla (intkey, bigintegervalue) VALUES (1, -10 .0)"
[1]
Query: insert into hbase.smalla (intkey, booleanvalue) values (55, true)
Column definition:
- source: booleanvalue boolean
- VDB: BooleanValue boolean OPTIONS (nameinsource 'booleanvalue', NATIVE_TYPE 'boolean')
Stack trace:
insert_boolean.log
[2]
Query: insert into hbase.smalla (intkey, bigintegervalue) values (55, -10)
Column definition:
- source: bigintegervalue decimal(20,0)
- VDB: BigIntegerValue biginteger OPTIONS (nameinsource 'bigintegervalue', NATIVE_TYPE 'decimal')
Stack trace:
insert_biginteger.log