Regarding the failure connecting with mysql JDBC driver. 

I looked up the failing statement in the driver's source code. (http://dev.mysql.com/downloads/file.php?id=454397, the distribution includes source.)

The query that is failing during the connection is "SHOW VARIABLES"

We are using the driver from http://dev.mysql.com/downloads/file.php?id=454397 (The download file has the source)
 
           String query = versionComment + "SHOW VARIABLES";

            if (versionMeetsMinimum(5, 0, 3)) {
                query = versionComment + "SHOW VARIABLES WHERE Variable_name ='language' OR Variable_name = 'net_write_timeout'"
                        + " OR Variable_name = 'interactive_timeout' OR Variable_name = 'wait_timeout' OR Variable_name = 'character_set_client'"
                        + " OR Variable_name = 'character_set_connection' OR Variable_name = 'character_set' OR Variable_name = 'character_set_server'"
                        + " OR Variable_name = 'tx_isolation' OR Variable_name = 'transaction_isolation' OR Variable_name = 'character_set_results'"
                        + " OR Variable_name = 'timezone' OR Variable_name = 'time_zone' OR Variable_name = 'system_time_zone'"
                        + " OR Variable_name = 'lower_case_table_names' OR Variable_name = 'max_allowed_packet' OR Variable_name = 'net_buffer_length'"
                        + " OR Variable_name = 'sql_mode' OR Variable_name = 'query_cache_type' OR Variable_name = 'query_cache_size'"
                        + " OR Variable_name = 'license' OR Variable_name = 'init_connect'";
            }

            this.serverVariables = new HashMap<String, String>();

            try {
                results = stmt.executeQuery(query);
                ...

The last line is com.mysql.jdbc.ConnectionImpl.loadServerVariables(ConnectionImpl.java:3828) from the stack trace below:

java.sql.SQLException: Qserv error: 'ParseException:ANTLR parse error:unexpected token: /:'
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:996)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3887)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3823)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2435)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2582)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2526)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2484)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1446)
at com.mysql.jdbc.ConnectionImpl.loadServerVariables(ConnectionImpl.java:3828)
at com.mysql.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:3268)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2278)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2064)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:790)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:395)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at JDBCExample.main(JDBCExample.java:24)

On Nov 11, 2014, at 6:30 PM, John Rector <[log in to unmask]> wrote:



Begin forwarded message:

I am including John Rector, who did set up the QSERV for us. He has more details.

Dear Jacek,

When connecting  with Java JDBC to the qserv db at IPAC-LSST, I'm getting the following error message:

java.sql.SQLException: Qserv error: 'ParseException:ANTLR parse error:unexpected token: /:'
 
The full error message file is here:

<errorMessage.txt>

The Java program that attempts to make the connection is here:

<JDBCExample.java>

The simple build script that compiles and runs the program is here. It explicitly names the connector jar file it's using. 
(Note: change the directory paths in the script to reflect your environment.)


<JDBCExample.sh>

I changed the connection parameters in the program to reference one of our mysql databases and it ran correctly.
______________________________
John Rector
IPAC, California Institute of Technology
MS 100-22
770 S. Wilson Ave.
Pasadena, CA 91125
USA
Tel: (626) 395—8577









Use REPLY-ALL to reply to list

To unsubscribe from the QSERV-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=QSERV-L&A=1