From user-return-18561-archive-asf-public=cust-asf.ponee.io@karaf.apache.org Tue May 15 09:00:41 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 2DCCA180634 for ; Tue, 15 May 2018 09:00:40 +0200 (CEST) Received: (qmail 37381 invoked by uid 500); 15 May 2018 07:00:38 -0000 Mailing-List: contact user-help@karaf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@karaf.apache.org Delivered-To: mailing list user@karaf.apache.org Received: (qmail 37371 invoked by uid 99); 15 May 2018 07:00:38 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 May 2018 07:00:38 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id E15CC1A07BF for ; Tue, 15 May 2018 07:00:37 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.288 X-Spam-Level: ** X-Spam-Status: No, score=2.288 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_FONT_FACE_BAD=0.289, HTML_MESSAGE=2, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd2-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=paremus-com.20150623.gappssmtp.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id oovYRISEWNUB for ; Tue, 15 May 2018 07:00:34 +0000 (UTC) Received: from mail-wr0-f180.google.com (mail-wr0-f180.google.com [209.85.128.180]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id EECC75F397 for ; Tue, 15 May 2018 07:00:33 +0000 (UTC) Received: by mail-wr0-f180.google.com with SMTP id g21-v6so14692140wrb.8 for ; Tue, 15 May 2018 00:00:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paremus-com.20150623.gappssmtp.com; s=20150623; h=from:content-transfer-encoding:mime-version:date:subject:message-id :references:in-reply-to:to; bh=UoAzp++42+uObCFrtVrEsbYrM4rZwTcqpv0TZlUbuHk=; b=lDuuDMdyRgU9uOMy95KX/NdbOXF+GnEmIAlJI7hQcw2XmcQngqKq96xrhQac0y6yDm nwrxGX0zitONC48qJgT4RKVZGIBxx0rPrd83sV4dc/CS/siYuSwfEcUD8LAwAC0W9DAu XE9tMVykrd0qOTyZBz7ogeC6Z1JGeBM1CMDtTSqPgNApwiU5RuUjKgzBspytqq8gCxKV JrksIdU6j6p0DT1McgJ7QeU8nZcV0yrrXcUho1ReAkFqYuPaxYEb9vmCR+97jQTSnDL+ k9mf58MtwnblXg4AakiuJH/CtqFp0jVHI/Jxz6d6atKhRKRy8Qjf+RpeS+aW42jHIOQ1 PGIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:content-transfer-encoding:mime-version:date :subject:message-id:references:in-reply-to:to; bh=UoAzp++42+uObCFrtVrEsbYrM4rZwTcqpv0TZlUbuHk=; b=YeSlsMchIbt9wUeVfMQkqO+R9CM4IO6tcXpY8rEGLRTqs2L/29NH+LvlYFWXdYCEv+ QyM+V14ndPNGaQoRifKb0CF03fNRvysBzXce7GYF5MivYWdxIr1iFmW49Ky5jCO1ev3P rT5aI1Ve3Vs/WqZDCVTVQ5oQvdIkdj4xQ+sIpK+kAq1+8HRS2Pk61mcA7+8d2IxaCr/Z 11D7T1XI/qodpWDnBz8xfSbFTyWKI1X/6mH/cwue4iJjuD6MxIu5j0hedcgVra5KefnB /sOnjCcoFOZnTPLEz6eGY9vYeOOtdEhgUOKmsK6Sgl69u88CYVXC3Zwc9Cj4p5S5Zqao i6Bw== X-Gm-Message-State: ALKqPwc6ddhUkh5/N5jLLSj9nj59HIRza8/aHQxDE/5Ix9JKQOE8sRKx DkDCvZy/MPNNGVgrScT19QOX4ijuTR0= X-Google-Smtp-Source: AB8JxZovqLTYLlZRlzmTfxZxOFJV30lwakJztrdmhEz6c8ZtzYcnjoKvQJljetAAiuCotRCTJdxY6Q== X-Received: by 2002:adf:b88f:: with SMTP id i15-v6mr8727143wrf.163.1526367633136; Tue, 15 May 2018 00:00:33 -0700 (PDT) Received: from [192.168.1.100] ([151.57.29.59]) by smtp.gmail.com with ESMTPSA id 2-v6sm18455969wrb.22.2018.05.15.00.00.31 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 15 May 2018 00:00:32 -0700 (PDT) From: Tim Ward Content-Type: multipart/alternative; boundary=Apple-Mail-C9CD0E86-E8F9-45AF-91B3-379DEC617030 Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (1.0) Date: Tue, 15 May 2018 09:00:28 +0200 Subject: Re: pax-jdbc-config connection pool configuration Message-Id: References: In-Reply-To: To: user@karaf.apache.org X-Mailer: iPhone Mail (15E302) --Apple-Mail-C9CD0E86-E8F9-45AF-91B3-379DEC617030 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Another option for connection pooling would be to use the OSGi Transaction C= ontrol service from the R7 release. The resource providers all give implicit= support for pooling, and the Aries implementation allows you to create them= purely from configuration.=20 The transaction control service also provides a more reliable mechanism for m= anaging the transaction lifecycle than proxying/annotations.=20 There=E2=80=99s a post about Transaction Control on the OSGi blog at https:/= /blog.osgi.org/2018/05/osgi-r7-highlights-transaction-control.html and docum= entation at Apache Aries. The 1.0.0 release happened about two weeks ago and= has been tested in Karaf. Best Regards, Tim Sent from my iPhone > On 15 May 2018, at 08:37, Christian Schneider wr= ote: >=20 > The docs indeed show to use jdbc.pool.maxTotal but in the code I see that t= he pool properties are filtered using "pool."=20 >=20 > See: > https://github.com/ops4j/org.ops4j.pax.jdbc/blob/master/pax-jdbc-pool-dbcp= 2/src/main/java/org/ops4j/pax/jdbc/pool/dbcp2/impl/DbcpPooledDataSourceFacto= ry.java >=20 > So can you try with pool.maxTotal? Still this is a bug - either the docs o= r the code is wrong. >=20 > You can find the link to the issue tracker on the top level of the code ba= se in the README: > https://github.com/ops4j/org.ops4j.pax.jdbc >=20 > Be aware though that you need to ask for a jira user on the ops4j list (op= s4j@googlegroups.com) first.=20 > The self registration is switched off as there was lots of spam. >=20 > Christian >=20 >=20 > 2018-05-14 21:47 GMT+02:00 Alex Soto : >> Using Karaf 4.2.0, I am trying to configure connection pool using pax-jd= bc-config approach. I installed features: >>=20 >> pax-jdbc-mariadb >> pax-jdbc-config >> pax-jdbc-pool-dbcp2 >>=20 >>=20 >>=20 >> I dropped a org.ops4j.datasource-responder.cfg file in the etc directory:= >>=20 >> osgi.jdbc.driver.name =3D mariadb >> dataSourceName=3Dresponder >> url =3D jdbc:mariadb://localhost:3306/responder >> user=3DXXXX >> password=3DXXXX >> pool=3Ddbcp2 >> xa=3Dtrue >> databaseName=3Dresponder >> jdbc.pool.maxTotal=3D8 >>=20 >>=20 >> The last line causes this error: >>=20 >> cannot set properties [pool.maxTotal] >> java.sql.SQLException: cannot set properties [pool.maxTotal] >> at org.ops4j.pax.jdbc.mariadb.impl.MariaDbDataSourceFactory.setProp= erties(MariaDbDataSourceFactory.java:70) ~[?:?] >> at org.ops4j.pax.jdbc.mariadb.impl.MariaDbDataSourceFactory.createD= ataSource(MariaDbDataSourceFactory.java:36) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.DataSourceRegistration.createDs(D= ataSourceRegistration.java:134) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.DataSourceRegistration.(Dat= aSourceRegistration.java:80) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.DataSourceConfigManager.lambda$nu= ll$0(DataSourceConfigManager.java:81) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper$1.addingServ= ice(ServiceTrackerHelper.java:131) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(Se= rviceTracker.java:941) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(Se= rviceTracker.java:870) ~[?:?] >> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracke= d.java:256) ~[?:?] >> at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTrack= ed.java:183) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:31= 8) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:26= 1) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:140) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.DataSourceConfigManager.lambda$nu= ll$1(DataSourceConfigManager.java:77) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:146) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:85) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.DataSourceConfigManager.lambda$nu= ll$2(DataSourceConfigManager.java:76) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper$1.addingServ= ice(ServiceTrackerHelper.java:131) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(Se= rviceTracker.java:941) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(Se= rviceTracker.java:870) ~[?:?] >> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracke= d.java:256) ~[?:?] >> at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTrack= ed.java:183) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:31= 8) ~[?:?] >> at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:26= 1) ~[?:?] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:140) ~[14:org.ops4j.pax.jdbc.config:1.2.0] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:85) ~[14:org.ops4j.pax.jdbc.config:1.2.0] >> at org.ops4j.pax.jdbc.config.impl.DataSourceConfigManager.lambda$up= dated$3(DataSourceConfigManager.java:75) ~[14:org.ops4j.pax.jdbc.config:1.2.= 0] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:146) [14:org.ops4j.pax.jdbc.config:1.2.0] >> at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(Servic= eTrackerHelper.java:85) [14:org.ops4j.pax.jdbc.config:1.2.0] >> at org.ops4j.pax.jdbc.config.impl.DataSourceConfigManager.updated(D= ataSourceConfigManager.java:74) [14:org.ops4j.pax.jdbc.config:1.2.0] >> at org.apache.felix.cm.impl.helper.ManagedServiceFactoryTracker.upd= ated(ManagedServiceFactoryTracker.java:159) [8:org.apache.felix.configadmin:= 1.8.16] >> at org.apache.felix.cm.impl.helper.ManagedServiceFactoryTracker.pro= videConfiguration(ManagedServiceFactoryTracker.java:93) [8:org.apache.felix.= configadmin:1.8.16] >> at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguratio= n.run(ConfigurationManager.java:1792) [8:org.apache.felix.configadmin:1.8.16= ] >> at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:141= ) [8:org.apache.felix.configadmin:1.8.16] >> at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:109)= [8:org.apache.felix.configadmin:1.8.16] >> at java.lang.Thread.run(Thread.java:748) [?:?] >>=20 >>=20 >> How do I configure the various parameters of the connection pool? >>=20 >>=20 >> Best regards, >> Alex soto >>=20 >>=20 >>=20 >>=20 >=20 >=20 >=20 > --=20 > --=20 > Christian Schneider > http://www.liquid-reality.de >=20 > Computer Scientist > http://www.adobe.com >=20 --Apple-Mail-C9CD0E86-E8F9-45AF-91B3-379DEC617030 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable Another option for connection pooling would= be to use the OSGi Transaction Control service from the R7 release. The res= ource providers all give implicit support for pooling, and the Aries impleme= ntation allows you to create them purely from configuration. 

<= /div>
The transaction control service also provides a more reliable mech= anism for managing the transaction lifecycle than proxying/annotations. = ;

There=E2=80=99s a post about Transaction Control o= n the OSGi blog at https://blog.osgi.org/2018/05/osgi-r= 7-highlights-transaction-control.html and documentation at Apache A= ries. The 1.0.0 release happened about two weeks ago and has been tested in K= araf.

Best Regards,

Tim
Sent from my iPhone

On 15 M= ay 2018, at 08:37, Christian Schneider <chris@die-schneider.net> wrote:

The docs indeed show to use jdbc.pool.maxTotal but in the code I see that the pool properties are filtered usi= ng "pool." 

See:
https://github.com/ops4j/org.ops4j.pax.jdbc/blob/maste= r/pax-jdbc-pool-dbcp2/src/main/java/org/ops4j/pax/jdbc/pool/d= bcp2/impl/DbcpPooledDataSourceFactory.java

= So can you try with pool.maxTotal? Still this is a bug - either= the docs or the code is wrong.

You can find the link to the issue trac= ker on the top level of the code base in the README:
https://github.com/ops4j/org.ops4j.pax.jdbc
=
=
Be= aware though that you need to ask for a jira user on the ops4j list (ops4j@googlegroup= s.com) first. 
The sel= f registration is switched off as there was lots of spam.

Christian


2018-05-14 21:47 GMT+02:00 Alex= Soto <alex.soto@envieta.com>:
Us= ing Karaf  4.2.0, I am trying to configure connection pool using p= ax-jdbc-config  approach.  I installed features:

pax-jdbc-mariadb
pax-jdbc-config
pax-jdbc= -pool-dbcp2


I dropped a org.ops4j.datasource-responder.cfg<= /i> file in the etc directory:
<= br>
user=3DXXXX
password=3DXXXX
pool=3Ddbcp2
xa=3Dtrue
databaseName=3Dresponder
jdbc.pool.maxTotal=3D8


The last line= causes this error:

cannot set properties [pool.maxTotal]
<= /font>java.sql.SQLException:= cannot set properties [pool.maxTotal]
at org.ops4j.pax.jdbc.mariadb.<= wbr>impl.MariaDbDataSourceFactory.setProperties(MariaDbDataSourceFa= ctory.java:70) ~[?:?]
at org.ops4j.pax.jdbc.mariadb.impl= .MariaDbDataSourceFactory.createDataSource(MariaDbDataSourceFactor= y.java:36) ~[?:?]
at org.ops4j.pax.jdbc.config.impl.DataSourceReg= istration.createDs(DataSourceRegistration.java:134) ~[?:?] at org.ops4j.pax.jdbc.config.impl.DataSourceRegistration.<i= nit>(DataSourceRegistration.java:80) ~[?:?]
at org.ops4j.pax.jdb= c.config.impl.DataSourceConfigManager.lambda$null$0(DataSourc= eConfigManager.java:81) ~[?:?]
at org.ops4j.pax.jdbc.config.impl.Servi= ceTrackerHelper$1.addingService(ServiceTrackerHelper.java:131) ~[?= :?]
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAddi= ng(ServiceTracker.java:941) ~[?:?]
at org.osgi.util.tracker.Servic= eTracker$Tracked.customizerAdding(ServiceTracker.java:870) ~[?:?]<= br> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractT= racked.java:256) ~[?:?]
at org.osgi.util.tracker.AbstractTracked.trackI= nitial(AbstractTracked.java:183) ~[?:?]
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:318) ~[?:?]
at org.osgi.= util.tracker.ServiceTracker.open(ServiceTracker.java:261) ~[?:?] at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(S= erviceTrackerHelper.java:140) ~[?:?]
at org.ops4j.pax.jdbc.config= .impl.DataSourceConfigManager.lambda$null$1(DataSourceConfigM= anager.java:77) ~[?:?]
at org.ops4j.pax.jdbc.config.impl.Servi= ceTrackerHelper.track(ServiceTrackerHelper.java:146) ~[?:?]
at o= rg.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.track(ServiceTr= ackerHelper.java:85) ~[?:?]
at org.ops4j.pax.jdbc.config.impl.DataS= ourceConfigManager.lambda$null$2(DataSourceConfigManager.java:76) ~[?:?]
at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper$= 1.addingService(ServiceTrackerHelper.java:131) ~[?:?]
at org.osgi.= util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceT= racker.java:941) ~[?:?]
at org.osgi.util.tracker.ServiceTracker$Tracked= .customizerAdding(ServiceTracker.java:870) ~[?:?]
at org.osgi.= util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)= ~[?:?]
= at org.osgi.util.tracker.AbstractTracked.trackInitial(Abst= ractTracked.java:183) ~[?:?]
at org.osgi.util.tracker.ServiceTracker= .open(ServiceTracker.java:318) ~[?:?]
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261) ~[?:?]
at org.ops4j= .pax.jdbc.config.impl.ServiceTrackerHelper.track(ServiceTrackerHel= per.java:140) ~[14:org.ops4j.pax.jdbc.config:1.2.0]
at org.ops4j= .pax.jdbc.config.impl.ServiceTrackerHelper.track(ServiceTrackerHel= per.java:85) ~[14:org.ops4j.pax.jdbc.config:1.2.0]
at org.= ops4j.pax.jdbc.config.impl.DataSourceConfigManager.lambda$updated$= 3(DataSourceConfigManager.java:75) ~[14:org.ops4j.pax.jdbc.co= nfig:1.2.0]
at org.ops4j.pax.jdbc.config.impl.ServiceTrackerHelper.= track(ServiceTrackerHelper.java:146) [14:org.ops4j.pax.j= dbc.config:1.2.0]
= at org.ops4j.pax.jdbc.config.impl.ServiceTracke= rHelper.track(ServiceTrackerHelper.java:85) [14:org.ops4j.pax= .jdbc.config:1.2.0]
at org.ops4j.pax.jdbc.config.impl.DataSourceCon= figManager.updated(DataSourceConfigManager.java:74) [14:= org.ops4j.pax.jdbc.config:1.2.0]
at org.apache.felix.cm.impl.helper.ManagedServiceFactoryTracker.updated(ManagedServiceFa= ctoryTracker.java:159) [8:org.apache.felix.configadmin:1.8.16= ]
at org.apache.felix.cm.impl.helper.ManagedServiceFactoryT= racker.provideConfiguration(ManagedServiceFactoryTracker.java= :93) [8:org.apache.felix.configadmin:1.8.16]
at org.apache.felix.= cm.impl.ConfigurationManager$UpdateConfiguration.run(Configur= ationManager.java:1792) [8:org.apache.felix.configadmin:1.8.1= 6]
at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.jav= a:141) [8:org.apache.felix.configadmin:1.8.16]
at org.apach= e.felix.cm.impl.UpdateThread.run(UpdateThread.java:109) [8:or= g.apache.felix.configadmin:1.8.16]
at java.lang.Thread.run(Thread.= java:748) [?:?]


How do I configure the various parameters of= the connection pool?


Best regards,
Alex soto

<= br>




--
--
Christian Schneider

http://www.liquid-rea= lity.de

=
Computer Scient= ist

=
= --Apple-Mail-C9CD0E86-E8F9-45AF-91B3-379DEC617030--