Mike Sauer created GROOVY-8128:
----------------------------------
Summary: Breaking change in 2.4.9 with Sql query with GString
Key: GROOVY-8128
URL: https://issues.apache.org/jira/browse/GROOVY-8128
Project: Groovy
Issue Type: Bug
Components: groovy-runtime
Affects Versions: 2.4.9
Environment: Windows 7
Reporter: Mike Sauer
Priority: Critical
The following code worked for releases 2.4.8 and below:
def query = """\
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED\r\n\
select u5f_documenttype from DocVersion dv left outer join ClassDefinition
cd on dv.object_class_id = cd.object_id
where cd.symbolic_name in ('Retail', 'RetailWeb') and dv.is_current = 1
and u59_accountnumber = $acctNum and u5f_documenttype = 'Signature Card'
"""
def docFound = 'No Doc'
consumerSql.eachRow(query) {
This code now fails in 2.4.9 and 2.4.10 with:
Mar 22, 2017 9:23:43 AM groovy.sql.Sql eachRow
WARNING: Failed to execute: SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
select u5f_documenttype from DocVersion dv left outer join ClassDefinition
cd on dv.object_class_id = cd.object_id
where cd.symbolic_name in ('Retail', 'RetailWeb') and dv.is_current = 1
and u59_accountnumber = ? and u5f_documenttype = 'Signature Card'
because: com.microsoft.sqlserver.jdbc.SQLServerException: Unable to
identify the table SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
select u5f_documenttype from DocVersion dv left outer join ClassDefinition
cd on dv.object_class_id = cd.object_id
where cd.symbolic_name in ('Retail', 'RetailWeb') and dv.is_current = 1
and u59_accountnumber = ? and u5f_documenttype = 'Signature Card'
for the metadata.
I have tried changing to using placeholders and name parameters and I get
similar results.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)