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é <[email protected] >>>>> <mailto:[email protected]>> 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é >>>>>> <[email protected] <mailto:[email protected]> >>>>>> <mailto:[email protected]>>: >>>>>> >>>>>> 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é >>>>>> <[email protected] <mailto:[email protected]> >>>>>> <mailto:[email protected]> >>>>>>>>> <mailto:[email protected] <mailto:[email protected]>>> 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é >>>>>> <[email protected] <mailto:[email protected]> >>>>>> <mailto:[email protected]> >>>>>>>>>>> <mailto:[email protected] <mailto:[email protected]>> >>>>>>>>>>> <mailto:[email protected] <mailto:[email protected]>>> 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é >>>>>>>>>>> [email protected] <mailto:[email protected]> >>>>>>>>>>> <mailto:[email protected]> >>>>>>>>>>> <mailto:[email protected] >>>>>> <mailto:[email protected]>> <mailto:[email protected] >>>>>> <mailto:[email protected]>> >>>>>>>>>>> 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é >>>>>>>>> [email protected] <mailto:[email protected]> >>>>>>>>> <mailto:[email protected]> >>>>>> <mailto:[email protected] <mailto:[email protected]>> >>>>>>>>> http://blog.nanthrax.net <http://blog.nanthrax.net/> >>>>>>>>> Talend - http://www.talend.com <http://www.talend.com/> >>>>>> -- >>>>>> Jean-Baptiste Onofré >>>>>> [email protected] <mailto:[email protected]> >>>>>> <mailto:[email protected]> >>>>>> 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é >>>>> [email protected] <mailto:[email protected]> >>>>> http://blog.nanthrax.net >>>>> Talend - http://www.talend.com
signature.asc
Description: OpenPGP digital signature
