[
https://issues.jboss.org/browse/TEIID-5077?page=com.atlassian.jira.plugin...
]
Jan Stastny commented on TEIID-5077:
------------------------------------
[~shawkins] What are the expectations for predefined DDL metadata by user? Should the
property override the behaviour also in that case?
When I use DDL metadata:
{code:sql|title=Source}
CREATE FOREIGN TABLE SmallA (
documentID string PRIMARY KEY,
type string OPTIONS (NAMEINSOURCE '`type`'),
IntKey integer OPTIONS (NAMEINSOURCE '`IntKey`'),
FloatNum double OPTIONS (NAMEINSOURCE '`FloatNum`'),
BigIntegerValue biginteger OPTIONS (NAMEINSOURCE '`BigIntegerValue`'),
StringKey string OPTIONS (NAMEINSOURCE '`StringKey`'),
CharValue string OPTIONS (NAMEINSOURCE '`CharValue`'),
LongNum long OPTIONS (NAMEINSOURCE '`LongNum`'),
DoubleNum double OPTIONS (NAMEINSOURCE '`DoubleNum`'),
ObjectValue object OPTIONS (NAMEINSOURCE '`ObjectValue`'),
ShortValue integer OPTIONS (NAMEINSOURCE '`ShortValue`'),
BigDecimalValue bigdecimal OPTIONS (NAMEINSOURCE '`BigDecimalValue`'),
DateValue string OPTIONS (NAMEINSOURCE '`DateValue`'),
BooleanValue boolean OPTIONS (NAMEINSOURCE '`BooleanValue`'),
TimestampValue string OPTIONS (NAMEINSOURCE '`TimestampValue`'),
ByteNum integer OPTIONS (NAMEINSOURCE '`ByteNum`'),
StringNum string OPTIONS (NAMEINSOURCE '`StringNum`'),
TimeValue string OPTIONS (NAMEINSOURCE '`TimeValue`'),
IntNum integer OPTIONS (NAMEINSOURCE '`IntNum`')
) OPTIONS (NAMEINSOURCE '`dvqe_crud`', UPDATABLE TRUE,
"teiid_couchbase:ISARRAYTABLE" 'false',
"teiid_couchbase:NAMEDTYPEPAIR"
'`type`:''nullSmallA''');
{code}
translator override:
{code:xml}
<translator name="couchbase-override" type="couchbase">
<property name="UseDouble" value="true"/>
</translator>
{code}
and perform an INSERT:
{code:sql}
INSERT INTO CRUD.SmallA
(IntKey, StringKey, IntNum, StringNum, FloatNum, LongNum, DoubleNum, ByteNum, DateValue,
TimeValue, TimestampValue, BooleanValue, CharValue, ShortValue, BigIntegerValue,
BigDecimalValue, ObjectValue)
VALUES
(10, '10', -2185591, null, convert(10816.7, float), 4964473766577711554,
convert(1509403.57, double), null, {d '2008-10-14'}, {t '06:40:48'},
null, false, convert('2', char), convert(9885, short), 18812, null,
'-162')
{code}
this is what I can see in couchbase by using cbq cli tool:
{code:json}
{
"dvqe_crud": {
"BigDecimalValue": null,
"BigIntegerValue": 18812,
"BooleanValue": false,
"ByteNum": null,
"CharValue": "2",
"DateValue": "2008-10-14",
"DoubleNum": 1509403.57,
"FloatNum": 10816.7001953125,
"IntKey": 10,
"IntNum": -2185591,
"LongNum": 4964473766577711000,
"ObjectValue": "-162",
"ShortValue": 9885,
"StringKey": "10",
"StringNum": null,
"TimeValue": "06:40:48",
"TimestampValue": null,
"type": "nullSmallA"
}
}
{code}
Shouldn't have the property fixed this?
Moreover, when I use WHERE clause on LongNum, then all the 4964473766577711XXX values
match each other.
Couchbase strange behaviour for long numbers
--------------------------------------------
Key: TEIID-5077
URL:
https://issues.jboss.org/browse/TEIID-5077
Project: Teiid
Issue Type: Bug
Components: Documentation, Misc. Connectors
Affects Versions: 8.12.x-6.4
Reporter: Jan Stastny
Assignee: Steven Hawkins
Priority: Critical
Fix For: 10.0, 8.12.x-6.4, 9.3.4
There is a strange limitation for storing large numbers (e.g. modelled as long) in
Couchbase.
https://forums.couchbase.com/t/strange-behavior-when-saving-big-long-numb...
The same behaviour with value: 28341791043587382
which is being stored and retreived as: 28341791043587384
I feel we need to document this behaviour and provide hints how to overcome it.
(Modelling of the column as string on Couchbase's side and defining a view).
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)