The patch seems good. Here are my test results:
Typical query time after JVM warm-up
h2 1.3.176 - 716 ms
h2 1.4.185 (but not using MV_STORE) - 350 ms
h2 1.4.185 (but not using MV_STORE) with patch - 243 ms
Regards,
Steve
On Tuesday, 10 February 2015 23:36:34 UTC+6:30, Thomas Mueller wrote:
>
Hi,
I have committed my patch, could you please test it? You would need to
compile H2 from the trunk, see
https://code.google.com/p/support/source/checkout
Regards,
Thomas
On Tue, Feb 10, 2015 at 7:45 AM, Thomas Mueller <
thomas.tom.muel...@gmail.com> wrote:
> Hi,
>
> It might make sense to us
Hi,
It might make sense to use a concurrent and global cache in the StringUtils
class instead, similar to StringUtils.softCache
(StringUtils.fromCacheOrNew). That way, other components could benefit from
it as well, and small result sets would also benefit.
I will write a patch.
Regards,
Thomas
Hi Thomas and Noel,
I've created a patch that caches the results of toUpperEnglish on a per
JdbcResultSet basis. In my specific use case (fetching 95 columns by column
name over tens of thousands of rows), the query speed-up was extremely
significant, and utterly repeatable. Before: 510 millise
Hi Noel,
On Monday, 9 February 2015 19:14:32 UTC+6:30, Noel Grandin wrote:
>
> Hi
>
>
> On 2015-02-09 02:21 PM, Steve McLeod wrote:
> > final ResultSet resultSet = conn.prepareStatement("SELECT *
> FROM foobar").executeQuery();
> > int rowCount = 0;
> > while (res
Hi
On 2015-02-09 02:21 PM, Steve McLeod wrote:
final ResultSet resultSet = conn.prepareStatement("SELECT * FROM
foobar").executeQuery();
int rowCount = 0;
while (resultSet.next()) {
rowCount++;
final int columnCount = resultSet.getMetaData()
Hi all,
I've got some H2 code that executes a query that returns possibly 100,000+
rows and 95 columns. I need to retrieve every column value by name, using
JDBC. Using H2's built-in profiling tool, StringUtils.toUpperEnglish seems
to be a bottleneck. It seems that JdbcResultSet.getColumnIndex(