Bug in DatabaseLoader.getStructure()

Ulrich Mayring <[email protected]> Tue, 19 Dec 2023 18:57:15 +0100
Newsgroups gmane.comp.ai.weka
Message-ID <[email protected]>
This method throws an IOException when it is called with a query that 
contains a fully qualified table name.

Example: "select prop1,prop2 from schema.table"

This will lead to the private method endOfQuery returning "schema.table" 
as the table name. In line 977 of DatabaseLoader a call is then made to 
DatabaseUtils.tableExists and the table name is passed in. Within that 
method the JDBC driver's meta data is checked for a table name 
"schema.table", which obviously fails (code starting at line 901).

My suggestion would be to strip off the schema and the dot inside that 
method, because it deals with DatabaseMetaData.getTables(), which will 
never consider the schema. For all other purposes (such as reading the 
dataset) the query should remain as is.

I would have fixed it myself, but I haven't found an easy way to 
contribute bug fixes.

_______________________________________________
Wekalist mailing list -- [email protected]
Send posts to [email protected]
To unsubscribe send an email to [email protected]
To subscribe, unsubscribe, etc., visit https://list.waikato.ac.nz/postorius/lists/wekalist.list.waikato.ac.nz
List etiquette: http://www.cs.waikato.ac.nz/~ml/weka/mailinglist_etiquette.html