Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JDBC connection using jdbcclient.jar is very slow #3711

Closed
monetdb-team opened this issue Nov 30, 2020 · 0 comments
Closed

JDBC connection using jdbcclient.jar is very slow #3711

monetdb-team opened this issue Nov 30, 2020 · 0 comments

Comments

@monetdb-team
Copy link

@monetdb-team monetdb-team commented Nov 30, 2020

Date: 2015-04-22 14:23:26 +0200
From: @skinkie
To: clients devs <>
Version: 11.21.19 (Jul2015-SP4)
CC: martin.van.dinther

Last updated: 2016-06-23 10:24:12 +0200

Comment 20827

Date: 2015-04-22 14:23:26 +0200
From: @skinkie

User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36
Build Identifier:

For some reason sending a query such as select * from tables limit 1; takes about 30s. I have attached a pcap file.

Reproducible: Always

MonetDB 5 server v11.19.8 (64-bit, 64-bit oids)
This is an unreleased version
Copyright (c) 1993-July 2008 CWI
Copyright (c) August 2008-2014 MonetDB B.V., all rights reserved
Visit http://www.monetdb.org/ for further information
Found 31.4GiB available memory, 8 available cpu cores
Libraries:
libpcre: 8.33 2013-05-28 (compiled with 8.33)
openssl: OpenSSL 1.0.1h 5 Jun 2014 (compiled with OpenSSL 1.0.1h 5 Jun 2014)
libxml2: 2.9.1 (compiled with 2.9.1)
Compiled by: skinkie@bigdata.openebs.nl (x86_64-unknown-linux-gnu)
Compilation: gcc -g -Werror -Wall -Wextra -W -Werror-implicit-function-declaration -Wpointer-arith -Wdeclaration-after-statement -Wundef -Wformat=2 -Wno-format-nonliteral -Winit-self -Winvalid-pch -Wmissing-declarations -Wmissing-format-attribute -Wmissing-prototypes -Wold-style-definition -Wpacked -Wunknown-pragmas -Wvariadic-macros -fstack-protector-all -Wstack-protector -Wpacked-bitfield-compat -Wsync-nand -Wjump-misses-init -Wmissing-include-dirs -Wlogical-op -Wunreachable-code
Linking : /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64

Comment 20828

Date: 2015-04-22 14:25:40 +0200
From: @skinkie

Created attachment 333
JDBC Pcap output.

Attached file: jdbc.pcap (application/octet-stream, 56150 bytes)
Description: JDBC Pcap output.

Comment 22138

Date: 2016-05-12 16:50:45 +0200
From: Martin van Dinther <<martin.van.dinther>>

Hi Stefan,

Analysing the jdbc.pcap file it shows that for each entered SQL query it also sends an SQL catalog query for each of the query result columns, so in the case of: select * from tables limit 1;
it also sends 9 additional queries to the server. This explains why it takes considerable more time (than for instance mclient) before it shows the query result data in the console.

I have analysed where and why this is done and implemented a fix.
The fix eliminates the need to send the additional SQL catalog queries, so the response should be much better in the next release of JdbcClient.

Comment 22139

Date: 2016-05-12 16:53:08 +0200
From: MonetDB Mercurial Repository <>

Changeset e6a60eeea1cc made by Martin van Dinther martin.van.dinther@monetdbsolutions.com in the MonetDB repo, refers to this bug.

For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=e6a60eeea1cc

Changeset description:

Improved JdbcClient program when presenting query data to console.
It used to send an SQL catalog query for each query result column
which slowed down the interactive response considerably.
These additonal SQL catalog queries have been eliminated.
This fixes Bug #3711
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant