Hi Benjamin, Previously, pax-jdbc-derby feature also needed pax-jdbc feature.
I directly installed the derby bundle, it uses dynamic import, that's why it works with pax-jdbc-spec IMHO (with the package with DataSourceFactory is there). So, I'm not sure to see your point: in previous version, you also need pax-jdbc to get the adapter working. What are you suggesting ? Regards JB On 04/02/2019 21:08, Benjamin Graf wrote: > Hu JB, > > Just to summarize: > > Karaf jdbc installs pax-jdbc and pax-jdbc-config sub features. pax-jdbc > is needed to get a DataSourceFactory instance for Driver only > installations like Derby. Derby does not register a DataSourceFactory > directly. But if you do not install jdbc and/or pax-jdbc you won't get > the DataSourceFactory for Derby anymore. That IMHO is a break to > previous versions using the pax-jdbc-derby adaptor. > > Regards > > Benjamin > > Am 04.02.2019 um 21:03 schrieb Jean-Baptiste Onofré: >> pax-jdbc installs the pax-jdbc-spec bundle, that's why. >> >> Regards >> JB >> >> On 04/02/2019 20:59, Benjamin Graf wrote: >>> This way pax-jdbc-derby also need pax-jdbc feature to get installed! >>> >>> Am 04.02.2019 um 20:57 schrieb Benjamin Graf: >>>> Hi JB, >>>> >>>> I install pax-jdbc-config and pax-jdbc-derby. After installing pax-jdbc >>>> I got the derby DataSourceFactory. IMHO pax-jdbc is not mandatory to >>>> install and pooling seems to not work either. >>>> >>>> Regards >>>> >>>> Benjamin >>>> >>>> Am 04.02.2019 um 20:44 schrieb Jean-Baptiste Onofré: >>>>> By the way, Karaf example itest (jdbc example) use Derby without problem. >>>>> >>>>> Regards >>>>> JB >>>>> >>>>> On 04/02/2019 20:23, Benjamin Graf wrote: >>>>>> Hi JB, >>>>>> >>>>>> if I install pax-jdbc-derby on a fresh Karaf 4.2.3-SNAPSHOT I do not get >>>>>> a DataSourceFactory registered. I also do not found any code in derby >>>>>> sources that does anything about that if do not install pax-jdbc to get >>>>>> the Driver instrumented. >>>>>> >>>>>> Regards >>>>>> >>>>>> Benjamin >>>>>> >>>>>> Am 04.02.2019 um 16:30 schrieb Jean-Baptiste Onofré: >>>>>>> FYI: I did Pax JDBC 1.3.3 release yesterday, and Karaf 4.2.3-SNAPSHOT is >>>>>>> already updated. So it will be included in 4.2.3 release that will be on >>>>>>> vote tonight. >>>>>>> >>>>>>> Regards >>>>>>> JB >>>>>>> >>>>>>> On 04/02/2019 16:27, Alex Soto wrote: >>>>>>>> Thank you all, >>>>>>>> >>>>>>>> The workaround worked, i.e., removed feature /pax-jdbc-derby / and >>>>>>>> adding only the derby feature. >>>>>>>> >>>>>>>> >>>>>>>> Best regards, >>>>>>>> Alex soto >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> On Feb 2, 2019, at 1:48 AM, Jean-Baptiste Onofré <j...@nanthrax.net >>>>>>>>> <mailto:j...@nanthrax.net>> wrote: >>>>>>>>> >>>>>>>>> That's what I'm testing: still keeping pax-jdbc-derby feature but just >>>>>>>>> installing the derby bundle (not the pax-jdbc wrapper bundle). >>>>>>>>> >>>>>>>>> Regards >>>>>>>>> JB >>>>>>>>> >>>>>>>>> On 02/02/2019 07:35, Christian Schneider wrote: >>>>>>>>>> If derby now provides a DataSourceFactory then we should remove >>>>>>>>>> pax-jdbc-derby from the feature. >>>>>>>>>> >>>>>>>>>> I guess at some point derby started providing the DSF and we just >>>>>>>>>> forgot >>>>>>>>>> to remove the adapter bundle. >>>>>>>>>> >>>>>>>>>> Christian >>>>>>>>>> >>>>>>>>>> Am Sa., 2. Feb. 2019 um 07:19 Uhr schrieb Jean-Baptiste Onofré >>>>>>>>>> <j...@nanthrax.net <mailto:j...@nanthrax.net> >>>>>>>>>> <mailto:j...@nanthrax.net>>: >>>>>>>>>> >>>>>>>>>> By the way, a simple workaround is to stop or even remove the >>>>>>>>>> pax-jdbc-derby bundle, and use only the derby bundle (or the >>>>>>>>>> opposite). >>>>>>>>>> >>>>>>>>>> Regards >>>>>>>>>> JB >>>>>>>>>> >>>>>>>>>> On 02/02/2019 06:55, Jean-Baptiste Onofré wrote: >>>>>>>>>>> OK, I think I found the problem: installing the pax-jdbc-derby >>>>>>>>>>> feature >>>>>>>>>>> actually registers two DataSourceFactory services: >>>>>>>>>>> >>>>>>>>>>> 1. a DataSourceFactory service coming from pax-jdbc-derby bundle >>>>>>>>>> (which >>>>>>>>>>> is normal) (org.apache.derby.jdbc.EmbeddedDriver) >>>>>>>>>>> 2. a DataSourceFactory service coming from directly Derby bundle >>>>>>>>>>> (org.apache.derby.jdbc.AutoloadedDriver). >>>>>>>>>>> >>>>>>>>>>> Both using the same derby value for osgi.jdbc.driver.name >>>>>>>>>> <http://osgi.jdbc.driver.name> service property. >>>>>>>>>>> So pax-jdbc-config sees two factory and so it creates one >>>>>>>>>> datasource per >>>>>>>>>>> factory. >>>>>>>>>>> >>>>>>>>>>> That's why it's only when you use derby and actually, the two >>>>>>>>>> datasource >>>>>>>>>>> services come from the two factories. >>>>>>>>>>> >>>>>>>>>>> I'm fixing that. >>>>>>>>>>> >>>>>>>>>>> Regards >>>>>>>>>>> JB >>>>>>>>>>> >>>>>>>>>>> On 01/02/2019 19:10, Alex Soto wrote: >>>>>>>>>>>> Oh, thanks! >>>>>>>>>>>> >>>>>>>>>>>> Can you suggest a work around? >>>>>>>>>>>> What s the ETA for a fix? >>>>>>>>>>>> I have a release deadline looming and I am afraid I can't wait >>>>>>>>>> too long. >>>>>>>>>>>> Thank you for the prompt response. >>>>>>>>>>>> >>>>>>>>>>>> Best regards, >>>>>>>>>>>> Alex soto >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> On Feb 1, 2019, at 1:05 PM, Jean-Baptiste Onofré >>>>>>>>>> <j...@nanthrax.net <mailto:j...@nanthrax.net> >>>>>>>>>> <mailto:j...@nanthrax.net> >>>>>>>>>>>>> <mailto:j...@nanthrax.net <mailto:j...@nanthrax.net>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Indeed, I can reproduce the issue embedded: >>>>>>>>>>>>> >>>>>>>>>>>>> Name │ Service Id │ Product │ Version │ URL >>>>>>>>>>>>> │ Status >>>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ────────┼────────────┼──────────────┼───────────────────────┼───────────────────────────────┼─────── >>>>>>>>>>>>> querier │ 91 │ Apache Derby │ 10.13.1.1 - (1765088) │ >>>>>>>>>>>>> jdbc:derby:derby-data/querier │ OK >>>>>>>>>>>>> querier │ 92 │ Apache Derby │ 10.13.1.1 - (1765088) │ >>>>>>>>>>>>> jdbc:derby:derby-data/querier │ OK >>>>>>>>>>>>> >>>>>>>>>>>>> I will fix that. >>>>>>>>>>>>> >>>>>>>>>>>>> Regards >>>>>>>>>>>>> JB >>>>>>>>>>>>> >>>>>>>>>>>>> On 01/02/2019 19:01, Alex Soto wrote: >>>>>>>>>>>>>>> How to do you provision the datasource cfg file ? >>>>>>>>>>>>>>> Using a feature or by dropping the file in the etc folder ? >>>>>>>>>>>>>> Dropping file in the etc/ directory >>>>>>>>>>>>>> >>>>>>>>>>>>>> Best regards, >>>>>>>>>>>>>> Alex soto >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Feb 1, 2019, at 12:57 PM, Jean-Baptiste Onofré >>>>>>>>>> <j...@nanthrax.net <mailto:j...@nanthrax.net> >>>>>>>>>> <mailto:j...@nanthrax.net> >>>>>>>>>>>>>>> <mailto:j...@nanthrax.net <mailto:j...@nanthrax.net>> >>>>>>>>>>>>>>> <mailto:j...@nanthrax.net <mailto:j...@nanthrax.net>>> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I just did a blog where I'm using a derby datasource (on Karaf >>>>>>>>>>>>>>> 4.2.3-SNAPSHOT): http://blog.nanthrax.net/?p=874 >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> If you install an unique provider (only derby or derbyclient, >>>>>>>>>> but not >>>>>>>>>>>>>>> both), then, it should work. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I did: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> feature:install pax-jdbc-derbyclient >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> then: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> jdbc:ds-create -dn derbyclient -url >>>>>>>>>> jdbc:derby://localhost:1527/foo foo >>>>>>>>>>>>>>> And I see only one datasource service: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> karaf@root()> jdbc:ds-list >>>>>>>>>>>>>>> Name │ Service Id │ Product │ Version >>>>>>>>>> │ URL >>>>>>>>>>>>>>> │ Status >>>>>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ────┼────────────┼──────────────┼───────────────────────┼───────────────────────────────────────┼─────── >>>>>>>>>>>>>>> foo │ 91 │ Apache Derby │ 10.14.2.0 - (1828579) │ >>>>>>>>>>>>>>> jdbc:derby://localhost:1527/scheduler │ OK >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> In your case, it seems that pax-jdbc-config is in cause, like it >>>>>>>>>>>>>>> bootstrap two db. How to do you provision the datasource cfg >>>>>>>>>> file ? >>>>>>>>>>>>>>> Using a feature or by dropping the file in the etc folder ? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I will check when my build is complete. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Regards >>>>>>>>>>>>>>> JB >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On 01/02/2019 18:48, Alex Soto wrote: >>>>>>>>>>>>>>>> Hello, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I am experiencing a problem where /pax-jdbc-config/ (version >>>>>>>>>> 1.3.0) is >>>>>>>>>>>>>>>> creating duplicate Derby Data Sources. I copy the data source >>>>>>>>>>>>>>>> configuration file to Karaf's /etc/ /directory, after a while >>>>>>>>>>>>>>>> I >>>>>>>>>>>>>>>> can see >>>>>>>>>>>>>>>> it created two identical Data Sources. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> The configuration file: /org.ops4j.datasource-querier.cfg/ >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> osgi.jdbc.driver.name <http://osgi.jdbc.driver.name> = derby >>>>>>>>>>>>>>>> dataSourceName=querier >>>>>>>>>>>>>>>> url=jdbc:derby:derby-data/querier;create=true >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> user=enquery >>>>>>>>>>>>>>>> password=XXXX >>>>>>>>>>>>>>>> databaseName=querier >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> ops4j.preHook=querierDB >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> It creates duplicate Data Sources: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> karaf@root()> service:list DataSource >>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> [javax.sql.DataSource] >>>>>>>>>>>>>>>> ---------------------- >>>>>>>>>>>>>>>> databaseName = querier >>>>>>>>>>>>>>>> dataSourceName = querier >>>>>>>>>>>>>>>> felix.fileinstall.filename = >>>>>>>>>>>>>>>> file:/Users/asoto/test/etc/org.ops4j.datasource-querier.cfg >>>>>>>>>>>>>>>> ops4j.preHook = querierDB >>>>>>>>>>>>>>>> osgi.jdbc.driver.name <http://osgi.jdbc.driver.name> = >>>>>>>>>>>>>>>> derby >>>>>>>>>>>>>>>> osgi.jndi.service.name <http://osgi.jndi.service.name> = >>>>>>>>>> querier >>>>>>>>>>>>>>>> password = enquery >>>>>>>>>>>>>>>> pax.jdbc.managed = true >>>>>>>>>>>>>>>> service.bundleid = 169 >>>>>>>>>>>>>>>> service.factoryPid = org.ops4j.datasource >>>>>>>>>>>>>>>> service.id <http://service.id> <http://service.id> >>>>>>>>>>>>>>>> <http://service.id/> <http://service.id/> <http://service.id >>>>>>>>>>>>>>>> <http://service.id/> >>>>>>>>>>>>>>>> <http://service.id/>> = 238 >>>>>>>>>>>>>>>> service.pid = >>>>>>>>>>>>>>>> org.ops4j.datasource.b161e768-e5f8-40bb-b19f-40cab9111316 >>>>>>>>>>>>>>>> service.scope = singleton >>>>>>>>>>>>>>>> url = jdbc:derby:derby-data/querier;create=true >>>>>>>>>>>>>>>> user = enquery >>>>>>>>>>>>>>>> Provided by : >>>>>>>>>>>>>>>> OPS4J Pax JDBC Config (169) >>>>>>>>>>>>>>>> Used by: >>>>>>>>>>>>>>>> JPA (22) >>>>>>>>>>>>>>>> [javax.sql.DataSource] >>>>>>>>>>>>>>>> ---------------------- >>>>>>>>>>>>>>>> databaseName = querier >>>>>>>>>>>>>>>> dataSourceName = querier >>>>>>>>>>>>>>>> felix.fileinstall.filename >>>>>>>>>>>>>>>> = >>>>>>>>>>>>>>>> file:/Users/asoto/test/etc/org.ops4j.datasource-querier.cfg >>>>>>>>>>>>>>>> ops4j.preHook = querierDB >>>>>>>>>>>>>>>> osgi.jdbc.driver.name <http://osgi.jdbc.driver.name> = >>>>>>>>>>>>>>>> derby >>>>>>>>>>>>>>>> osgi.jndi.service.name <http://osgi.jndi.service.name> = >>>>>>>>>> querier >>>>>>>>>>>>>>>> password = enquery >>>>>>>>>>>>>>>> pax.jdbc.managed = true >>>>>>>>>>>>>>>> service.bundleid = 169 >>>>>>>>>>>>>>>> service.factoryPid = org.ops4j.datasource >>>>>>>>>>>>>>>> service.id <http://service.id> <http://service.id> >>>>>>>>>>>>>>>> <http://service.id/> <http://service.id/> <http://service.id >>>>>>>>>>>>>>>> <http://service.id/> >>>>>>>>>>>>>>>> <http://service.id/>> = 282 >>>>>>>>>>>>>>>> service.pid = >>>>>>>>>>>>>>>> org.ops4j.datasource.b161e768-e5f8-40bb-b19f-40cab9111316 >>>>>>>>>>>>>>>> service.scope = singleton >>>>>>>>>>>>>>>> url = jdbc:derby:derby-data/querier;create=true >>>>>>>>>>>>>>>> user = enquery >>>>>>>>>>>>>>>> Provided by : >>>>>>>>>>>>>>>> OPS4J Pax JDBC Config (169) >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Also: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> karaf@root()> jdbc:ds-list >>>>>>>>>>>>>>>> Name │ Product │ Version │ URL >>>>>>>>>> >>>>>>>>>>>>>>>> │ Status >>>>>>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ────────┼──────────────┼───────────────────────┼───────────────────────────────┼─────── >>>>>>>>>>>>>>>> querier │ Apache Derby │ 10.13.1.1 - (1765088) │ >>>>>>>>>>>>>>>> jdbc:derby:derby-data/querier │ OK >>>>>>>>>>>>>>>> querier │ Apache Derby │ 10.13.1.1 - (1765088) │ >>>>>>>>>>>>>>>> jdbc:derby:derby-data/querier │ OK >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I think it must be specific to Derby, as the same works fine >>>>>>>>>> if the >>>>>>>>>>>>>>>> driver is MariaDB. >>>>>>>>>>>>>>>> Any clues? >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Best regards, >>>>>>>>>>>>>>>> Alex soto >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> Jean-Baptiste Onofré >>>>>>>>>>>>>>> jbono...@apache.org <mailto:jbono...@apache.org> >>>>>>>>>>>>>>> <mailto:jbono...@apache.org> >>>>>>>>>>>>>>> <mailto:jbono...@apache.org >>>>>>>>>> <mailto:jbono...@apache.org>> <mailto:jbono...@apache.org >>>>>>>>>> <mailto:jbono...@apache.org>> >>>>>>>>>>>>>>> http://blog.nanthrax.net >>>>>>>>>>>>>>> <http://blog.nanthrax.net/> <http://blog.nanthrax.net/> >>>>>>>>>>>>>>> Talend - http://www.talend.com >>>>>>>>>>>>>>> <http://www.talend.com/> <http://www.talend.com/> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Jean-Baptiste Onofré >>>>>>>>>>>>> jbono...@apache.org <mailto:jbono...@apache.org> >>>>>>>>>>>>> <mailto:jbono...@apache.org> >>>>>>>>>> <mailto:jbono...@apache.org <mailto:jbono...@apache.org>> >>>>>>>>>>>>> http://blog.nanthrax.net <http://blog.nanthrax.net/> >>>>>>>>>>>>> Talend - http://www.talend.com <http://www.talend.com/> >>>>>>>>>> -- >>>>>>>>>> Jean-Baptiste Onofré >>>>>>>>>> jbono...@apache.org <mailto:jbono...@apache.org> >>>>>>>>>> <mailto:jbono...@apache.org> >>>>>>>>>> http://blog.nanthrax.net >>>>>>>>>> Talend - http://www.talend.com >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> -- >>>>>>>>>> Christian Schneider >>>>>>>>>> http://www.liquid-reality.de >>>>>>>>>> >>>>>>>>>> Computer Scientist >>>>>>>>>> http://www.adobe.com >>>>>>>>>> >>>>>>>>> -- >>>>>>>>> Jean-Baptiste Onofré >>>>>>>>> jbono...@apache.org <mailto:jbono...@apache.org> >>>>>>>>> http://blog.nanthrax.net >>>>>>>>> Talend - http://www.talend.com -- Jean-Baptiste Onofré jbono...@apache.org http://blog.nanthrax.net Talend - http://www.talend.com