apache / jmeter

Apache JMeter open-source load testing tool for analyzing and measuring the performance of a variety of services
https://jmeter.apache.org/
Apache License 2.0
8.11k stars 2.06k forks source link

JDBC sample does not allow empty string(s) in prepare-SELECT statement - java-exception #2197

Closed asfimport closed 15 years ago

asfimport commented 15 years ago

Yaroslav (Bug 46651): Here is my prepare SELECT statement:

[Prepared Select Statement] SELECT ('EmailAddress=' + CAST(EmailAddress AS VARCHAR)) as a1 from StoreShop.Trainers WHERE EmailAddress=?+'@'+?

with: Parameter values: ${ID},${EMAIL-GROUP} Parameter types: VARCHAR,VARCHAR

Here is a bulk of data and how JDBC sample is responding for them:

1) {"",""}(two empty strings - not null) AR: the sample is failing: Response message: java.sql.SQLException: number of arguments (0) and number of types (2) are not equal ER: Response data: {"a1"} - data are not found but "a1" is a column name - not java-exception error;

2) {"aaa6",""} - the second parameter is empty string AR: the sample is failing: Response message: java.sql.SQLException: number of arguments (1) and number of types (2) are not equal ER: Response data: {"a1"} - data are not found but "a1" is a column name - not java-exception error;

3) {"","bluerealm.com"} - the first parameter is empty string AR: Response data: {"a1"} as expected - data not found but "a1" in a column name;

So, JDBC sample is working inconsistency in three similar cases.

My expectation is that in the cases #1&#2 test-results are same as in the #3.

Severity: normal OS: Windows XP

Duplicated by:

asfimport commented 15 years ago

Sebb (migrated from Bugzilla): Same routine is used to parse the parameters as in CSV Dataset when quoted strings are allowed, thus the last parameter(s) are dropped.

This bug has been marked as a duplicate of https://github.com/apache/jmeter/issues/2189