Hi,

pax-jdbc-config already comes with jdbc feature.

I know pooling doesn't work: that's an issue in the Derby bundle.
So, I took the decision to fix the dual DataSourceFactory issue, and I
created a Jira at Derby to fix the XA/Pooling issue.

Regards
JB

On 04/02/2019 20:57, Benjamin Graf wrote:
> 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

Reply via email to