Yes, both nodes have identical org.ops4j.data source-*.cfg files under etc/. I (re)confirmed this morning when I ran more tests.
(Plus, remember that the data sources initialize fine on *whichever* node comes up first. I can start 1 then 2 and see the data sources only on 1; or I can start 2 then 1 in which case I see the data sources only on 2. So I'm fairly confident it's not a data source .cfg issue.) On Mar 8, 2018 11:43 AM, "Jean-Baptiste Onofré" < jeanbaptiste.ono...@gmail.com> wrote: Hi Matt, And do you have the Pax JDBC config on all nodes ? Regards JB On 03/08/2018 05:30 PM, Matthew Zipay wrote: Thanks for the quick replies. With respect to Cellar, I should clarify that the Pax JDBC issue persists whether or not Cellar is involved (Cellar was a recent addition to the system, specifically to see if its explicit support for active/active would resolve the Pax JDBC issue - it did not). I have tried two variations: (1) Without Cellar, bring up both Karaf nodes without Karaf locking (karaf.lock=false). (i.e. "unsupported" active/active) (2) With Cellar, bring up both Karaf nodes without Karaf locking (karaf.lock=false). (i.e. "supported" active/active) In either scenario, the data sources only initialize on the *first* node that comes up. In either scenario, I can confirm that Pax JDBC bundles are started on both nodes: Node 1: 228 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Generic Driver Extender 229 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Config 230 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Pooling Support Base 270 | Active | 80 | 1.0.1 | OPS4J Pax JDBC MSSQL Driver Adapter 271 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Oracle Driver Adapter 272 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Pooling DBCP2 Node 2: 228 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Generic Driver Extender 229 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Config 230 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Pooling Support Base 270 | Active | 80 | 1.0.1 | OPS4J Pax JDBC MSSQL Driver Adapter 271 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Oracle Driver Adapter 272 | Active | 80 | 1.0.1 | OPS4J Pax JDBC Pooling DBCP2 However, jdbc:ds-list only shows the initialized data sources on node 1; on node 2 *no* data sources are initialized, and I have multiple bundles in GracePeriod waiting for data sources that never show up. For example, on node 2: admin@root>diag 331 SKU Resolution (331) ----------------------------------------------- Status: GracePeriod Blueprint 3/8/18 11:10 AM Missing dependencies: (&(dataSourceName=PRODUCTDS)(objectClass=javax.sql.DataSource)) The "org.ops4j.datasource-PRODUCT.cfg" config file is present and identical on both nodes. I see the data source initialization occur in node 1's log, but nothing in node 2's log. As soon as I bring down node 1, then I see the data sources on node 2 initialize. Could this have anything to do with ActiveMQ master/slave? That's the only constant here. It seems unlikely, but I'm out of ideas. On Thursday, March 8, 2018 at 2:32:39 AM UTC-5, Jean-Baptiste Onofré wrote: > > Hi, > > Cellar syncs the bundles and config on the cluster. > > By default, it doesn't sync "local" config (basically the etc/*.cfg > files). To do so, you have to enable the local listener in etc/ > org.apache.karaf.cellar.groups.cfg. > > Else, you have to use cluster:config-property-set to create the config on > the cluster. > > Regards > JB > > On 03/08/2018 08:22 AM, Christian Schneider wrote: > > I am not experienced with cellar but generally I would expect that in an > active/active setup both machines start the same services. > > So first thing to check is if the pax-jdbc features and bundles are active > on the second node. If they are active you can check the log to see if > pax-jdbc reports that something is missing. > > When you describe that the datasources on the second machine come up when > the first machine goes down it sounds like you have setup something like a > master slave setup in cellar. > > Christian > > 2018-03-07 22:55 GMT+01:00 Matthew Zipay <mzi...@gmail.com>: > >> I really like the approach that Pax JDBC introduced for managing data >> sources, but I am running into an issue that may require me to abandon it >> if I can't get it resolved. >> >> My setup is as follows: >> ServiceMix 7.0.1 (Karaf 4.0.9) running on two nodes, clustered with >> Cellar (active/active). ActiveMQ is JDBC master/slave. Using Pax JDBC 1.0.1 >> (config, pool, and oracle and mssql adapters). >> >> I have five (5) data sources configured for the various databases in use >> by this system. What I see is that the data sources are only available on >> the *first* node in the cluster that comes up. When the second node comes >> up, even though it also has the data source cfg's, the data sources never >> get initialized, and all of my bundles that use the data sources are stuck >> perpetually in GracePeriod waiting on the data sources (confirmed with >> bundle:diag). >> >> If I bring down the first node, *then* the data sources on the second >> node suddenly spring to life and all's well. But this is not the behavior >> I would desire or expect, and it may be showstopper for me w/r/t Pax JDBC. >> I need those data sources available on both nodes. >> >> Is this expected? If not, any ideas how I can work around it? >> -- >> -- >> ------------------ >> OPS4J - http://www.ops4j.org - op...@googlegroups.com >> >> --- >> You received this message because you are subscribed to the Google Groups >> "OPS4J" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to ops4j+un...@googlegroups.com. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > -- > Christian Schneider > http://www.liquid-reality.de > > Computer Scientist > http://www.adobe.com > > -- > -- > ------------------ > OPS4J - http://www.ops4j.org - op...@googlegroups.com > > --- > You received this message because you are subscribed to the Google Groups > "OPS4J" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to ops4j+un...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > > > -- -- ------------------ OPS4J - http://www.ops4j.org - ops4j@googlegroups.com --- You received this message because you are subscribed to the Google Groups "OPS4J" group. To unsubscribe from this group and stop receiving emails from it, send an email to ops4j+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. -- -- ------------------ OPS4J - http://www.ops4j.org - ops4j@googlegroups.com --- You received this message because you are subscribed to a topic in the Google Groups "OPS4J" group. To unsubscribe from this topic, visit https://groups.google.com/d/ topic/ops4j/LHv7sqWkZTg/unsubscribe. To unsubscribe from this group and all its topics, send an email to ops4j+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. -- -- ------------------ OPS4J - http://www.ops4j.org - ops4j@googlegroups.com --- You received this message because you are subscribed to the Google Groups "OPS4J" group. To unsubscribe from this group and stop receiving emails from it, send an email to ops4j+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.