cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nikita Timofeev (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CAY-2159) Problems with reverse engineering stored procedures with latest MySQL JDBC driver.
Date Mon, 05 Dec 2016 15:42:58 GMT
Nikita Timofeev created CAY-2159:
------------------------------------

             Summary: Problems with reverse engineering stored procedures with latest MySQL
JDBC driver.
                 Key: CAY-2159
                 URL: https://issues.apache.org/jira/browse/CAY-2159
             Project: Cayenne
          Issue Type: Bug
          Components: Modeler, Non-GUI Tools
    Affects Versions: 4.0.M4
         Environment: MySQL version: 5.7.16 (docker image)
JDBC driver: 6.0.5
            Reporter: Nikita Timofeev
            Priority: Minor


According to this https://dev.mysql.com/doc/connector-j/6.0/en/connector-j-properties-changed.html
default value of nullNamePatternMatchesAll parameter has changed to false.
This leads to the exception in Reverse Engineering when using latest JDBC MySQL connector.
This can be corrected by setting nullNamePatternMatchesAll=true in the connection URL.

May be we need to change null parameters to explicit wildcard "%". But this requires investigation
for other databases.

Stack trace for the thrown Exception:
INFO: Exception on reverse engineering
java.sql.SQLException: Procedure name pattern can not be NULL or empty.
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:545)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:513)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:505)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:479)
	at com.mysql.cj.jdbc.DatabaseMetaData.getProceduresAndOrFunctions(DatabaseMetaData.java:3411)
	at com.mysql.cj.jdbc.DatabaseMetaData.getProcedureOrFunctionColumns(DatabaseMetaData.java:3303)
	at com.mysql.cj.jdbc.DatabaseMetaData.getProcedureColumns(DatabaseMetaData.java:3240)
	at org.apache.cayenne.dbsync.reverse.db.DbLoader.loadProceduresColumns(DbLoader.java:416)
	at org.apache.cayenne.dbsync.reverse.db.DbLoader.loadProceduresColumns(DbLoader.java:408)
	at org.apache.cayenne.dbsync.reverse.db.DbLoader.loadProcedures(DbLoader.java:394)
	at org.apache.cayenne.dbsync.reverse.db.DbLoader.load(DbLoader.java:351)
	at org.apache.cayenne.tools.dbimport.DefaultDbImportAction.load(DefaultDbImportAction.java:432)
	at org.apache.cayenne.tools.dbimport.DefaultDbImportAction.execute(DefaultDbImportAction.java:161)
	at org.apache.cayenne.modeler.dialog.db.DbLoaderHelper$LoadDataMapTask.execute(DbLoaderHelper.java:373)
	at org.apache.cayenne.modeler.util.LongRunningTask.internalExecute(LongRunningTask.java:213)
	at org.apache.cayenne.modeler.util.LongRunningTask$1.run(LongRunningTask.java:101)
	at java.lang.Thread.run(Thread.java:745)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message