jmeter icon indicating copy to clipboard operation
jmeter copied to clipboard

Undesirable change to JDBC Sampler behaviour in 5.6.3

Open rondunn opened this issue 1 year ago • 2 comments

Expected behavior

The following commit has introduced an undesirable change to the JDBC sampler.

https://github.com/apache/jmeter/commit/945281cfaa6cca782f0e11f151eb22497d545713

Prior to this change, the "Limit Resultset" value would only apply when reading the result set, reading would stop after 'n' rows.

Now, by this change, the sampler calls SetMaxRows() to the limit value. This can then be used by the JDBC client and server to optimise the query, such as by pushing a LIMIT clause into the query plan which can terminate server processing before all results have been generated.

I believe this behaviour should be rolled back, as it invalidates a common requirement of database performance testing.

Actual behavior

No response

Steps to reproduce the problem

https://github.com/apache/jmeter/commit/945281cfaa6cca782f0e11f151eb22497d545713

JMeter Version

5.6.3

Java Version

No response

OS Version

No response

rondunn avatar Sep 17 '24 03:09 rondunn

It might indeed make sense to split the property in two: "max rows" limit at JDBC level and "number of fetched rows" at the client level.

vlsi avatar Sep 19 '24 09:09 vlsi

That is an excellent suggestion.

rondunn avatar Sep 19 '24 10:09 rondunn