Add an example multibrick opensrf.xml file user/tsbere/multibrick_opensrf_xml
authorThomas Berezansky <tsbere@mvlc.org>
Mon, 6 Feb 2012 14:54:24 +0000 (09:54 -0500)
committerThomas Berezansky <tsbere@mvlc.org>
Mon, 6 Feb 2012 14:54:24 +0000 (09:54 -0500)
Moves some directories and all unix configs to host specific blocks.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Open-ILS/examples/opensrf.xml.multibrick.example [new file with mode: 0644]
Open-ILS/src/Makefile.am

diff --git a/Open-ILS/examples/opensrf.xml.multibrick.example b/Open-ILS/examples/opensrf.xml.multibrick.example
new file mode 100644 (file)
index 0000000..268d34f
--- /dev/null
@@ -0,0 +1,2070 @@
+<?xml version='1.0'?>
+
+<!-- 
+Example opensrf config file for OpenILS
+vim:et:ts=4:sw=4:
+-->
+
+<opensrf version='0.0.3'>
+
+    <default>
+
+        <!-- unless otherwise overidden, use this locale -->
+        <default_locale>en-US</default_locale>
+
+        <dirs>
+            <xsl>LOCALSTATEDIR/xsl</xsl>
+            <script>LOCALSTATEDIR</script>
+            <script_lib>LOCALSTATEDIR</script_lib>
+            <templates>LOCALSTATEDIR/templates</templates>
+        </dirs>
+
+        <!-- global data visibility settings -->
+        <share>
+            <user>
+                <!-- Set to "true" to require patron opt-in for foreign (non-home_ou) transactions -->
+                <opt_in>false</opt_in>
+            </user>
+        </share>
+
+        <IDL>SYSCONFDIR/fm_IDL.xml</IDL> <!-- top level IDL file -->
+        <IDL2js>fm_IDL2js.xsl</IDL2js> <!-- IDL JS XSLT -->
+
+
+        <server_type>prefork</server_type> <!-- net::server type -->
+
+        <ils_events>LOCALSTATEDIR/data/ils_events.xml</ils_events> <!-- ILS events description file -->
+
+        <email_notify> <!-- this will eventually move into the notifications section below... -->
+            <!-- global email notification settings -->
+            <template>LOCALSTATEDIR/data/hold_notification_template.example</template>
+            <smtp_server>localhost</smtp_server>
+
+            <!--
+            in most cases, this is overridden by location 
+            specific config settings.  this is just the default
+            -->
+            <sender_address>evergreen@localhost</sender_address>
+        </email_notify>
+
+
+        <notifications>
+            <!-- global mail server settings -->
+            <smtp_server>localhost</smtp_server>
+            <sender_address>evergreen@localhost</sender_address>
+
+            <!-- global telephony (asterisk) settings -->
+            <telephony>
+                <!-- replace all values below when telephony server is configured -->
+                <enabled>0</enabled>
+                <driver>SIP</driver>    <!-- SIP (default) or multi -->
+                <channels>              <!-- explicit list of channels used if multi -->
+                                        <!-- A channel specifies technology/resource -->
+                    <channel>Zap/1</channel>
+                    <channel>Zap/2</channel>
+                    <channel>IAX/user:secret@widgets.biz</channel>
+                </channels>
+                <host>localhost</host>
+                <port>10080</port>
+                <user>evergreen</user>
+                <pw>evergreen</pw>
+                <!--
+                    The overall composition of callfiles is determined by the
+                    relevant template, but this section can be invoked for callfile
+                    configs common to all outbound calls.
+                    callfile_lines will be inserted into ALL generated callfiles
+                    after the Channel line.  This content mat be overridden
+                    (in whole) by the org unit setting callfile_lines.
+                    Warning: Invalid syntax may break ALL outbound calls.
+                -->
+                <!-- <callfile_lines>
+                    MaxRetries: 3
+                    RetryTime: 60
+                    WaitTime: 30
+                    Archive: 1
+                    Extension: 10
+                </callfile_lines> -->
+            </telephony>
+
+            <!-- Overdue notices: DEPRECATED in 2.0 in favour of Action/Trigger Notifications -->
+            <overdue>
+
+                <!-- optionally, you can define a sender address per notice type -->
+                <sender_address>overdue@localhost</sender_address>
+
+                <!-- The system can generate an XML file of overdue notices.  This is the
+                    directory where they are stored.  Files are named overdue.YYYY-MM-DD.xml -->
+                <notice_dir>LOCALSTATEDIR/data/overdue</notice_dir>
+                <combined_template>LOCALSTATEDIR/data/templates/overdue_combined_xml.example</combined_template>
+
+                <notice>
+                    <!-- Notify at 7 days overdue -->
+                    <notify_interval>7 days</notify_interval>
+                    <!-- Options include always, noemail, and never.  'noemail' means a notice
+                         will be appended to the notice file only if the patron has no valid email address.  -->
+                    <file_append>noemail</file_append>
+                    <!-- do we attempt email notification? -->
+                    <email_notify>false</email_notify>
+                    <!-- notice template file -->
+                    <email_template>LOCALSTATEDIR/data/templates/overdue_7day.example</email_template>
+                </notice>
+            </overdue>
+
+            <!-- Courtesy notices: DEPRECATED in 2.0 in favour of Action/Trigger Notifications -->
+            <predue>
+                <notice>
+                    <!-- All circulations that circulate between 5 and 13 days -->
+                    <circ_duration_range>
+                        <from>5 days</from>
+                        <to>13 days</to>
+                    </circ_duration_range>
+                    <!-- notify at 1 day before the due date -->
+                    <notify_interval>1 day</notify_interval>
+                    <file_append>false</file_append>
+                    <email_notify>false</email_notify>
+                    <email_template>LOCALSTATEDIR/data/templates/predue_1day.example</email_template>
+                </notice>
+            </predue>
+        </notifications>
+
+        <!-- Settings for the hold targeter cron job -->
+        <hold_targeter>
+            <!-- number of parallel processes to use during hold targeting;
+                 increasing can speed up (re)targeting a large number of
+                 hold requests, but with diminishing returns after a point;
+                 if increasing this value, it is recommend to do so slowly
+            -->
+            <parallel>1</parallel>
+        </hold_targeter>
+
+        <!-- Settings for the fine generator cron job -->
+        <fine_generator>
+            <!-- number of parallel processes to use during fine generation -->
+            <parallel>1</parallel>
+        </fine_generator>
+        
+        <reporter>
+            <!--
+            Settings for the reporter daemon process 
+            -->
+            <setup>
+                <base_uri>https://localhost/reporter/</base_uri>
+                <database>
+                    <driver>Pg</driver>
+                    <host>localhost</host>
+                    <port>5432</port>
+                    <db>evergreen</db>
+                    <user>postgres</user>
+                    <pw>postgres</pw>
+                </database>
+                <state_store>
+                    <driver>Pg</driver>
+                    <host>localhost</host>
+                    <port>5432</port>
+                    <db>evergreen</db>
+                    <user>postgres</user>
+                    <pw>postgres</pw>
+                </state_store>
+                <files>
+                    <!-- successful report outputs go here -->
+                    <output_base>LOCALSTATEDIR/web/reporter</output_base>
+                    <success_template>LOCALSTATEDIR/data/report-success</success_template>
+                    <fail_template>LOCALSTATEDIR/data/report-fail</fail_template>
+                </files>
+            </setup>
+        </reporter>
+
+
+
+        <xml-rpc>
+            <!-- XML-RPC gateway.  Do NOT publish unprotected services here -->
+            <allowed_services>
+                <!-- list of published services -->
+                <service>opensrf.math</service>
+                <service>opensrf.dbmath</service>
+                <service>open-ils.cat</service>
+                <service>open-ils.search</service>
+                <service>open-ils.circ</service>
+                <service>open-ils.actor</service>
+                <service>open-ils.auth</service>
+                <service>open-ils.collections</service>
+                <service>open-ils.justintime</service>
+            </allowed_services>
+        </xml-rpc>
+
+
+        <z3950>
+            <default>biblios</default>
+            <services>
+                <biblios>
+                    <!-- biblios does not require username/password -->
+                    <name>‡biblios.net</name>
+                    <host>z3950.biblios.net</host>
+                    <port>210</port>
+                    <db>bibliographic</db>
+                    <!-- fetch the full record with no holdings. FI is the most common choice -->
+                    <record_format>FI</record_format> 
+
+                    <!-- Record transmission format from the server.  Supported -->
+                    <!-- formats include usmarc and xml (for marcxml).         -->
+                    <transmission_format>usmarc</transmission_format> 
+
+                    <attrs>
+                        <tcn><code>12</code><format>1</format></tcn>
+                        <isbn><code>7</code><format>6</format></isbn>
+                        <lccn><code>9</code><format>1</format></lccn>
+                        <author><code>1003</code><format>6</format></author>
+                        <title><code>4</code><format>6</format></title>
+                        <issn><code>8</code><format>1</format></issn>
+                        <publisher><code>1018</code><format>6</format></publisher>
+                        <pubdate><code>31</code><format>1</format></pubdate>
+                        <item_type><code>1001</code><format>1</format></item_type>
+                    </attrs>
+                </biblios>
+
+                <loc>
+                    <!-- LoC does not require username/password -->
+                    <name>loc</name>
+                    <host>z3950.loc.gov</host>
+                    <port>7090</port>
+                    <db>Voyager</db>
+                    <!-- fetch the full record with no holdings. FI is the most common choice -->
+                    <record_format>FI</record_format> 
+
+                    <!-- Record transmission format from the server.  Supported -->
+                    <!-- formats include usmarc and xml (for marcxml).         -->
+                    <transmission_format>usmarc</transmission_format> 
+
+                    <attrs>
+                        <tcn><code>12</code><format>1</format></tcn>
+                        <isbn><code>7</code><format>6</format></isbn>
+                        <lccn><code>9</code><format>1</format></lccn>
+                        <author><code>1003</code><format>6</format></author>
+                        <title><code>4</code><format>6</format></title>
+                        <issn><code>8</code><format>1</format></issn>
+                        <publisher><code>1018</code><format>6</format></publisher>
+                        <pubdate><code>31</code><format>1</format></pubdate>
+                        <item_type><code>1001</code><format>1</format></item_type>
+                    </attrs>
+                </loc>
+
+                <oclc>
+                    <!-- Z3950 settings for OCLC.  Note that OCLC requires username/password -->
+                    <host>zcat.oclc.org</host>
+                    <port>210</port>
+                    <db>OLUCWorldCat</db>
+                    <attrs>
+                        <!--
+                        These are directly from the Bib-1 Attribute Set
+                        http://www.loc.gov/z3950/agency/defns/bib1.html
+                        <code> is the "use attribute", <format> is the "structure attribute"
+                        This just puts some friendly names on the data.
+                        -->
+                        <tcn><code>12</code><format>1</format></tcn>
+                        <isbn><code>7</code><format>6</format></isbn>
+                        <lccn><code>9</code><format>1</format></lccn>
+                        <author><code>1003</code><format>6</format></author>
+                        <title><code>4</code><format>6</format></title>
+                        <issn><code>8</code><format>1</format></issn>
+                        <publisher><code>1018</code><format>6</format></publisher>
+                        <pubdate><code>31</code><format>1</format></pubdate>
+                        <item_type><code>1001</code><format>1</format></item_type>
+                    </attrs>
+                </oclc>
+
+            </services>
+        </z3950>
+
+
+        <added_content>
+            <!-- load the OpenLibrary added content module -->
+            <module>OpenILS::WWW::AddedContent::OpenLibrary</module>
+
+            <!--
+            Max number of seconds to wait for an added content request to 
+            return data.  Data not returned within the timeout is considered
+            a failure.
+
+            Note that the pool of Apache processes used by the AddedContent
+            module is the same pool used by core Evergreen processes such as
+            search, circulation, etc. Therefore, the higher you set this
+            timeout value, the more likely you are to run out of available
+            Apache processes resulting in an accidental (or purposeful) denial
+            of service - particularly if the added content server starts
+            responding abnormally slowly.
+
+            The safest option is to disable the AddedContent module completely,
+            but 3 seconds is a compromise between the threat of a denial of
+            service and the enhanced user experience offered by successful added
+            content requests.
+            -->
+            <timeout>3</timeout>
+
+            <!--
+            After added content lookups have been disabled due to too many
+            lookup failures, this is the amount of time to wait before
+            we try again
+            -->
+            <retry_timeout>600</retry_timeout>
+
+            <!--
+            maximum number of consecutive lookup errors a given process can 
+            have before added content lookups are disabled for everyone
+            -->
+            <max_errors>15</max_errors>
+
+            <!-- If a userid is required to access the added content.. -->
+            <userid>MY_USER_ID</userid>
+
+            <!--
+            Base URL for Amazon added content fetching. Not needed by OpenLibrary
+            <base_url>http://images.amazon.com/images/P/</base_url>
+            -->
+
+            <!--
+            Segregating the details for ContentCafe out for easier use.  At some point, we
+            may want to support multiple services at one time.
+            -->
+            <ContentCafe>
+                <userid>MY_USER_ID</userid>
+                <password>MY_PASSWORD</password>
+
+                <!--
+                If no cover/jacket image exists for a given ISBN, then a value of T here will
+                return an 80x120 pixel image containing the text "No Image Available".  A
+                value of 1 will return a 1x1 pixel image.
+                -->
+                <return_behavior_on_no_jacket_image>T</return_behavior_on_no_jacket_image>
+            </ContentCafe>
+
+            <!--
+            You can add free-form settings here and they will be accessible
+            within the added content module
+            -->
+
+        </added_content>
+
+        <!-- no apps are enabled globally by default -->
+        <activeapps/> 
+
+        <cache>
+            <!-- memcache servers -->
+            <global>
+                <servers>
+                    <server>127.0.0.1:11211</server>
+                </servers>
+                <max_cache_time>86400</max_cache_time>
+            </global>
+            <anon>
+                <!-- anonymous cache.  currently, primarily used for web session caching -->
+                <servers>
+                    <server>127.0.0.1:11211</server>
+                </servers>
+                <max_cache_time>1800</max_cache_time>
+                <!-- maximum size of a single cache entry / default = 100k-->
+                <max_cache_size>102400</max_cache_size>
+            </anon>
+        </cache>
+
+        <apps>
+            <!-- Acquisitions server -->
+            <open-ils.acq>
+                <!-- how long to wait between stateful requests before the child process re-joins the pool -->
+                <keepalive>5</keepalive>
+                <!-- true if this service support stateless requests -->
+                <stateless>1</stateless>
+                <!-- implementation language -->
+                <language>perl</language>
+                <!-- name of the library that implements this application -->
+                <implementation>OpenILS::Application::Acq</implementation>
+                <!-- maximum OpenSRF REQUEST within a stateful connection -->
+                <max_requests>100</max_requests>
+            </open-ils.acq>
+
+            <!-- Authentication server -->
+            <open-ils.auth>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>c</language>
+                <implementation>oils_auth.so</implementation>
+                <app_settings>
+                    <!-- defined app-specific settings here -->
+                    <default_timeout>
+                        <!-- default login timeouts based on login type -->
+                        <opac>420</opac>
+                        <staff>7200</staff>
+                        <temp>300</temp>
+                        <persist>2 weeks</persist>
+                    </default_timeout>
+                    <auth_limits>
+                        <seed>30</seed> <!-- amount of time a seed request is valid for -->
+                        <block_time>90</block_time> <!-- amount of time since last auth or seed request to save failure counts -->
+                        <block_count>10</block_count> <!-- number of failures before blocking access -->
+                    </auth_limits>
+                </app_settings>
+            </open-ils.auth>
+
+            <!-- Generic search server -->
+            <open-ils.search>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Search</implementation>
+                <max_requests>93</max_requests>
+                <app_settings>
+                    <marc_html_xsl>oilsMARC21slim2HTML.xsl</marc_html_xsl>
+                    <marc_html_xsl_slim>oilsMARC21slim2HTMLslim.xsl</marc_html_xsl_slim>
+
+                    <spelling_dictionary>
+                        <!-- 
+                            Optionally configure different dictionaries depending on search context.  
+                            If no dictionaries are defined, the default Aspell dictionary is used.
+                        -->
+                        <!--
+                        <default>LOCALSTATEDIR/data/default_dict.txt</default>
+                        <title>LOCALSTATEDIR/data/title_dict.txt</title>
+                        <author>LOCALSTATEDIR/data/author_dict.txt</author>
+                        <subject>LOCALSTATEDIR/data/subject_dict.txt</subject>
+                        <series>LOCALSTATEDIR/data/series_dict.txt</series>
+                        -->
+                    </spelling_dictionary>
+
+                    <!-- Default to using staged search -->
+                    <use_staged_search>true</use_staged_search>
+
+                    <!--
+                        For staged search, we estimate hits based on inclusion or exclusion.
+
+                        Valid settings:
+                            inclusion - visible ratio on superpage
+                            exclusion - excluded ratio on superpage
+                            delete_adjusted_inclusion - included ratio on superpage, ratio adjusted by deleted count
+                            delete_adjusted_exclusion - excluded ratio on superpage, ratio adjusted by deleted count
+
+                        Under normal circumstances, inclusion is the best strategy, and both delete_adjusted variants
+                        will return the same value +/- 1.  The exclusion strategy is the original, and works well
+                        when there are few deleted or excluded records, in other words, when the superpage is not
+                        sparsely populated with visible records.
+                    -->
+                    <estimation_strategy>inclusion</estimation_strategy>
+
+                    <!--
+                        Evergreen uses a cover density algorithm for calculating relative ranking of matches.  There
+                        are several tuning parameters and options available.  By default, no document length normalization
+                        is applied.  From the Postgres documentation on ts_rank_cd() (the function used by Evergreen):
+
+                            Since a longer document has a greater chance of containing a query term it is reasonable 
+                            to take into account document size, e.g., a hundred-word document with five instances of 
+                            a search word is probably more relevant than a thousand-word document with five instances. 
+                            Both ranking functions take an integer normalization option that specifies whether and how 
+                            a document's length should impact its rank. The integer option controls several behaviors, 
+                            so it is a bit mask: you can specify one or more behaviors using | (for example, 2|4).
+
+                                0 (the default) ignores the document length
+
+                                1 divides the rank by 1 + the logarithm of the document length
+
+                                2 divides the rank by the document length
+
+                                4 divides the rank by the mean harmonic distance between extents (this is implemented only by ts_rank_cd)
+
+                                8 divides the rank by the number of unique words in document
+
+                                16 divides the rank by 1 + the logarithm of the number of unique words in document
+
+                                32 divides the rank by itself + 1
+
+                            If more than one flag bit is specified, the transformations are applied in the order listed.
+
+                            It is important to note that the ranking functions do not use any global information, so it 
+                            is impossible to produce a fair normalization to 1% or 100% as sometimes desired. Normalization 
+                            option 32 (rank/(rank+1)) can be applied to scale all ranks into the range zero to one, but of 
+                            course this is just a cosmetic change; it will not affect the ordering of the search results.
+
+                        In Evergreen, these options are set via search modifiers.  The modifiers are mapped in the
+                        following way:
+
+                            * #CD_logDocumentLength  => 1  :: rank / (1 + LOG(total_word_count))   :: Longer documents slightly less relevant
+                            * #CD_documentLength     => 2  :: rank / total_word_count              :: Longer documents much less relevant
+                            * #CD_meanHarmonic       => 4  :: Word Proximity                       :: Greater matched-word distance is less relevant
+                            * #CD_uniqueWords        => 8  :: rank / unique_word_count             :: Documents with repeated words much less relevant
+                            * #CD_logUniqueWords     => 16 :: rank / (1 + LOG(unique_word_count))  :: Documents with repeated words slightly less relevant
+                            * #CD_selfPlusOne        => 32 :: rank / (1 + rank)                    :: Cosmetic normalization of rank value between 0 and 1
+
+                        Adding one or more of these to the default_CD_modifiers list will cause all searches that use QueryParser to apply them.
+                    -->
+                    <default_CD_modifiers>#CD_documentLength #CD_meanHarmonic #CD_uniqueWords</default_CD_modifiers>
+
+                    <!--
+                        default_preferred_language
+                            Set the global, default preferred languange
+                    -->
+                    <default_preferred_language>eng</default_preferred_language>
+
+                    <!--
+                        default_preferred_language_weight
+                            Set the weight (higher is "better") for the preferred language. Comment out to remove all lanuage weighting by default.
+                    -->
+                    <default_preferred_language_weight>5</default_preferred_language_weight>
+
+                    <!-- Baseline number of records to check for hit estimation. -->
+                    <superpage_size>1000</superpage_size>
+
+                    <!-- How many superpages to consider for searching overall. -->
+                    <max_superpages>10</max_superpages>
+
+                    <!-- zip code database file -->
+                    <!--<zips_file>LOCALSTATEDIR/data/zips.txt</zips_file>-->
+                </app_settings>
+            </open-ils.search>
+
+            <!-- server for accessing user info -->
+            <open-ils.actor>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Actor</implementation>
+                <max_requests>93</max_requests>
+                <!-- set this to 'true' to have barcode search also search patron records by unique ID -->
+                <app_settings>
+                    <id_as_barcode>false</id_as_barcode>
+                </app_settings>
+            </open-ils.actor>
+
+            <open-ils.booking>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Booking</implementation>
+                <max_requests>199</max_requests>
+                <app_settings>
+                </app_settings>
+            </open-ils.booking>
+
+            <open-ils.cat>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Cat</implementation>
+                <max_requests>199</max_requests>
+                <app_settings>
+                    <marctemplates>
+                        <K_book>LOCALSTATEDIR/templates/marc/k_book.xml</K_book>
+                    </marctemplates>
+                </app_settings>
+            </open-ils.cat>
+
+            <open-ils.supercat>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::SuperCat</implementation>
+                <max_requests>199</max_requests>
+            </open-ils.supercat>
+
+            <!-- server for accessing user info -->
+            <open-ils.trigger>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Trigger</implementation>
+                <max_requests>93</max_requests>
+                <app_settings>
+                    <!-- number of parallel open-ils.trigger processes to use for collection and reaction -->
+                    <!--
+                    <parallel>
+                        <collect>3</collect>
+                        <react>3</react>
+                    </parallel>
+                    -->
+                </app_settings>
+            </open-ils.trigger>
+
+            <opensrf.math>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>c</language>
+                <implementation>osrf_math.so</implementation>
+            </opensrf.math>
+
+            <opensrf.dbmath> 
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>c</language>
+                <implementation>osrf_dbmath.so</implementation>
+            </opensrf.dbmath>
+
+            <open-ils.penalty>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Penalty</implementation>
+                <max_requests>99</max_requests>
+                <app_settings>
+                    <patron_penalty>penalty/patron_penalty.js</patron_penalty>
+                    <script_path>LIBDIR/javascript</script_path>
+                    <script_path>LOCALSTATEDIR</script_path>
+                    <script_path>LOCALSTATEDIR/catalog</script_path>
+                </app_settings>
+            </open-ils.penalty>
+
+            <open-ils.justintime>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::JustInTime</implementation>
+                <max_requests>199</max_requests>
+                <app_settings>
+                </app_settings>
+            </open-ils.justintime>
+
+            <open-ils.circ> 
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Circ</implementation>
+                <max_requests>99</max_requests>
+                <app_settings>
+                    <notify_hold>
+                        <email>false</email> <!-- set to false to disable hold notice emails -->
+                    </notify_hold>
+
+                    <!-- circulation policy scripts -->
+                    <script_path>LIBDIR/javascript</script_path>
+                    <script_path>LOCALSTATEDIR</script_path>
+                    <script_path>LOCALSTATEDIR/catalog</script_path>
+                    <legacy_script_support>false</legacy_script_support>
+                    <scripts> 
+                        <circ_permit_patron>circ/circ_permit_patron.js</circ_permit_patron>
+                        <circ_permit_copy>circ/circ_permit_copy.js</circ_permit_copy>
+                        <circ_duration>circ/circ_duration.js</circ_duration>
+                        <circ_recurring_fines>circ/circ_recurring_fines.js</circ_recurring_fines>
+                        <circ_max_fines>circ/circ_max_fines.js</circ_max_fines>
+                        <circ_permit_renew>circ/circ_permit_renew.js</circ_permit_renew>
+                        <circ_permit_hold>circ/circ_permit_hold.js</circ_permit_hold>
+                    </scripts>               
+
+                    <circ_modifiers>
+                        <mod>art</mod>
+                        <mod>atlas</mod>
+                        <mod>audiobook</mod>
+                        <mod>av</mod>
+                        <mod>new-av</mod>
+                        <mod>bestseller</mod>
+                        <mod>bestsellernh</mod>
+                        <mod>book</mod>
+                        <mod>cd</mod>
+                        <mod>dvd</mod>
+                        <mod>dvd-long</mod>
+                        <mod>e-book</mod>
+                        <mod>equipment</mod>
+                        <mod>filmstrip</mod>
+                        <mod>kit</mod>
+                        <mod>magazine</mod>
+                        <mod>map</mod>
+                        <mod>microform</mod>
+                        <mod>music</mod>
+                        <mod>record</mod>
+                        <mod>software</mod>
+                        <mod>softwrlong</mod>
+                        <mod>equip-long</mod>
+                        <mod>talking book</mod>
+                        <mod>toy</mod>
+                        <mod>video</mod>
+                        <mod>video-long</mod>
+                    </circ_modifiers>
+
+                    <billing_types>
+                        <type>Miscellaneous</type>
+                        <type>Overdue materials</type>
+                        <type>Fee for placing a hold</type>
+                        <type>Fee for checking out a book</type>
+                        <type>Fee for library card</type>
+                        <type>Miscellaneous charges</type>
+                        <type>Lost materials</type>
+                        <type>Damaged material</type>
+                        <type>Overdue Reserves charge</type>
+                        <type>Recall overdue</type>
+                        <type>Fee for processing lost library materials</type>
+                        <type>Fee for sending patron bills to collection agency</type>
+                        <type>Fee for interlibrary loan</type>
+                        <type>Fee for copies</type>
+                        <type>Money advanced to pay for telephone use</type>
+                        <type>Deposit fee</type>
+                        <type>Fee for disk</type>
+                        <type>Fee for faxing</type>
+                        <type>Fee for laminating</type>
+                        <type>Fee for room cleaning</type>
+                        <type>Deposit returned; fee refund</type>
+                        <type>Sale items</type>
+                        <type>Fee for lost card</type>
+                        <type>Long overdue items</type>
+                        <type>Lost/Replacement Cassette</type>
+                        <type>Returned Check</type>
+                    </billing_types>
+                </app_settings>
+            </open-ils.circ>
+
+            <open-ils.ingest>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <implementation>OpenILS::Application::Ingest</implementation>
+                <language>perl</language>
+                <max_requests>1000000</max_requests>
+                <app_settings>
+                    <script_path>LIBDIR/javascript/</script_path>
+                    <script_path>LOCALSTATEDIR/catalog/</script_path>
+                    <script_path>LOCALSTATEDIR/web/opac/common/js/</script_path>
+                    <scripts>
+                        <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
+                        <biblio_descriptor>biblio_descriptor.js</biblio_descriptor>
+                    </scripts>
+                </app_settings>
+            </open-ils.ingest>
+
+            <open-ils.storage>
+                <keepalive>10</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Storage</implementation>
+                <app_settings>
+                    <script_path>LIBDIR/javascript/</script_path>
+                    <script_path>LOCALSTATEDIR/catalog/</script_path>
+                    <scripts>
+                        <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
+                    </scripts>
+                    <databases>
+                        <driver>Pg</driver>
+                        <database>
+                            <type>master</type>
+                            <weight>2</weight>
+                            <user>postgres</user>
+                            <host>localhost</host>
+                            <port>5432</port>
+                            <pw>postgres</pw>
+                            <db>evergreen</db>
+                            <client_encoding>UTF-8</client_encoding>
+                        </database>
+                    </databases>
+                </app_settings>
+            </open-ils.storage>
+
+            <open-ils.cstore>
+                <keepalive>6</keepalive>
+                <stateless>1</stateless>
+                <language>C</language>
+                <implementation>oils_cstore.so</implementation>
+                <app_settings>
+                    <max_query_recursion>100</max_query_recursion>
+                    <driver>pgsql</driver>
+                    <database>
+                        <type>master</type>
+                        <weight>2</weight>
+                        <user>postgres</user>
+                        <host>localhost</host>
+                        <port>5432</port>
+                        <pw>postgres</pw>
+                        <db>evergreen</db>
+                        <client_encoding>UTF-8</client_encoding>
+                    </database>
+                </app_settings>
+            </open-ils.cstore>
+
+            <open-ils.pcrud>
+                <keepalive>6</keepalive>
+                <migratable>1</migratable>
+                <stateless>1</stateless>
+                <language>C</language>
+                <implementation>oils_pcrud.so</implementation>
+
+                <app_settings>
+                    <IDL>SYSCONFDIR/fm_IDL.xml</IDL>
+                    <driver>pgsql</driver>
+                    <database>
+                        <type>master</type>
+                        <weight>2</weight>
+                        <user>postgres</user>
+                        <host>localhost</host>
+                        <port>5432</port>
+                        <pw>postgres</pw>
+                        <db>evergreen</db>
+                        <client_encoding>UTF-8</client_encoding>
+                    </database>
+                </app_settings>
+            </open-ils.pcrud>
+
+            <open-ils.qstore>
+                <keepalive>6</keepalive>
+                <stateless>1</stateless>
+                <language>C</language>
+                <implementation>oils_qstore.so</implementation>
+                <app_settings>
+                    <driver>pgsql</driver>
+                    <database>
+                        <type>master</type>
+                        <weight>2</weight>
+                        <user>postgres</user>
+                        <host>localhost</host>
+                        <port>5432</port>
+                        <pw>postgres</pw>
+                        <db>evergreen</db>
+                        <client_encoding>UTF-8</client_encoding>
+                    </database>
+                </app_settings>
+            </open-ils.qstore>
+
+            <opensrf.settings>
+                <keepalive>1</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenSRF::Application::Settings</implementation>
+                <max_requests>17</max_requests>
+            </opensrf.settings>
+
+            <open-ils.collections>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Collections</implementation>
+                <max_requests>17</max_requests>
+            </open-ils.collections>
+
+            <open-ils.reporter>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Reporter</implementation>
+                <max_requests>99</max_requests>
+            </open-ils.reporter>
+
+            <open-ils.reporter-store>
+                <keepalive>6</keepalive>
+                <stateless>1</stateless>
+                <language>C</language>
+                <implementation>oils_rstore.so</implementation>
+                <app_settings>
+                    <driver>pgsql</driver>
+                    <database>
+                        <type>master</type>
+                        <weight>2</weight>
+                        <user>postgres</user>
+                        <host>localhost</host>
+                        <port>5432</port>
+                        <pw>postgres</pw>
+                        <db>evergreen</db>
+                        <client_encoding>UTF-8</client_encoding>
+                    </database>
+                </app_settings>
+            </open-ils.reporter-store>
+
+<!-- resolver_type defaults to sfx but can also be cufts -->
+<!--
+            <open-ils.resolver>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::ResolverResolver</implementation>
+                <max_requests>93</max_requests>
+                <app_settings>
+                    <cache_timeout>86400</cache_timeout>
+                    <request_timeout>10</request_timeout>
+                    <default_url_base>http://path/to/sfx_or_cufts</default_url_base>
+                    <resolver_type>sfx</resolver_type>
+                </app_settings>
+            </open-ils.resolver>
+-->
+
+            <open-ils.permacrud>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::PermaCrud</implementation>
+                <max_requests>17</max_requests>
+            </open-ils.permacrud>
+
+            <open-ils.fielder>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Fielder</implementation>
+                <max_requests>17</max_requests>
+            </open-ils.fielder>
+
+            <open-ils.vandelay>
+                <keepalive>5</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Vandelay</implementation>
+                <max_requests>100</max_requests>
+                <app_settings>
+                    <databases>
+                        <!-- temporary location for MARC import files.  
+                            Files will be deleted after records are spooled.
+                            *note:  in a multi-brick environment, this will need to
+                            be on a write-able NFS share.  -->
+                        <importer>/tmp</importer>
+                    </databases>
+                </app_settings>
+            </open-ils.vandelay>
+
+            <open-ils.serial>
+                <keepalive>3</keepalive>
+                <stateless>1</stateless>
+                <language>perl</language>
+                <implementation>OpenILS::Application::Serial</implementation>
+                <max_requests>17</max_requests>
+                <app_settings>
+                </app_settings>
+            </open-ils.serial>
+
+        </apps>
+    </default>
+
+    <hosts>
+        <brick1.localhost>
+            <!-- ^-=-
+            This needs to match the brick's FQDN.
+
+            For Linux you can use the following command:
+            $ perl -MNet::Domain -e 'print Net::Domain::hostfqdn() . "\n";'
+
+            Use of the multibrick config with localhost is not recommended.
+            -->
+
+            <!-- Brick specific directories, for when you are running on NFS shares -->
+            <dirs>
+                <log>LOCALSTATEDIR/brick1/log</log> <!-- unix::server log files -->
+                <sock>LOCALSTATEDIR/brick1/lock</sock> <!-- unix::server sock files -->
+                <pid>LOCALSTATEDIR/brick1/run</pid>
+            </dirs>
+
+            <activeapps>
+                <!-- services hosted on this machine -->
+                <appname>opensrf.settings</appname> 
+                <appname>opensrf.math</appname> 
+                <appname>opensrf.dbmath</appname> 
+                <appname>open-ils.acq</appname> 
+                <appname>open-ils.booking</appname>
+                <appname>open-ils.cat</appname> 
+                <appname>open-ils.supercat</appname> 
+                <appname>open-ils.search</appname> 
+                <appname>open-ils.circ</appname> 
+                <appname>open-ils.actor</appname> 
+                <appname>open-ils.auth</appname> 
+                <appname>open-ils.storage</appname>  
+                <appname>open-ils.penalty</appname>  
+                <appname>open-ils.justintime</appname>  
+                <appname>open-ils.cstore</appname>  
+                <appname>open-ils.collections</appname>  
+                <appname>open-ils.ingest</appname>  
+                <appname>open-ils.reporter</appname>  
+                <appname>open-ils.reporter-store</appname>  
+                <!-- <appname>open-ils.resolver</appname> -->
+                <appname>open-ils.permacrud</appname>  
+                <appname>open-ils.pcrud</appname>  
+                <appname>open-ils.trigger</appname>  
+                <appname>open-ils.fielder</appname>  
+                <appname>open-ils.vandelay</appname>  
+                <appname>open-ils.serial</appname>  
+            </activeapps>
+
+
+            <apps>
+                <!-- Per-machine unix_config blocks for each service -->
+                <open-ils.acq>
+                    <unix_config>
+                        <!--
+                        maximum number of top level requests coming to 
+                        this child before the child is recycled
+                        -->
+                        <max_requests>100</max_requests>
+                        <!-- min children to fork -->
+                        <min_children>1</min_children>
+                        <!-- max possible children to fork -->
+                        <max_children>15</max_children>
+                        <!--
+                        C forking implementation does not support 
+                        min/max idle children, but may in the future
+                        -->
+
+                        <!-- min idle children -->
+                        <min_spare_children>1</min_spare_children>
+                        <!-- max idle children -->
+                        <max_spare_children>5</max_spare_children>
+                        <!-- currently, only Perl uses the following 3 settings -->
+                        <unix_sock>open-ils.acq_unix.sock</unix_sock>
+                        <unix_pid>open-ils.acq_unix.pid</unix_pid>
+                        <unix_log>open-ils.acq_unix.log</unix_log>
+                    </unix_config>
+                </open-ils.acq>
+                <open-ils.auth>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.auth>
+                <open-ils.search>
+                    <unix_config>
+                        <unix_sock>open-ils.search_unix.sock</unix_sock>
+                        <unix_pid>open-ils.search_unix.pid</unix_pid>
+                        <unix_log>open-ils.search_unix.log</unix_log>
+
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.search>
+                <open-ils.actor>
+                    <unix_config>
+                        <unix_sock>open-ils.actor_unix.sock</unix_sock>
+                        <unix_pid>open-ils.actor_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.actor_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.actor>
+                <open-ils.booking>
+                    <unix_config>
+                        <unix_sock>open-ils.booking_unix.sock</unix_sock>
+                        <unix_pid>open-ils.booking_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.booking_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.booking>
+                <open-ils.cat>
+                    <unix_config>
+                        <unix_sock>open-ils.cat_unix.sock</unix_sock>
+                        <unix_pid>open-ils.cat_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.cat_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.cat>
+                <open-ils.supercat>
+                    <unix_config>
+                        <unix_sock>open-ils.supercat_unix.sock</unix_sock>
+                        <unix_pid>open-ils.supercat_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.supercat_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.supercat>
+                <open-ils.trigger>
+                    <unix_config>
+                        <unix_sock>open-ils.trigger_unix.sock</unix_sock>
+                        <unix_pid>open-ils.trigger_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.trigger_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.trigger>
+                <opensrf.math>
+                    <unix_config>
+                        <unix_sock>opensrf.math_unix.sock</unix_sock>
+                        <unix_pid>opensrf.math_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>opensrf.math_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.math>
+                <opensrf.dbmath> 
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>opensrf.dbmath_unix.log</unix_log>
+                        <unix_sock>opensrf.dbmath_unix.sock</unix_sock>
+                        <unix_pid>opensrf.dbmath_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children> 
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.dbmath>
+                <open-ils.penalty>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.penalty_unix.log</unix_log>
+                        <unix_sock>open-ils.penalty_unix.sock</unix_sock>
+                        <unix_pid>open-ils.penalty_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.penalty>
+                <open-ils.justintime>
+                    <unix_config>
+                        <unix_sock>open-ils.justintime_unix.sock</unix_sock>
+                        <unix_pid>open-ils.justintime_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.justintime_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.justintime>
+                <open-ils.circ>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.circ_unix.log</unix_log>
+                        <unix_sock>open-ils.circ_unix.sock</unix_sock>
+                        <unix_pid>open-ils.circ_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children> 
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.circ>
+                <open-ils.ingest>
+                    <unix_config>
+                        <max_requests>1000000</max_requests>
+                        <unix_log>open-ils.ingest-unix.log</unix_log>
+                        <unix_sock>open-ils.ingest-unix.sock</unix_sock>
+                        <unix_pid>open-ils.ingest-unix.pid</unix_pid>
+                        <min_children>5</min_children>
+                        <max_children>20</max_children>
+                        <min_spare_children>2</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.ingest>
+                <open-ils.storage>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.storage_unix.log</unix_log>
+                        <unix_sock>open-ils.storage_unix.sock</unix_sock>
+                        <unix_pid>open-ils.storage_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.storage>
+                <open-ils.cstore>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.cstore>
+                <open-ils.pcrud>
+                    <unix_config>
+                        <unix_log>open-ils.pcrud.log</unix_log>
+                        <unix_sock>open-ils.pcrud.sock</unix_sock>
+                        <unix_pid>open-ils.pcrud.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.pcrud>
+                <open-ils.qstore>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.qstore>
+                <opensrf.settings>
+                    <unix_config>
+                        <unix_sock>opensrf.settings_unix.sock</unix_sock>
+                        <unix_pid>opensrf.settings_unix.pid</unix_pid>
+                        <max_requests>300</max_requests>
+                        <unix_log>opensrf.settings_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.settings>
+                <open-ils.collections>
+                    <unix_config>
+                        <unix_sock>open-ils.collections_unix.sock</unix_sock>
+                        <unix_pid>open-ils.collections_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.collections_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.collections>
+                <open-ils.reporter>
+                    <unix_config>
+                        <unix_sock>open-ils.reporter_unix.sock</unix_sock>
+                        <unix_pid>open-ils.reporter_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.reporter_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.reporter>
+                <open-ils.reporter-store>
+                    <unix_config>
+                        <max_requests>400</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.reporter-store>
+<!--
+                <open-ils.resolver>
+                    <unix_config>
+                        <unix_sock>open-ils.resolver_unix.sock</unix_sock>
+                        <unix_pid>open-ils.resolver_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.resolver_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.resolver>
+-->
+                <open-ils.permacrud>
+                    <unix_config>
+                        <unix_sock>open-ils.permacrud_unix.sock</unix_sock>
+                        <unix_pid>open-ils.permacrud_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.permacrud_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.permacrud>
+                <open-ils.fielder>
+                    <unix_config>
+                        <unix_sock>open-ils.fielder_unix.sock</unix_sock>
+                        <unix_pid>open-ils.fielder_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.fielder_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.fielder>
+                <open-ils.vandelay>
+                    <unix_config>
+                        <unix_sock>vandelay_unix.sock</unix_sock>
+                        <unix_pid>vandelay_unix.pid</unix_pid>
+                        <unix_log>vandelay_unix.log</unix_log>
+                        <max_requests>100</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.vandelay>
+                <open-ils.serial>
+                    <unix_config>
+                        <unix_sock>open-ils.serial_unix.sock</unix_sock>
+                        <unix_pid>open-ils.serial_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.serial_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.serial>
+            </apps>
+        </brick1.localhost>
+
+        <brick2.localhost>
+            <!-- ^-=-
+            This needs to match the brick's FQDN.
+
+            For Linux you can use the following command:
+            $ perl -MNet::Domain -e 'print Net::Domain::hostfqdn() . "\n";'
+
+            Use of the multibrick config with localhost is not recommended.
+            -->
+
+            <!-- Brick specific directories, for when you are running on NFS shares -->
+            <dirs>
+                <log>LOCALSTATEDIR/brick2/log</log> <!-- unix::server log files -->
+                <sock>LOCALSTATEDIR/brick2/lock</sock> <!-- unix::server sock files -->
+                <pid>LOCALSTATEDIR/brick2/run</pid>
+            </dirs>
+
+            <activeapps>
+                <!-- services hosted on this machine -->
+                <appname>opensrf.settings</appname> 
+                <appname>opensrf.math</appname> 
+                <appname>opensrf.dbmath</appname> 
+                <appname>open-ils.acq</appname> 
+                <appname>open-ils.booking</appname>
+                <appname>open-ils.cat</appname> 
+                <appname>open-ils.supercat</appname> 
+                <appname>open-ils.search</appname> 
+                <appname>open-ils.circ</appname> 
+                <appname>open-ils.actor</appname> 
+                <appname>open-ils.auth</appname> 
+                <appname>open-ils.storage</appname>  
+                <appname>open-ils.penalty</appname>  
+                <appname>open-ils.justintime</appname>  
+                <appname>open-ils.cstore</appname>  
+                <appname>open-ils.collections</appname>  
+                <appname>open-ils.ingest</appname>  
+                <appname>open-ils.reporter</appname>  
+                <appname>open-ils.reporter-store</appname>  
+                <!-- <appname>open-ils.resolver</appname> -->
+                <appname>open-ils.permacrud</appname>  
+                <appname>open-ils.pcrud</appname>  
+                <appname>open-ils.trigger</appname>  
+                <appname>open-ils.fielder</appname>  
+                <appname>open-ils.vandelay</appname>  
+                <appname>open-ils.serial</appname>  
+            </activeapps>
+
+
+            <apps>
+                <!-- Per-machine unix_config blocks for each service -->
+                <open-ils.acq>
+                    <unix_config>
+                        <!--
+                        maximum number of top level requests coming to 
+                        this child before the child is recycled
+                        -->
+                        <max_requests>100</max_requests>
+                        <!-- min children to fork -->
+                        <min_children>1</min_children>
+                        <!-- max possible children to fork -->
+                        <max_children>15</max_children>
+                        <!--
+                        C forking implementation does not support 
+                        min/max idle children, but may in the future
+                        -->
+
+                        <!-- min idle children -->
+                        <min_spare_children>1</min_spare_children>
+                        <!-- max idle children -->
+                        <max_spare_children>5</max_spare_children>
+                        <!-- currently, only Perl uses the following 3 settings -->
+                        <unix_sock>open-ils.acq_unix.sock</unix_sock>
+                        <unix_pid>open-ils.acq_unix.pid</unix_pid>
+                        <unix_log>open-ils.acq_unix.log</unix_log>
+                    </unix_config>
+                </open-ils.acq>
+                <open-ils.auth>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.auth>
+                <open-ils.search>
+                    <unix_config>
+                        <unix_sock>open-ils.search_unix.sock</unix_sock>
+                        <unix_pid>open-ils.search_unix.pid</unix_pid>
+                        <unix_log>open-ils.search_unix.log</unix_log>
+
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.search>
+                <open-ils.actor>
+                    <unix_config>
+                        <unix_sock>open-ils.actor_unix.sock</unix_sock>
+                        <unix_pid>open-ils.actor_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.actor_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.actor>
+                <open-ils.booking>
+                    <unix_config>
+                        <unix_sock>open-ils.booking_unix.sock</unix_sock>
+                        <unix_pid>open-ils.booking_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.booking_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.booking>
+                <open-ils.cat>
+                    <unix_config>
+                        <unix_sock>open-ils.cat_unix.sock</unix_sock>
+                        <unix_pid>open-ils.cat_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.cat_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.cat>
+                <open-ils.supercat>
+                    <unix_config>
+                        <unix_sock>open-ils.supercat_unix.sock</unix_sock>
+                        <unix_pid>open-ils.supercat_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.supercat_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.supercat>
+                <open-ils.trigger>
+                    <unix_config>
+                        <unix_sock>open-ils.trigger_unix.sock</unix_sock>
+                        <unix_pid>open-ils.trigger_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.trigger_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.trigger>
+                <opensrf.math>
+                    <unix_config>
+                        <unix_sock>opensrf.math_unix.sock</unix_sock>
+                        <unix_pid>opensrf.math_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>opensrf.math_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.math>
+                <opensrf.dbmath> 
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>opensrf.dbmath_unix.log</unix_log>
+                        <unix_sock>opensrf.dbmath_unix.sock</unix_sock>
+                        <unix_pid>opensrf.dbmath_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children> 
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.dbmath>
+                <open-ils.penalty>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.penalty_unix.log</unix_log>
+                        <unix_sock>open-ils.penalty_unix.sock</unix_sock>
+                        <unix_pid>open-ils.penalty_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.penalty>
+                <open-ils.justintime>
+                    <unix_config>
+                        <unix_sock>open-ils.justintime_unix.sock</unix_sock>
+                        <unix_pid>open-ils.justintime_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.justintime_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.justintime>
+                <open-ils.circ>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.circ_unix.log</unix_log>
+                        <unix_sock>open-ils.circ_unix.sock</unix_sock>
+                        <unix_pid>open-ils.circ_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children> 
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.circ>
+                <open-ils.ingest>
+                    <unix_config>
+                        <max_requests>1000000</max_requests>
+                        <unix_log>open-ils.ingest-unix.log</unix_log>
+                        <unix_sock>open-ils.ingest-unix.sock</unix_sock>
+                        <unix_pid>open-ils.ingest-unix.pid</unix_pid>
+                        <min_children>5</min_children>
+                        <max_children>20</max_children>
+                        <min_spare_children>2</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.ingest>
+                <open-ils.storage>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.storage_unix.log</unix_log>
+                        <unix_sock>open-ils.storage_unix.sock</unix_sock>
+                        <unix_pid>open-ils.storage_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.storage>
+                <open-ils.cstore>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.cstore>
+                <open-ils.pcrud>
+                    <unix_config>
+                        <unix_log>open-ils.pcrud.log</unix_log>
+                        <unix_sock>open-ils.pcrud.sock</unix_sock>
+                        <unix_pid>open-ils.pcrud.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.pcrud>
+                <open-ils.qstore>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.qstore>
+                <opensrf.settings>
+                    <unix_config>
+                        <unix_sock>opensrf.settings_unix.sock</unix_sock>
+                        <unix_pid>opensrf.settings_unix.pid</unix_pid>
+                        <max_requests>300</max_requests>
+                        <unix_log>opensrf.settings_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.settings>
+                <open-ils.collections>
+                    <unix_config>
+                        <unix_sock>open-ils.collections_unix.sock</unix_sock>
+                        <unix_pid>open-ils.collections_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.collections_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.collections>
+                <open-ils.reporter>
+                    <unix_config>
+                        <unix_sock>open-ils.reporter_unix.sock</unix_sock>
+                        <unix_pid>open-ils.reporter_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.reporter_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.reporter>
+                <open-ils.reporter-store>
+                    <unix_config>
+                        <max_requests>400</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.reporter-store>
+<!--
+                <open-ils.resolver>
+                    <unix_config>
+                        <unix_sock>open-ils.resolver_unix.sock</unix_sock>
+                        <unix_pid>open-ils.resolver_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.resolver_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.resolver>
+-->
+                <open-ils.permacrud>
+                    <unix_config>
+                        <unix_sock>open-ils.permacrud_unix.sock</unix_sock>
+                        <unix_pid>open-ils.permacrud_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.permacrud_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.permacrud>
+                <open-ils.fielder>
+                    <unix_config>
+                        <unix_sock>open-ils.fielder_unix.sock</unix_sock>
+                        <unix_pid>open-ils.fielder_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.fielder_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.fielder>
+                <open-ils.vandelay>
+                    <unix_config>
+                        <unix_sock>vandelay_unix.sock</unix_sock>
+                        <unix_pid>vandelay_unix.pid</unix_pid>
+                        <unix_log>vandelay_unix.log</unix_log>
+                        <max_requests>100</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.vandelay>
+                <open-ils.serial>
+                    <unix_config>
+                        <unix_sock>open-ils.serial_unix.sock</unix_sock>
+                        <unix_pid>open-ils.serial_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.serial_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.serial>
+            </apps>
+        </brick2.localhost>
+
+
+        <localhost>
+            <!--
+            This block is for testing with the -l flag passed to osrf_ctl.sh
+
+            Use of the -l flag normally in a multibrick is not recommended.
+            -->
+
+            <!-- Brick specific directories, for when you are running on NFS shares -->
+            <dirs>
+                <log>LOCALSTATEDIR/log</log> <!-- unix::server log files -->
+                <sock>LOCALSTATEDIR/lock</sock> <!-- unix::server sock files -->
+                <pid>LOCALSTATEDIR/run</pid>
+            </dirs>
+
+            <activeapps>
+                <!-- services hosted on this machine -->
+                <appname>opensrf.settings</appname> 
+                <appname>opensrf.math</appname> 
+                <appname>opensrf.dbmath</appname> 
+                <appname>open-ils.acq</appname> 
+                <appname>open-ils.booking</appname>
+                <appname>open-ils.cat</appname> 
+                <appname>open-ils.supercat</appname> 
+                <appname>open-ils.search</appname> 
+                <appname>open-ils.circ</appname> 
+                <appname>open-ils.actor</appname> 
+                <appname>open-ils.auth</appname> 
+                <appname>open-ils.storage</appname>  
+                <appname>open-ils.penalty</appname>  
+                <appname>open-ils.justintime</appname>  
+                <appname>open-ils.cstore</appname>  
+                <appname>open-ils.collections</appname>  
+                <appname>open-ils.ingest</appname>  
+                <appname>open-ils.reporter</appname>  
+                <appname>open-ils.reporter-store</appname>  
+                <!-- <appname>open-ils.resolver</appname> -->
+                <appname>open-ils.permacrud</appname>  
+                <appname>open-ils.pcrud</appname>  
+                <appname>open-ils.trigger</appname>  
+                <appname>open-ils.fielder</appname>  
+                <appname>open-ils.vandelay</appname>  
+                <appname>open-ils.serial</appname>  
+            </activeapps>
+
+
+            <apps>
+                <!-- Per-machine unix_config blocks for each service -->
+                <open-ils.acq>
+                    <unix_config>
+                        <!--
+                        maximum number of top level requests coming to 
+                        this child before the child is recycled
+                        -->
+                        <max_requests>100</max_requests>
+                        <!-- min children to fork -->
+                        <min_children>1</min_children>
+                        <!-- max possible children to fork -->
+                        <max_children>15</max_children>
+                        <!--
+                        C forking implementation does not support 
+                        min/max idle children, but may in the future
+                        -->
+
+                        <!-- min idle children -->
+                        <min_spare_children>1</min_spare_children>
+                        <!-- max idle children -->
+                        <max_spare_children>5</max_spare_children>
+                        <!-- currently, only Perl uses the following 3 settings -->
+                        <unix_sock>open-ils.acq_unix.sock</unix_sock>
+                        <unix_pid>open-ils.acq_unix.pid</unix_pid>
+                        <unix_log>open-ils.acq_unix.log</unix_log>
+                    </unix_config>
+                </open-ils.acq>
+                <open-ils.auth>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.auth>
+                <open-ils.search>
+                    <unix_config>
+                        <unix_sock>open-ils.search_unix.sock</unix_sock>
+                        <unix_pid>open-ils.search_unix.pid</unix_pid>
+                        <unix_log>open-ils.search_unix.log</unix_log>
+
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.search>
+                <open-ils.actor>
+                    <unix_config>
+                        <unix_sock>open-ils.actor_unix.sock</unix_sock>
+                        <unix_pid>open-ils.actor_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.actor_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.actor>
+                <open-ils.booking>
+                    <unix_config>
+                        <unix_sock>open-ils.booking_unix.sock</unix_sock>
+                        <unix_pid>open-ils.booking_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.booking_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.booking>
+                <open-ils.cat>
+                    <unix_config>
+                        <unix_sock>open-ils.cat_unix.sock</unix_sock>
+                        <unix_pid>open-ils.cat_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.cat_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.cat>
+                <open-ils.supercat>
+                    <unix_config>
+                        <unix_sock>open-ils.supercat_unix.sock</unix_sock>
+                        <unix_pid>open-ils.supercat_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.supercat_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.supercat>
+                <open-ils.trigger>
+                    <unix_config>
+                        <unix_sock>open-ils.trigger_unix.sock</unix_sock>
+                        <unix_pid>open-ils.trigger_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.trigger_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.trigger>
+                <opensrf.math>
+                    <unix_config>
+                        <unix_sock>opensrf.math_unix.sock</unix_sock>
+                        <unix_pid>opensrf.math_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>opensrf.math_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.math>
+                <opensrf.dbmath> 
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>opensrf.dbmath_unix.log</unix_log>
+                        <unix_sock>opensrf.dbmath_unix.sock</unix_sock>
+                        <unix_pid>opensrf.dbmath_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children> 
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.dbmath>
+                <open-ils.penalty>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.penalty_unix.log</unix_log>
+                        <unix_sock>open-ils.penalty_unix.sock</unix_sock>
+                        <unix_pid>open-ils.penalty_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.penalty>
+                <open-ils.justintime>
+                    <unix_config>
+                        <unix_sock>open-ils.justintime_unix.sock</unix_sock>
+                        <unix_pid>open-ils.justintime_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.justintime_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.justintime>
+                <open-ils.circ>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.circ_unix.log</unix_log>
+                        <unix_sock>open-ils.circ_unix.sock</unix_sock>
+                        <unix_pid>open-ils.circ_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children> 
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.circ>
+                <open-ils.ingest>
+                    <unix_config>
+                        <max_requests>1000000</max_requests>
+                        <unix_log>open-ils.ingest-unix.log</unix_log>
+                        <unix_sock>open-ils.ingest-unix.sock</unix_sock>
+                        <unix_pid>open-ils.ingest-unix.pid</unix_pid>
+                        <min_children>5</min_children>
+                        <max_children>20</max_children>
+                        <min_spare_children>2</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.ingest>
+                <open-ils.storage>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.storage_unix.log</unix_log>
+                        <unix_sock>open-ils.storage_unix.sock</unix_sock>
+                        <unix_pid>open-ils.storage_unix.pid</unix_pid>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.storage>
+                <open-ils.cstore>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.cstore>
+                <open-ils.pcrud>
+                    <unix_config>
+                        <unix_log>open-ils.pcrud.log</unix_log>
+                        <unix_sock>open-ils.pcrud.sock</unix_sock>
+                        <unix_pid>open-ils.pcrud.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.pcrud>
+                <open-ils.qstore>
+                    <unix_config>
+                        <max_requests>1000</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.qstore>
+                <opensrf.settings>
+                    <unix_config>
+                        <unix_sock>opensrf.settings_unix.sock</unix_sock>
+                        <unix_pid>opensrf.settings_unix.pid</unix_pid>
+                        <max_requests>300</max_requests>
+                        <unix_log>opensrf.settings_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </opensrf.settings>
+                <open-ils.collections>
+                    <unix_config>
+                        <unix_sock>open-ils.collections_unix.sock</unix_sock>
+                        <unix_pid>open-ils.collections_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.collections_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.collections>
+                <open-ils.reporter>
+                    <unix_config>
+                        <unix_sock>open-ils.reporter_unix.sock</unix_sock>
+                        <unix_pid>open-ils.reporter_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.reporter_unix.log</unix_log>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.reporter>
+                <open-ils.reporter-store>
+                    <unix_config>
+                        <max_requests>400</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>10</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.reporter-store>
+<!--
+                <open-ils.resolver>
+                    <unix_config>
+                        <unix_sock>open-ils.resolver_unix.sock</unix_sock>
+                        <unix_pid>open-ils.resolver_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.resolver_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.resolver>
+-->
+                <open-ils.permacrud>
+                    <unix_config>
+                        <unix_sock>open-ils.permacrud_unix.sock</unix_sock>
+                        <unix_pid>open-ils.permacrud_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.permacrud_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.permacrud>
+                <open-ils.fielder>
+                    <unix_config>
+                        <unix_sock>open-ils.fielder_unix.sock</unix_sock>
+                        <unix_pid>open-ils.fielder_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.fielder_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.fielder>
+                <open-ils.vandelay>
+                    <unix_config>
+                        <unix_sock>vandelay_unix.sock</unix_sock>
+                        <unix_pid>vandelay_unix.pid</unix_pid>
+                        <unix_log>vandelay_unix.log</unix_log>
+                        <max_requests>100</max_requests>
+                        <min_children>1</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>1</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.vandelay>
+                <open-ils.serial>
+                    <unix_config>
+                        <unix_sock>open-ils.serial_unix.sock</unix_sock>
+                        <unix_pid>open-ils.serial_unix.pid</unix_pid>
+                        <max_requests>1000</max_requests>
+                        <unix_log>open-ils.serial_unix.log</unix_log>
+                        <min_children>5</min_children>
+                        <max_children>15</max_children>
+                        <min_spare_children>3</min_spare_children>
+                        <max_spare_children>5</max_spare_children>
+                    </unix_config>
+                </open-ils.serial>
+            </apps>
+        </localhost>
+    </hosts>
+
+</opensrf>
index 9eeb330..2cdc91d 100644 (file)
@@ -41,6 +41,7 @@ autojsbinscripts = @srcdir@/extras/autogen.sh \
 
 sysconf_DATA = $(examples)/action_trigger_filters.json.example \
               $(examples)/opensrf.xml.example \
+              $(examples)/opensrf.xml.multibrick.example \
               $(examples)/opensrf_core.xml.example \
               $(examples)/fm_IDL.xml \
               $(examples)/oils_sip.xml.example \
@@ -172,6 +173,9 @@ ilscore-install:
        sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
        sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
        sed -i 's|LIBDIR|@libdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
+       sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.multibrick.example'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.multibrick.example'
+       sed -i 's|LIBDIR|@libdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.multibrick.example'
        sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/autogen.sh'
        sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@bindir@/autogen.sh'
        sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/autogen.sh'