Max, hi.
I’d like to discuss JBIDE-2173 &
JBIDE-2162.
From our JBIDE-2162 discussion:
“I try debug
DatabaseMetaData code and seems I find the reason. The main problem here - for
each table extracted all foreing keys for all tables:”
This is of course JBIDE-2173 and it seems
here are the problems only with MySQL – I have check Postrgre and got
better performance (Postrgre has no problems with performance).
Also I try to study the problem to find
common workaround for it – and seems it exist!
Now to get foreing keys we are using
getMetaDataDialect().getExportedKeys
but it possible to use
getMetaDataDialect().getImportedKeys
and we will get much better performance
– I have check it – it possible and we will get performance O(n)
instead of O(n^2) for MySQL.
Seems this have a sense, isn’t it?
About JDBCReader – when I try to
modify it I saw some potential problem here –
This is code to add table into dbs:
Table table =
dbs.addTable(quote(getSchemaForModel(schemaName)),
getCatalogForModel(catalogName), quote(tableName));
This is code to get table from dbs:
dbs.getTable(schemaName, catalogName,
tableName)
obvious that here will be a problem with
quotes…
I think the better way incorporate quotes
process into DatabaseCollector.
Best regards,
Vitali