You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Nikita Timofeev (JIRA)" <ji...@apache.org> on 2016/12/13 13:35:58 UTC
[jira] [Updated] (CAY-2159) Problems with reverse engineering
stored procedures with latest MySQL JDBC driver.
[ https://issues.apache.org/jira/browse/CAY-2159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikita Timofeev updated CAY-2159:
---------------------------------
Issue Type: Sub-task (was: Bug)
Parent: CAY-2167
> 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: Sub-task
> 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)