[teiid-issues] [JBoss JIRA] (TEIID-3623) HBase translator - boolean and biginteger values are not translated correctly
Juraj Duráni (JIRA)
issues at jboss.org
Tue Aug 11 05:43:03 EDT 2015
[ https://issues.jboss.org/browse/TEIID-3623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Juraj Duráni updated TEIID-3623:
--------------------------------
Description:
*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
was:
*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
> HBase translator - boolean and biginteger values are not translated correctly
> -----------------------------------------------------------------------------
>
> Key: TEIID-3623
> URL: https://issues.jboss.org/browse/TEIID-3623
> Project: Teiid
> Issue Type: Bug
> Affects Versions: 8.7.1.6_2
> Environment: Hbase: 1.1.1
> Phoenix: 4.5.0-HBase-1.1
> Reporter: Juraj Duráni
> Assignee: Steven Hawkins
>
> *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
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
More information about the teiid-issues
mailing list