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> 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>>:
>> 
>>    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>>> 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>>> 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/>> = 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/>> = 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>>
>>>>>>> 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>>
>>>>> 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>
>>    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
> http://blog.nanthrax.net
> Talend - http://www.talend.com

Reply via email to