You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cayenne.apache.org by Maria Huber <hu...@gmx.de> on 2021/02/06 19:52:42 UTC
cdbimport for SQLite
Hey all,
this time my problem is related to the cdbimport feature (maven or modeller) in combination with SQLite.
SQLite does not support schema, so it's currently not possible to use the reverse engineering feature.
The error you get with Xerial-JDBC driver is:
[WARNING] Error loading db schema
Error loading db schema
java.sql.SQLFeatureNotSupportedException
at org.sqlite.jdbc4.JDBC4DatabaseMetaData.getSchemas (JDBC4DatabaseMetaData.java:32)
at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.processSchemas (DatabaseSchemaLoader.java:101)
at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.processCatalogs (DatabaseSchemaLoader.java:92)
at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.load (DatabaseSchemaLoader.java:58)
at org.apache.cayenne.modeler.action.LoadDbSchemaAction.loadDataBase (LoadDbSchemaAction.java:116)
at org.apache.cayenne.modeler.action.LoadDbSchemaAction.lambda$performAction$0 (LoadDbSchemaAction.java:96)
at java.lang.Thread.run (Thread.java:844)
or
[INFO] Exception on reverse engineering
java.sql.SQLFeatureNotSupportedException
at org.sqlite.jdbc4.JDBC4DatabaseMetaData.getSchemas (JDBC4DatabaseMetaData.java:32)
at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.processSchemas (FiltersConfigBuilder.java:117)
at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.processCatalogs (FiltersConfigBuilder.java:107)
at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.preBuildFilters (FiltersConfigBuilder.java:87)
getSchemas() throws this exception.
This error could be related to https://issues.apache.org/jira/browse/CAY-2600
Any idea how to use cdbimport without schema?
Kind regards,
Maria
Re: cdbimport for SQLite
Posted by Nikita Timofeev <nt...@objectstyle.com>.
Hi All,
SQLite should generally work. Moreover, we have a fix for this
particular issue [1], I just need some time to check it.
[1] https://github.com/apache/cayenne/pull/446
On Mon, Feb 8, 2021 at 10:18 AM Andrus Adamchik <an...@objectstyle.org> wrote:
>
> Hi Maria,
>
> CAY-2600 is a related, but separate issue. Here is the one that matches your problem: https://issues.apache.org/jira/browse/CAY-2695 <https://issues.apache.org/jira/browse/CAY-2695> . I just updated it with your description. I hope we can fix this specific problem as I mentioned in the Jira. But IIRC SQLite driver had deeper issues with DB metadata, so I suspect it may fail at some other step.
>
> @Nikita - do you remember what other limitations we had with SQLite? Or does it finally start to work?
>
> Andrus
>
>
>
> > On Feb 6, 2021, at 10:52 PM, Maria Huber <hu...@gmx.de> wrote:
> >
> > Hey all,
> > this time my problem is related to the cdbimport feature (maven or modeller) in combination with SQLite.
> > SQLite does not support schema, so it's currently not possible to use the reverse engineering feature.
> >
> > The error you get with Xerial-JDBC driver is:
> >
> > [WARNING] Error loading db schema
> > Error loading db schema
> >
> > java.sql.SQLFeatureNotSupportedException
> > at org.sqlite.jdbc4.JDBC4DatabaseMetaData.getSchemas (JDBC4DatabaseMetaData.java:32)
> > at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.processSchemas (DatabaseSchemaLoader.java:101)
> > at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.processCatalogs (DatabaseSchemaLoader.java:92)
> > at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.load (DatabaseSchemaLoader.java:58)
> > at org.apache.cayenne.modeler.action.LoadDbSchemaAction.loadDataBase (LoadDbSchemaAction.java:116)
> > at org.apache.cayenne.modeler.action.LoadDbSchemaAction.lambda$performAction$0 (LoadDbSchemaAction.java:96)
> > at java.lang.Thread.run (Thread.java:844)
> >
> > or
> >
> > [INFO] Exception on reverse engineering
> > java.sql.SQLFeatureNotSupportedException
> > at org.sqlite.jdbc4.JDBC4DatabaseMetaData.getSchemas (JDBC4DatabaseMetaData.java:32)
> > at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.processSchemas (FiltersConfigBuilder.java:117)
> > at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.processCatalogs (FiltersConfigBuilder.java:107)
> > at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.preBuildFilters (FiltersConfigBuilder.java:87)
> >
> > getSchemas() throws this exception.
> >
> > This error could be related to https://issues.apache.org/jira/browse/CAY-2600
> > Any idea how to use cdbimport without schema?
> >
> > Kind regards,
> > Maria
>
--
Best regards,
Nikita Timofeev
Re: cdbimport for SQLite
Posted by Andrus Adamchik <an...@objectstyle.org>.
Hi Maria,
CAY-2600 is a related, but separate issue. Here is the one that matches your problem: https://issues.apache.org/jira/browse/CAY-2695 <https://issues.apache.org/jira/browse/CAY-2695> . I just updated it with your description. I hope we can fix this specific problem as I mentioned in the Jira. But IIRC SQLite driver had deeper issues with DB metadata, so I suspect it may fail at some other step.
@Nikita - do you remember what other limitations we had with SQLite? Or does it finally start to work?
Andrus
> On Feb 6, 2021, at 10:52 PM, Maria Huber <hu...@gmx.de> wrote:
>
> Hey all,
> this time my problem is related to the cdbimport feature (maven or modeller) in combination with SQLite.
> SQLite does not support schema, so it's currently not possible to use the reverse engineering feature.
>
> The error you get with Xerial-JDBC driver is:
>
> [WARNING] Error loading db schema
> Error loading db schema
>
> java.sql.SQLFeatureNotSupportedException
> at org.sqlite.jdbc4.JDBC4DatabaseMetaData.getSchemas (JDBC4DatabaseMetaData.java:32)
> at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.processSchemas (DatabaseSchemaLoader.java:101)
> at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.processCatalogs (DatabaseSchemaLoader.java:92)
> at org.apache.cayenne.modeler.editor.dbimport.DatabaseSchemaLoader.load (DatabaseSchemaLoader.java:58)
> at org.apache.cayenne.modeler.action.LoadDbSchemaAction.loadDataBase (LoadDbSchemaAction.java:116)
> at org.apache.cayenne.modeler.action.LoadDbSchemaAction.lambda$performAction$0 (LoadDbSchemaAction.java:96)
> at java.lang.Thread.run (Thread.java:844)
>
> or
>
> [INFO] Exception on reverse engineering
> java.sql.SQLFeatureNotSupportedException
> at org.sqlite.jdbc4.JDBC4DatabaseMetaData.getSchemas (JDBC4DatabaseMetaData.java:32)
> at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.processSchemas (FiltersConfigBuilder.java:117)
> at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.processCatalogs (FiltersConfigBuilder.java:107)
> at org.apache.cayenne.dbsync.reverse.filters.FiltersConfigBuilder.preBuildFilters (FiltersConfigBuilder.java:87)
>
> getSchemas() throws this exception.
>
> This error could be related to https://issues.apache.org/jira/browse/CAY-2600
> Any idea how to use cdbimport without schema?
>
> Kind regards,
> Maria