Jerry,

Glad it worked for you. I will also do the same thing. This seems easier
for me, as I have a solr start shell script, which sets the JVM params for
master/slave, Xmx and so on according to the environment. Setting a jdbc
connect url in the start script is convenient than changing the configs.

*Pranav Prakash*

"temet nosce"



On Tue, Jul 24, 2012 at 1:17 AM, jerry.min...@gmail.com <
jerry.min...@gmail.com> wrote:

> Pranav,
>
> Sorry, I should have checked my response a little better as I
> misspelled your name and, mentioned that I tried what Marcus suggested
> then described something totally different.
> I didn't try using the property mechanism as Marcus suggested as I am
> not using a solr.xml file.
>
> What you mentioned in your post on Wed, Jul 18, 2012 at 3:46 PM will
> work as I have done it successfully.
> That is I created a JVM variable to contain the connect URLs for each
> of my environments and one of those to set the URL parameter of the
> dataSource entity
> in my data config files.
>
> Best,
> Jerry
>
>
> On Mon, Jul 23, 2012 at 3:34 PM, jerry.min...@gmail.com
> <jerry.min...@gmail.com> wrote:
> > Pranay,
> >
> > I tried two similar approaches to resolve this in my system which is
> > Solr 4.0 running in Tomcat 7.x on Ubuntu 9.10.
> >
> > My preference was to use an alias for each of my database environments
> > as a JVM parameter because it makes more sense to me that the database
> > connection be stored in the data config file rather than in a Tomcat
> > configuration or startup file.
> > Because of preference, I first attempted the following:
> > 1. Set a JVM environment variable 'solr.dbEnv' to the represent the
> > database environment that should be accessed. For example, in my dev
> > environment, the JVM environment variable was set as -Dsolr.dbEnv=dev.
> > 2. In the data config file I had 3 data sources. Each data source had
> > a name that matched one of the database environment aliases.
> > 3. In the entity of my data config file "dataSource" parameter was set
> > as follows dataSource=${solr.dbEnv}.
> >
> > Unfortunately, this fails to work. Setting "dataSource" parameter in
> > the data config file does not override the default. The default
> > appears to be the first data source defined in the data config file.
> >
> > Second, I tried what Marcus suggested.
> >
> > That is, I created a JVM variable to contain the connect URLs for each
> > of my environments.
> > I use that variable to set the URL parameter of the dataSource entity
> > in the data config file.
> >
> > This works well.
> >
> >
> > Best,
> > Jerry Mindek
> >
> > Unfortunately, the first option did not work. It seemed as though
> > On Wed, Jul 18, 2012 at 3:46 PM, Pranav Prakash <pra...@gmail.com>
> wrote:
> >> That approach would work for core dependent parameters. In my case, the
> >> params are environment dependent. I think a simpler approach would be to
> >> pass the url param as JVM options, and these XMLs get it from there.
> >>
> >> I haven't tried it yet.
> >>
> >> *Pranav Prakash*
> >>
> >> "temet nosce"
> >>
> >>
> >>
> >> On Tue, Jul 17, 2012 at 5:09 PM, Markus Klose <m...@shi-gmbh.com> wrote:
> >>
> >>> Hi
> >>>
> >>> There is one more approach using the property mechanism.
> >>>
> >>> You could specify the datasource like this:
> >>> <dataSource name="database" driver="${sqlDriver}" url="${sqlURL}"/>
> >>>
> >>>  And you can specifiy the properties in the solr.xml in your core
> >>> configuration like this:
> >>>
> >>> <core instanceDir="core1" name="core1">
> >>>         <property name="sqlURL" value="jdbc:hsqldb:/temp/example/ex"/>
> >>>         ....
> >>> </core>
> >>>
> >>>
> >>> Viele Grüße aus Augsburg
> >>>
> >>> Markus Klose
> >>> SHI Elektronische Medien GmbH
> >>>
> >>>
> >>> Adresse: Curt-Frenzel-Str. 12, 86167 Augsburg
> >>>
> >>> Tel.:   0821 7482633 26
> >>> Tel.:   0821 7482633 0 (Zentrale)
> >>> Mobil:0176 56516869
> >>> Fax:   0821 7482633 29
> >>>
> >>> E-Mail: markus.kl...@shi-gmbh.com
> >>> Internet: http://www.shi-gmbh.com
> >>>
> >>> Registergericht Augsburg HRB 17382
> >>> Geschäftsführer: Peter Spiske
> >>> USt.-ID: DE 182167335
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> -----Ursprüngliche Nachricht-----
> >>> Von: Rahul Warawdekar [mailto:rahul.warawde...@gmail.com]
> >>> Gesendet: Mittwoch, 11. Juli 2012 11:21
> >>> An: solr-user@lucene.apache.org
> >>> Betreff: Re: DIH XML configs for multi environment
> >>>
> >>> http://wiki.eclipse.org/Jetty/Howto/Configure_JNDI_Datasource
> >>> http://docs.codehaus.org/display/JETTY/DataSource+Examples
> >>>
> >>>
> >>> On Wed, Jul 11, 2012 at 2:30 PM, Pranav Prakash <pra...@gmail.com>
> wrote:
> >>>
> >>> > That's cool. Is there something similar for Jetty as well? We use
> Jetty!
> >>> >
> >>> > *Pranav Prakash*
> >>> >
> >>> > "temet nosce"
> >>> >
> >>> >
> >>> >
> >>> > On Wed, Jul 11, 2012 at 1:49 PM, Rahul Warawdekar <
> >>> > rahul.warawde...@gmail.com> wrote:
> >>> >
> >>> > > Hi Pranav,
> >>> > >
> >>> > > If you are using Tomcat to host Solr, you can define your data
> >>> > > source in context.xml file under tomcat configuration.
> >>> > > You have to refer to this datasource with the same name in all the
> 3
> >>> > > environments from DIH data-config.xml.
> >>> > > This context.xml file will vary across 3 environments having
> >>> > > different credentials for dev, stag and prod.
> >>> > >
> >>> > > eg
> >>> > > DIH data-config.xml will refer to the datasource as listed below
> >>> > > <dataSource jndiName="java:comp/env/<*YOUR_DATASOURCE_NAME*>"
> >>> > > type="JdbcDataSource" readOnly="true" />
> >>> > >
> >>> > > context.xml file which is located under "/<TOMCAT_HOME>/conf"
> folder
> >>> > > will have the resource entry as follows
> >>> > >   <Resource name="<*YOUR_DATASOURCE_NAME*>" auth="Container"
> >>> > >             type="" username="XXXXX" password="XXXXX"
> >>> > >             driverClassName=""
> >>> > >             url=""
> >>> > >             maxActive="8"
> >>> > >             />
> >>> > >
> >>> > > On Wed, Jul 11, 2012 at 1:31 PM, Pranav Prakash <pra...@gmail.com>
> >>> > wrote:
> >>> > >
> >>> > > > The DIH XML config file has to be specified dataSource. In my
> >>> > > > case, and possibly with many others, the logon credentials as
> well
> >>> > > > as mysql
> >>> > server
> >>> > > > paths would differ based on environments (dev, stag, prod). I
> >>> > > > don't
> >>> > want
> >>> > > to
> >>> > > > end up coming with three different DIH config files, three
> >>> > > > different handlers and so on.
> >>> > > >
> >>> > > > What is a good way to deal with this?
> >>> > > >
> >>> > > >
> >>> > > > *Pranav Prakash*
> >>> > > >
> >>> > > > "temet nosce"
> >>> > > >
> >>> > >
> >>> > >
> >>> > >
> >>> > > --
> >>> > > Thanks and Regards
> >>> > > Rahul A. Warawdekar
> >>> > >
> >>> >
> >>>
> >>>
> >>>
> >>> --
> >>> Thanks and Regards
> >>> Rahul A. Warawdekar
> >>>
>

Reply via email to