GitHub user anoopsharma00 opened a pull request:
https://github.com/apache/trafodion/pull/1502
various fixes, details in pull request
-- JIRA 2980 support for INSTR function.
INSTR(source_string, pattern, startPos, occurrence)
Search for pattern in source_string.
Start at startPos'th character. Optional, default 1
Return occurrence'th occurrence. Optional, default 1
(exp/exp_function.cpp/h, exp/ExpPCodeClauseGen.cpp,
generator/GenItemFunc.cpp, optimizer/BindItemExpr.cpp, ItemExpr.cpp,
optimizer/ItemFunc.h, SynthType.cpp, parser/sqlparser.y)
-- hivemd returns precision, scale, display_datatype
(comexe/ComTdbExeUtil.h, common/BaseTypes.cpp,NAType.cpp/h,
executor/ExExeUtilGet.cpp, ExExeUtil.h)
-- hive decimal type is treated as sql NUMERIC for performance.
(common/NAType.cpp)
-- hive select from hivemd with prepare and multiple executes work
(executor/ExExeUtilGet.cpp)
-- fix for crash in sql buffer pool when allocating large size rows.
(executor/sql_buffer.cpp)
-- SIGN(op) now returns error if op is not numeric
(BindItemExpr.cpp)
-- strings of length zero are no longer cached. Caching them causes problem
during backpatching.
(optimizer/ItemCache.cpp)
--- compile time predicates on constants were not being created correctly
in some cases. That has been fixed.
(ValueDesc.cpp)
-- trim now supported on scaled numeric, float and bignum datatypes
(BindItemExpr.cpp)
-- CASE is now supported on scaled numerics, float, bignum
(BindItemExpr.cpp)
-- char_length is now supported on numerics
(ItemFunc.h, BindItemExpr.cpp)
-- DAYOFMONTH now allowed only on datetime datatypes
(common/OperTypeEnum.h, sqlparser.y, BindItemExpr.cpp, ItemExpr.cpp)
-- TO_TIME now allowed only on 'datetime with time' or character datatypes.
(BindItemExpr.cpp, bin/SqlciErrors.txt)
-- updated expected file for compGeneral/test042
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/anoopsharma00/trafodion
ansharma_trafixes_deliver2_br
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/trafodion/pull/1502.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1502
----
commit 43984c46cc9ea2cfc0e816080e93e0dc7e61369a
Author: Anoop Sharma <anoop.sharma@...>
Date: 2018-04-02T16:40:16Z
various fixes
-- JIRA 2980 support for INSTR function.
INSTR(source_string, pattern, startPos, occurrence)
Search for pattern in source_string.
Start at startPos'th character. Optional, default 1
Return occurrence'th occurrence. Optional, default 1
(exp/exp_function.cpp/h, exp/ExpPCodeClauseGen.cpp,
generator/GenItemFunc.cpp, optimizer/BindItemExpr.cpp, ItemExpr.cpp,
optimizer/ItemFunc.h, SynthType.cpp, parser/sqlparser.y)
-- hivemd returns precision, scale, display_datatype
(comexe/ComTdbExeUtil.h, common/BaseTypes.cpp,NAType.cpp/h,
executor/ExExeUtilGet.cpp, ExExeUtil.h)
-- hive decimal type is treated as sql NUMERIC for performance.
(common/NAType.cpp)
-- hive select from hivemd with prepare and multiple executes work
(executor/ExExeUtilGet.cpp)
-- fix for crash in sql buffer pool when allocating large size rows.
(executor/sql_buffer.cpp)
-- SIGN(op) now returns error if op is not numeric
(BindItemExpr.cpp)
-- strings of length zero are no longer cached. Caching them causes problem
during backpatching.
(optimizer/ItemCache.cpp)
--- compile time predicates on constants were not being created correctly
in some cases. That has been fixed.
(ValueDesc.cpp)
-- trim now supported on scaled numeric, float and bignum datatypes
(BindItemExpr.cpp)
-- CASE is now supported on scaled numerics, float, bignum
(BindItemExpr.cpp)
-- char_length is now supported on numerics
(ItemFunc.h, BindItemExpr.cpp)
-- DAYOFMONTH now allowed only on datetime datatypes
(common/OperTypeEnum.h, sqlparser.y, BindItemExpr.cpp, ItemExpr.cpp)
-- TO_TIME now allowed only on 'datetime with time' or character datatypes.
(BindItemExpr.cpp, bin/SqlciErrors.txt)
-- updated expected file for compGeneral/test042
----
---