Alice Chen created TRAFODION-350:
------------------------------------
Summary: LP Bug: 1326469 - ODBC driver returned error when rowset
upsert has DATETIME data type column
Key: TRAFODION-350
URL: https://issues.apache.org/jira/browse/TRAFODION-350
Project: Apache Trafodion
Issue Type: Bug
Components: client-odbc-linux
Reporter: JiepingZhang
Assignee: Daniel Lu
Priority: Critical
When implement the test below from ODBC rowset, ODBC driver returned error:
“Message: [Trafodion ODBC Driver] DATETIME FIELD OVERFLOW. Incorrect Format or
Data”.
>>CREATE TABLE odbc_jp.tmp2 ( C01 CHAR( 20 ) CHARACTER SET ISO88591 NOT NULL,
>>C02 CHAR( 20 ) CHARACTER SET UCS2, C03 VARCHAR( 20 ) CHARACTER SET ISO88591,
>>C04 VARCHAR( 20 ) CHARACTER SET UCS2, C05 LONG VARCHAR( 20 ) CHARACTER SET
>>ISO88591, C06 LONG VARCHAR( 20 ) CHARACTER SET UCS2, C07 NCHAR( 20 ), C08
>>NCHAR VARYING( 20 ), C09 DECIMAL (8, 0) SIGNED, C10 DECIMAL (8, 0) UNSIGNED,
>>C11 NUMERIC (8, 0) SIGNED, C12 NUMERIC (8, 0) UNSIGNED, C13 TINYINT SIGNED,
>>C14 TINYINT UNSIGNED, C15 SMALLINT SIGNED, C16 SMALLINT UNSIGNED, C17 INTEGER
>>SIGNED NOT NULL, C18 INTEGER UNSIGNED, C19 LARGEINT NOT NULL NOT DROPPABLE,
>>C20 REAL, C21 FLOAT(54), C22 DOUBLE PRECISION, C23 DATE, C24 TIME, C25
>>TIMESTAMP, C26 INTERVAL YEAR, C27 INTERVAL MONTH, C28 INTERVAL DAY, C29
>>INTERVAL HOUR, C30 INTERVAL MINUTE, C31 INTERVAL SECOND, C32 INTERVAL YEAR TO
>>MONTH, C33 INTERVAL DAY TO HOUR, C34 INTERVAL DAY TO MINUTE, C35 INTERVAL DAY
>>TO SECOND, C36 INTERVAL HOUR TO MINUTE, C37 INTERVAL HOUR TO SECOND, C38
>>INTERVAL MINUTE TO SECOND, C39 NUMERIC (19, 0) SIGNED, C40 NUMERIC (19, 0)
>>UNSIGNED, PRIMARY KEY ( C19 ) );
>>UPSERT INTO odbc_jp.tmp2 ( C01, C02, C03, C04, C05, C06, C07, C08, C09, C10,
>>C11, C12, C13, C14, C15, C16, C17, C18, C19, C20,
C21, C22, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36,
C37, C38, C39, C40 ) VALUES
('6','6','6','6','6', '6', '6', '6', 1, 6, 1, 1, 1, 1, 1, 1, 6, 6, 6,
6.0000000E+000, 6.00000000000000000E+000, 6.00000000000000000E+000,
date '2000-01-02', time '03:04:05' , timestamp '2000-01-02 03:04:05.000600',
interval '0' year, interval '1' month,
interval '2' day, interval '3' hour, interval '4' minute, interval '5.600000'
second, interval '0-01' year to month,
interval '2 03' day to hour, interval '2 03:04' day to minute, interval '2
03:04:05.600000' day to second,
interval '3:04' hour to minute, interval '3:04:05.600000' hour to second,
interval '4:05.600000' minute to second, 1234567890123456789,
1234567890123456789 );
Error message returned from rowset test:
>>> State: 22008
>>> Native Error: 0
>>> Message: [Trafodion ODBC Driver] DATETIME FIELD OVERFLOW. Incorrect Format
>>> or Data. Row: 1 Column: 22
retcodes rowsetRetcode=-1 expectedRowsetRetcode=0 >> Failing API:
SQLExecute/Direct(), expected: 0, actual: -1 at line= 3384
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>>> State: 22008
>>> Native Error: 0
>>> Message: [Trafodion ODBC Driver] DATETIME FIELD OVERFLOW. Incorrect Format
>>> or Data. Row: 1 Column: 22
>>> (The above error message was repeated 1 times.)
>>> The error messages from above were from SQLExecute/Direct() located at
>>> ../../../../src/rowsets/RowSets_ANSI/src/RowSets.cpp on line 3385
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
1 ERROR: Rowset status array row 1 was expected to have
SQL_PARAM_SUCCESS. Actual: SQL_PARAM_ERROR at line 3444.
Failing API: SQLRowCount()
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>>> State: S1010
>>> Native Error: 0
>>> Message: [Trafodion ODBC Driver Manager] FUNCTION SEQUENCE ERROR.
>>> (The above error message was repeated 1 times.)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)