Paul Foxworthy created OFBIZ-7129:
-------------------------------------
Summary: Recognise "BASE TABLE" table type in metadata
Key: OFBIZ-7129
URL: https://issues.apache.org/jira/browse/OFBIZ-7129
Project: OFBiz
Issue Type: Bug
Components: framework
Affects Versions: Trunk
Reporter: Paul Foxworthy
Assignee: Paul Foxworthy
In framework/entity/src/org/ofbiz/entity/jdbc/DatabaseUtil.java, the
getTableNames method looks for table types of "TABLE", "VIEW", "ALIAS" and
"SYNONYM".
MariaDB produces a table type of "BASE TABLE", so OFBiz didn't detect the
tables were there, and attempted to create them. In fact, the tables do exist
so the create failed.
The JDBC docs suggest that plain "TABLE" is a "typical" value for table type
(https://docs.oracle.com/javase/8/docs/api/java/sql/DatabaseMetaData.html#getTables-java.lang.String-java.lang.String-java.lang.String-java.lang.String:A-)
But it seems "BASE TABLE" is more standards compliant - see for example
http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt page 576. I assume
some JDBC drivers transform "BASE TABLE" to plain "TABLE", but the MariaDB one
does not.
I've attached a patch so OFBiz will recognise "BASE TABLE" if that's what it
receives in the metadata.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)