GitHub user DaveBirdsall opened a pull request:
https://github.com/apache/trafodion/pull/1572
[TRAFODION-3071] Add missing binder checks for DATEDIFF etc. + other fixes
This pull request fixes several problems. Items 2 through 4 were noticed
while researching a fix for item 1; I fixed them since I was in the
neighborhood.
1. Some of the datetime-related functions (DATEDIFF, TIMESTAMPDIFF,
DATE_TRUNC, MONTHS_BETWEEN) lacked binder checks to enforce DATE or TIMESTAMP
data type on certain operands. This has been fixed. This is the problem
reported in the JIRA.
2. Awhile back functions CRC32, MD5, SHA, SHA1 and SHA2 were added, but
they were not added to the suitable non-reserved word production in the parser.
So, in effect these identifiers became reserved words. This has been fixed.
3. The ROUND function did not accept a dynamic parameter as an argument for
its first operand. This has been fixed.
4. Test compGeneral/TEST006 had an out-of-date DIFF006 file. This file
looks like it dates back to predecessor product days. I have deleted it.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/DaveBirdsall/trafodion Trafodion3071
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/trafodion/pull/1572.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 #1572
----
commit 9c5080c81b28f336e08dd685bd73607847251234
Author: Dave Birdsall <dbirdsall@...>
Date: 2018-05-22T16:56:18Z
[TRAFODION-3071] Add missing binder checks for DATEDIFF etc. + other fixes
----
---