You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (JIRA)" <ji...@apache.org> on 2017/03/23 07:08:41 UTC
[jira] [Updated] (GROOVY-8128) Breaking change in 2.4.9 with Sql
query with GString
[ https://issues.apache.org/jira/browse/GROOVY-8128?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King updated GROOVY-8128:
------------------------------
Description:
The following code worked for releases 2.4.8 and below:
{code}
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) {
{code}
This code now fails in 2.4.9 and 2.4.10 with:
{noformat}
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.
{noformat}
I have tried changing to using placeholders and name parameters and I get similar results.
was:
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.
> 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:
> {code}
> 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) {
> {code}
> This code now fails in 2.4.9 and 2.4.10 with:
> {noformat}
> 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.
> {noformat}
> 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)