changeset 760:f2f7039f93b1

Optimization: When number of resultcolumns is less than MAX_COLUMNS_PER_QUERY (which is 80) we can make a StringBuilder with a smaller initial capacity.
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Thu, 29 Jun 2023 16:07:56 +0200 (22 months ago)
parents 846a456f0f0c
children e1389c0ffb7c
files src/main/java/org/monetdb/jdbc/MonetResultSetMetaData.java
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/org/monetdb/jdbc/MonetResultSetMetaData.java
+++ b/src/main/java/org/monetdb/jdbc/MonetResultSetMetaData.java
@@ -875,7 +875,7 @@ final class MonetResultSetMetaData
 			// for debug: System.out.println("fetchManyColumnsInfo(" + column + ")" + (startcol != column ? " changed into startcol: " + startcol : "") + " nextUpperbound: " + nextUpperbound);
 		}
 
-		final StringBuilder query = new StringBuilder(410 + (MAX_COLUMNS_PER_QUERY * 150));
+		final StringBuilder query = new StringBuilder(410 + (java.lang.Math.min(MAX_COLUMNS_PER_QUERY, colCount) * 150));
 		/* next SQL query is a simplified version of query in MonetDatabaseMetaData.getColumns(), to fetch only the needed attributes of a column */
 		query.append("SELECT " +
 			"s.\"name\" AS schnm, " +