4 Example opensrf config file for OpenILS
8 <opensrf version='0.0.3'>
12 <!-- unless otherwise overidden, use this locale -->
13 <default_locale>en-US</default_locale>
16 <log>LOCALSTATEDIR/log</log> <!-- unix::server log files -->
17 <sock>LOCALSTATEDIR/lock</sock> <!-- unix::server sock files -->
18 <pid>LOCALSTATEDIR/run</pid>
19 <xsl>LOCALSTATEDIR/xsl</xsl>
20 <script>LOCALSTATEDIR</script>
21 <script_lib>LOCALSTATEDIR</script_lib>
22 <templates>LOCALSTATEDIR/templates</templates>
25 <!-- global data visibility settings -->
28 <!-- Set to "true" to require patron opt-in for foreign (non-home_ou) transactions -->
29 <opt_in>false</opt_in>
33 <IDL>SYSCONFDIR/fm_IDL.xml</IDL> <!-- top level IDL file -->
34 <IDL2js>fm_IDL2js.xsl</IDL2js> <!-- IDL JS XSLT -->
37 <server_type>prefork</server_type> <!-- net::server type -->
39 <ils_events>LOCALSTATEDIR/data/ils_events.xml</ils_events> <!-- ILS events description file -->
41 <email_notify> <!-- this will eventually move into the notifications section below... -->
42 <!-- global email notification settings -->
43 <template>LOCALSTATEDIR/data/hold_notification_template.example</template>
44 <smtp_server>localhost</smtp_server>
47 in most cases, this is overridden by location
48 specific config settings. this is just the default
50 <sender_address>evergreen@localhost</sender_address>
55 <!-- global mail server settings -->
56 <smtp_server>localhost</smtp_server>
57 <sender_address>evergreen@localhost</sender_address>
59 <!-- global telephony (asterisk) settings -->
61 <!-- replace all values below when telephony server is configured -->
63 <driver>SIP</driver> <!-- SIP (default) or multi -->
64 <channels> <!-- explicit list of channels used if multi -->
65 <!-- A channel specifies technology/resource -->
66 <channel>Zap/1</channel>
67 <channel>Zap/2</channel>
68 <channel>IAX/user:secret@widgets.biz</channel>
70 <host>localhost</host>
72 <user>evergreen</user>
75 The overall composition of callfiles is determined by the
76 relevant template, but this section can be invoked for callfile
77 configs common to all outbound calls.
78 callfile_lines will be inserted into ALL generated callfiles
79 after the Channel line. This content mat be overridden
80 (in whole) by the org unit setting callfile_lines.
81 Warning: Invalid syntax may break ALL outbound calls.
92 <!-- Overdue notices: DEPRECATED in 2.0 in favour of Action/Trigger Notifications -->
95 <!-- optionally, you can define a sender address per notice type -->
96 <sender_address>overdue@localhost</sender_address>
98 <!-- The system can generate an XML file of overdue notices. This is the
99 directory where they are stored. Files are named overdue.YYYY-MM-DD.xml -->
100 <notice_dir>LOCALSTATEDIR/data/overdue</notice_dir>
101 <combined_template>LOCALSTATEDIR/data/templates/overdue_combined_xml.example</combined_template>
104 <!-- Notify at 7 days overdue -->
105 <notify_interval>7 days</notify_interval>
106 <!-- Options include always, noemail, and never. 'noemail' means a notice
107 will be appended to the notice file only if the patron has no valid email address. -->
108 <file_append>noemail</file_append>
109 <!-- do we attempt email notification? -->
110 <email_notify>false</email_notify>
111 <!-- notice template file -->
112 <email_template>LOCALSTATEDIR/data/templates/overdue_7day.example</email_template>
116 <!-- Courtesy notices: DEPRECATED in 2.0 in favour of Action/Trigger Notifications -->
119 <!-- All circulations that circulate between 5 and 13 days -->
120 <circ_duration_range>
123 </circ_duration_range>
124 <!-- notify at 1 day before the due date -->
125 <notify_interval>1 day</notify_interval>
126 <file_append>false</file_append>
127 <email_notify>false</email_notify>
128 <email_template>LOCALSTATEDIR/data/templates/predue_1day.example</email_template>
133 <!-- Settings for the hold targeter cron job -->
135 <!-- number of parallel processes to use during hold targeting;
136 increasing can speed up (re)targeting a large number of
137 hold requests, but with diminishing returns after a point;
138 if increasing this value, it is recommend to do so slowly
140 <parallel>1</parallel>
143 <!-- Settings for the fine generator cron job -->
145 <!-- number of parallel processes to use during fine generation -->
146 <parallel>1</parallel>
151 Settings for the reporter daemon process
154 <base_uri>https://localhost/reporter/</base_uri>
157 <host>localhost</host>
160 <user>postgres</user>
165 <host>localhost</host>
168 <user>postgres</user>
172 <!-- successful report outputs go here -->
173 <output_base>LOCALSTATEDIR/web/reporter</output_base>
174 <success_template>LOCALSTATEDIR/data/report-success</success_template>
175 <fail_template>LOCALSTATEDIR/data/report-fail</fail_template>
183 <!-- XML-RPC gateway. Do NOT publish unprotected services here -->
185 <!-- list of published services -->
186 <service>opensrf.math</service>
187 <service>opensrf.dbmath</service>
188 <service>open-ils.cat</service>
189 <service>open-ils.search</service>
190 <service>open-ils.circ</service>
191 <service>open-ils.actor</service>
192 <service>open-ils.auth</service>
193 <service>open-ils.collections</service>
194 <service>open-ils.justintime</service>
200 <default>biblios</default>
203 <!-- biblios does not require username/password -->
204 <name>‡biblios.net</name>
205 <host>z3950.biblios.net</host>
207 <db>bibliographic</db>
208 <!-- fetch the full record with no holdings. FI is the most common choice -->
209 <record_format>FI</record_format>
211 <!-- Record transmission format from the server. Supported -->
212 <!-- formats include usmarc and xml (for marcxml). -->
213 <transmission_format>usmarc</transmission_format>
216 <tcn><code>12</code><format>1</format></tcn>
217 <isbn><code>7</code><format>6</format></isbn>
218 <lccn><code>9</code><format>1</format></lccn>
219 <author><code>1003</code><format>6</format></author>
220 <title><code>4</code><format>6</format></title>
221 <issn><code>8</code><format>1</format></issn>
222 <publisher><code>1018</code><format>6</format></publisher>
223 <pubdate><code>31</code><format>1</format></pubdate>
224 <item_type><code>1001</code><format>1</format></item_type>
229 <!-- LoC does not require username/password -->
231 <host>z3950.loc.gov</host>
234 <!-- fetch the full record with no holdings. FI is the most common choice -->
235 <record_format>FI</record_format>
237 <!-- Record transmission format from the server. Supported -->
238 <!-- formats include usmarc and xml (for marcxml). -->
239 <transmission_format>usmarc</transmission_format>
242 <tcn><code>12</code><format>1</format></tcn>
243 <isbn><code>7</code><format>6</format></isbn>
244 <lccn><code>9</code><format>1</format></lccn>
245 <author><code>1003</code><format>6</format></author>
246 <title><code>4</code><format>6</format></title>
247 <issn><code>8</code><format>1</format></issn>
248 <publisher><code>1018</code><format>6</format></publisher>
249 <pubdate><code>31</code><format>1</format></pubdate>
250 <item_type><code>1001</code><format>1</format></item_type>
255 <!-- Z3950 settings for OCLC. Note that OCLC requires username/password -->
256 <host>zcat.oclc.org</host>
258 <db>OLUCWorldCat</db>
261 These are directly from the Bib-1 Attribute Set
262 http://www.loc.gov/z3950/agency/defns/bib1.html
263 <code> is the "use attribute", <format> is the "structure attribute"
264 This just puts some friendly names on the data.
266 <tcn><code>12</code><format>1</format></tcn>
267 <isbn><code>7</code><format>6</format></isbn>
268 <lccn><code>9</code><format>1</format></lccn>
269 <author><code>1003</code><format>6</format></author>
270 <title><code>4</code><format>6</format></title>
271 <issn><code>8</code><format>1</format></issn>
272 <publisher><code>1018</code><format>6</format></publisher>
273 <pubdate><code>31</code><format>1</format></pubdate>
274 <item_type><code>1001</code><format>1</format></item_type>
283 <!-- load the OpenLibrary added content module -->
284 <module>OpenILS::WWW::AddedContent::OpenLibrary</module>
287 Max number of seconds to wait for an added content request to
288 return data. Data not returned within the timeout is considered
291 Note that the pool of Apache processes used by the AddedContent
292 module is the same pool used by core Evergreen processes such as
293 search, circulation, etc. Therefore, the higher you set this
294 timeout value, the more likely you are to run out of available
295 Apache processes resulting in an accidental (or purposeful) denial
296 of service - particularly if the added content server starts
297 responding abnormally slowly.
299 The safest option is to disable the AddedContent module completely,
300 but 3 seconds is a compromise between the threat of a denial of
301 service and the enhanced user experience offered by successful added
307 After added content lookups have been disabled due to too many
308 lookup failures, this is the amount of time to wait before
311 <retry_timeout>600</retry_timeout>
314 maximum number of consecutive lookup errors a given process can
315 have before added content lookups are disabled for everyone
317 <max_errors>15</max_errors>
319 <!-- If a userid is required to access the added content.. -->
320 <userid>MY_USER_ID</userid>
323 Base URL for Amazon added content fetching. Not needed by OpenLibrary
324 <base_url>http://images.amazon.com/images/P/</base_url>
328 Segregating the details for ContentCafe out for easier use. At some point, we
329 may want to support multiple services at one time.
332 <userid>MY_USER_ID</userid>
333 <password>MY_PASSWORD</password>
336 If no cover/jacket image exists for a given ISBN, then a value of T here will
337 return an 80x120 pixel image containing the text "No Image Available". A
338 value of 1 will return a 1x1 pixel image.
340 <return_behavior_on_no_jacket_image>T</return_behavior_on_no_jacket_image>
345 You can add free-form settings here and they will be accessible
346 within the added content module
351 <!-- no apps are enabled globally by default -->
355 <!-- memcache servers -->
358 <server>127.0.0.1:11211</server>
360 <max_cache_time>86400</max_cache_time>
363 <!-- anonymous cache. currently, primarily used for web session caching -->
365 <server>127.0.0.1:11211</server>
367 <max_cache_time>1800</max_cache_time>
368 <!-- maximum size of a single cache entry / default = 100k-->
369 <max_cache_size>102400</max_cache_size>
374 <!-- Acquisitions server -->
376 <!-- how long to wait between stateful requests before the child process re-joins the pool -->
377 <keepalive>5</keepalive>
378 <!-- true if this service support stateless requests -->
379 <stateless>1</stateless>
380 <!-- implementation language -->
381 <language>perl</language>
382 <!-- name of the library that implements this application -->
383 <implementation>OpenILS::Application::Acq</implementation>
384 <!-- maximum OpenSRF REQUEST within a stateful connection -->
385 <max_requests>100</max_requests>
388 maximum number of top level requests coming to
389 this child before the child is recycled
391 <max_requests>100</max_requests>
392 <!-- min children to fork -->
393 <min_children>1</min_children>
394 <!-- max possible children to fork -->
395 <max_children>15</max_children>
397 C forking implementation does not support
398 min/max idle children, but may in the future
401 <!-- min idle children -->
402 <min_spare_children>1</min_spare_children>
403 <!-- max idle children -->
404 <max_spare_children>5</max_spare_children>
405 <!-- currently, only Perl uses the following 3 settings -->
406 <unix_sock>open-ils.acq_unix.sock</unix_sock>
407 <unix_pid>open-ils.acq_unix.pid</unix_pid>
408 <unix_log>open-ils.acq_unix.log</unix_log>
412 <!-- Authentication server -->
414 <keepalive>5</keepalive>
415 <stateless>1</stateless>
416 <language>c</language>
417 <implementation>oils_auth.so</implementation>
419 <max_requests>1000</max_requests>
420 <min_children>1</min_children>
421 <max_children>15</max_children>
422 <min_spare_children>1</min_spare_children>
423 <max_spare_children>5</max_spare_children>
426 <!-- defined app-specific settings here -->
428 <!-- default login timeouts based on login type -->
432 <persist>2 weeks</persist>
435 <seed>30</seed> <!-- amount of time a seed request is valid for -->
436 <block_time>90</block_time> <!-- amount of time since last auth or seed request to save failure counts -->
437 <block_count>10</block_count> <!-- number of failures before blocking access -->
442 <!-- Generic search server -->
444 <keepalive>5</keepalive>
445 <stateless>1</stateless>
446 <language>perl</language>
447 <implementation>OpenILS::Application::Search</implementation>
448 <max_requests>93</max_requests>
450 <unix_sock>open-ils.search_unix.sock</unix_sock>
451 <unix_pid>open-ils.search_unix.pid</unix_pid>
452 <unix_log>open-ils.search_unix.log</unix_log>
454 <max_requests>1000</max_requests>
455 <min_children>1</min_children>
456 <max_children>15</max_children>
457 <min_spare_children>1</min_spare_children>
458 <max_spare_children>5</max_spare_children>
461 <marc_html_xsl>oilsMARC21slim2HTML.xsl</marc_html_xsl>
462 <marc_html_xsl_slim>oilsMARC21slim2HTMLslim.xsl</marc_html_xsl_slim>
464 <spelling_dictionary>
466 Optionally configure different dictionaries depending on search context.
467 If no dictionaries are defined, the default Aspell dictionary is used.
470 <default>LOCALSTATEDIR/data/default_dict.txt</default>
471 <title>LOCALSTATEDIR/data/title_dict.txt</title>
472 <author>LOCALSTATEDIR/data/author_dict.txt</author>
473 <subject>LOCALSTATEDIR/data/subject_dict.txt</subject>
474 <series>LOCALSTATEDIR/data/series_dict.txt</series>
476 </spelling_dictionary>
478 <!-- Default to using staged search -->
479 <use_staged_search>true</use_staged_search>
482 For staged search, we estimate hits based on inclusion or exclusion.
485 inclusion - visible ratio on superpage
486 exclusion - excluded ratio on superpage
487 delete_adjusted_inclusion - included ratio on superpage, ratio adjusted by deleted count
488 delete_adjusted_exclusion - excluded ratio on superpage, ratio adjusted by deleted count
490 Under normal circumstances, inclusion is the best strategy, and both delete_adjusted variants
491 will return the same value +/- 1. The exclusion strategy is the original, and works well
492 when there are few deleted or excluded records, in other words, when the superpage is not
493 sparsely populated with visible records.
495 <estimation_strategy>inclusion</estimation_strategy>
498 Evergreen uses a cover density algorithm for calculating relative ranking of matches. There
499 are several tuning parameters and options available. By default, no document length normalization
500 is applied. From the Postgres documentation on ts_rank_cd() (the function used by Evergreen):
502 Since a longer document has a greater chance of containing a query term it is reasonable
503 to take into account document size, e.g., a hundred-word document with five instances of
504 a search word is probably more relevant than a thousand-word document with five instances.
505 Both ranking functions take an integer normalization option that specifies whether and how
506 a document's length should impact its rank. The integer option controls several behaviors,
507 so it is a bit mask: you can specify one or more behaviors using | (for example, 2|4).
509 0 (the default) ignores the document length
511 1 divides the rank by 1 + the logarithm of the document length
513 2 divides the rank by the document length
515 4 divides the rank by the mean harmonic distance between extents (this is implemented only by ts_rank_cd)
517 8 divides the rank by the number of unique words in document
519 16 divides the rank by 1 + the logarithm of the number of unique words in document
521 32 divides the rank by itself + 1
523 If more than one flag bit is specified, the transformations are applied in the order listed.
525 It is important to note that the ranking functions do not use any global information, so it
526 is impossible to produce a fair normalization to 1% or 100% as sometimes desired. Normalization
527 option 32 (rank/(rank+1)) can be applied to scale all ranks into the range zero to one, but of
528 course this is just a cosmetic change; it will not affect the ordering of the search results.
530 In Evergreen, these options are set via search modifiers. The modifiers are mapped in the
533 * #CD_logDocumentLength => 1 :: rank / (1 + LOG(total_word_count)) :: Longer documents slightly less relevant
534 * #CD_documentLength => 2 :: rank / total_word_count :: Longer documents much less relevant
535 * #CD_meanHarmonic => 4 :: Word Proximity :: Greater matched-word distance is less relevant
536 * #CD_uniqueWords => 8 :: rank / unique_word_count :: Documents with repeated words much less relevant
537 * #CD_logUniqueWords => 16 :: rank / (1 + LOG(unique_word_count)) :: Documents with repeated words slightly less relevant
538 * #CD_selfPlusOne => 32 :: rank / (1 + rank) :: Cosmetic normalization of rank value between 0 and 1
540 Adding one or more of these to the default_CD_modifiers list will cause all searches that use QueryParser to apply them.
542 <default_CD_modifiers>#CD_documentLength #CD_meanHarmonic #CD_uniqueWords</default_CD_modifiers>
545 default_preferred_language
546 Set the global, default preferred languange
548 <default_preferred_language>eng</default_preferred_language>
551 default_preferred_language_weight
552 Set the weight (higher is "better") for the preferred language. Comment out to remove all lanuage weighting by default.
554 <default_preferred_language_weight>5</default_preferred_language_weight>
556 <!-- Baseline number of records to check for hit estimation. -->
557 <superpage_size>1000</superpage_size>
559 <!-- How many superpages to consider for searching overall. -->
560 <max_superpages>10</max_superpages>
562 <!-- zip code database file -->
563 <!--<zips_file>LOCALSTATEDIR/data/zips.txt</zips_file>-->
567 <!-- server for accessing user info -->
569 <keepalive>5</keepalive>
570 <stateless>1</stateless>
571 <language>perl</language>
572 <implementation>OpenILS::Application::Actor</implementation>
573 <max_requests>93</max_requests>
575 <unix_sock>open-ils.actor_unix.sock</unix_sock>
576 <unix_pid>open-ils.actor_unix.pid</unix_pid>
577 <max_requests>1000</max_requests>
578 <unix_log>open-ils.actor_unix.log</unix_log>
579 <min_children>1</min_children>
580 <max_children>15</max_children>
581 <min_spare_children>1</min_spare_children>
582 <max_spare_children>5</max_spare_children>
584 <!-- set this to 'true' to have barcode search also search patron records by unique ID -->
586 <id_as_barcode>false</id_as_barcode>
592 <keepalive>5</keepalive>
593 <stateless>1</stateless>
594 <language>perl</language>
595 <implementation>OpenILS::Application::Booking</implementation>
596 <max_requests>199</max_requests>
598 <unix_sock>open-ils.booking_unix.sock</unix_sock>
599 <unix_pid>open-ils.booking_unix.pid</unix_pid>
600 <max_requests>1000</max_requests>
601 <unix_log>open-ils.booking_unix.log</unix_log>
602 <min_children>1</min_children>
603 <max_children>15</max_children>
604 <min_spare_children>1</min_spare_children>
605 <max_spare_children>5</max_spare_children>
612 <keepalive>5</keepalive>
613 <stateless>1</stateless>
614 <language>perl</language>
615 <implementation>OpenILS::Application::Cat</implementation>
616 <max_requests>199</max_requests>
618 <unix_sock>open-ils.cat_unix.sock</unix_sock>
619 <unix_pid>open-ils.cat_unix.pid</unix_pid>
620 <max_requests>1000</max_requests>
621 <unix_log>open-ils.cat_unix.log</unix_log>
622 <min_children>1</min_children>
623 <max_children>15</max_children>
624 <min_spare_children>1</min_spare_children>
625 <max_spare_children>5</max_spare_children>
629 <K_book>LOCALSTATEDIR/templates/marc/k_book.xml</K_book>
635 <keepalive>5</keepalive>
636 <stateless>1</stateless>
637 <language>perl</language>
638 <implementation>OpenILS::Application::SuperCat</implementation>
639 <max_requests>199</max_requests>
641 <unix_sock>open-ils.supercat_unix.sock</unix_sock>
642 <unix_pid>open-ils.supercat_unix.pid</unix_pid>
643 <max_requests>1000</max_requests>
644 <unix_log>open-ils.supercat_unix.log</unix_log>
645 <min_children>1</min_children>
646 <max_children>15</max_children>
647 <min_spare_children>1</min_spare_children>
648 <max_spare_children>5</max_spare_children>
652 <!-- server for accessing user info -->
654 <keepalive>5</keepalive>
655 <stateless>1</stateless>
656 <language>perl</language>
657 <implementation>OpenILS::Application::Trigger</implementation>
658 <max_requests>93</max_requests>
660 <unix_sock>open-ils.trigger_unix.sock</unix_sock>
661 <unix_pid>open-ils.trigger_unix.pid</unix_pid>
662 <max_requests>1000</max_requests>
663 <unix_log>open-ils.trigger_unix.log</unix_log>
664 <min_children>1</min_children>
665 <max_children>15</max_children>
666 <min_spare_children>1</min_spare_children>
667 <max_spare_children>5</max_spare_children>
670 <!-- number of parallel open-ils.trigger processes to use for collection and reaction -->
681 <keepalive>3</keepalive>
682 <stateless>1</stateless>
683 <language>c</language>
684 <implementation>osrf_math.so</implementation>
686 <unix_sock>opensrf.math_unix.sock</unix_sock>
687 <unix_pid>opensrf.math_unix.pid</unix_pid>
688 <max_requests>1000</max_requests>
689 <unix_log>opensrf.math_unix.log</unix_log>
690 <min_children>1</min_children>
691 <max_children>15</max_children>
692 <min_spare_children>1</min_spare_children>
693 <max_spare_children>5</max_spare_children>
698 <keepalive>3</keepalive>
699 <stateless>1</stateless>
700 <language>c</language>
701 <implementation>osrf_dbmath.so</implementation>
703 <max_requests>1000</max_requests>
704 <unix_log>opensrf.dbmath_unix.log</unix_log>
705 <unix_sock>opensrf.dbmath_unix.sock</unix_sock>
706 <unix_pid>opensrf.dbmath_unix.pid</unix_pid>
707 <min_children>1</min_children>
708 <max_children>15</max_children>
709 <min_spare_children>1</min_spare_children>
710 <max_spare_children>5</max_spare_children>
715 <keepalive>3</keepalive>
716 <stateless>1</stateless>
717 <language>perl</language>
718 <implementation>OpenILS::Application::Penalty</implementation>
719 <max_requests>99</max_requests>
721 <max_requests>1000</max_requests>
722 <unix_log>open-ils.penalty_unix.log</unix_log>
723 <unix_sock>open-ils.penalty_unix.sock</unix_sock>
724 <unix_pid>open-ils.penalty_unix.pid</unix_pid>
725 <min_children>1</min_children>
726 <max_children>15</max_children>
727 <min_spare_children>1</min_spare_children>
728 <max_spare_children>5</max_spare_children>
731 <patron_penalty>penalty/patron_penalty.js</patron_penalty>
732 <script_path>LIBDIR/javascript</script_path>
733 <script_path>LOCALSTATEDIR</script_path>
734 <script_path>LOCALSTATEDIR/catalog</script_path>
738 <open-ils.justintime>
739 <keepalive>5</keepalive>
740 <stateless>1</stateless>
741 <language>perl</language>
742 <implementation>OpenILS::Application::JustInTime</implementation>
743 <max_requests>199</max_requests>
745 <unix_sock>open-ils.justintime_unix.sock</unix_sock>
746 <unix_pid>open-ils.justintime_unix.pid</unix_pid>
747 <max_requests>1000</max_requests>
748 <unix_log>open-ils.justintime_unix.log</unix_log>
749 <min_children>1</min_children>
750 <max_children>15</max_children>
751 <min_spare_children>1</min_spare_children>
752 <max_spare_children>5</max_spare_children>
756 </open-ils.justintime>
759 <keepalive>3</keepalive>
760 <stateless>1</stateless>
761 <language>perl</language>
762 <implementation>OpenILS::Application::Circ</implementation>
763 <max_requests>99</max_requests>
765 <max_requests>1000</max_requests>
766 <unix_log>open-ils.circ_unix.log</unix_log>
767 <unix_sock>open-ils.circ_unix.sock</unix_sock>
768 <unix_pid>open-ils.circ_unix.pid</unix_pid>
769 <min_children>1</min_children>
770 <max_children>15</max_children>
771 <min_spare_children>1</min_spare_children>
772 <max_spare_children>5</max_spare_children>
776 <email>false</email> <!-- set to false to disable hold notice emails -->
779 <!-- circulation policy scripts -->
780 <script_path>LIBDIR/javascript</script_path>
781 <script_path>LOCALSTATEDIR</script_path>
782 <script_path>LOCALSTATEDIR/catalog</script_path>
783 <legacy_script_support>false</legacy_script_support>
785 <circ_permit_patron>circ/circ_permit_patron.js</circ_permit_patron>
786 <circ_permit_copy>circ/circ_permit_copy.js</circ_permit_copy>
787 <circ_duration>circ/circ_duration.js</circ_duration>
788 <circ_recurring_fines>circ/circ_recurring_fines.js</circ_recurring_fines>
789 <circ_max_fines>circ/circ_max_fines.js</circ_max_fines>
790 <circ_permit_renew>circ/circ_permit_renew.js</circ_permit_renew>
791 <circ_permit_hold>circ/circ_permit_hold.js</circ_permit_hold>
800 <mod>bestseller</mod>
801 <mod>bestsellernh</mod>
816 <mod>softwrlong</mod>
817 <mod>equip-long</mod>
818 <mod>talking book</mod>
821 <mod>video-long</mod>
825 <type>Miscellaneous</type>
826 <type>Overdue materials</type>
827 <type>Fee for placing a hold</type>
828 <type>Fee for checking out a book</type>
829 <type>Fee for library card</type>
830 <type>Miscellaneous charges</type>
831 <type>Lost materials</type>
832 <type>Damaged material</type>
833 <type>Overdue Reserves charge</type>
834 <type>Recall overdue</type>
835 <type>Fee for processing lost library materials</type>
836 <type>Fee for sending patron bills to collection agency</type>
837 <type>Fee for interlibrary loan</type>
838 <type>Fee for copies</type>
839 <type>Money advanced to pay for telephone use</type>
840 <type>Deposit fee</type>
841 <type>Fee for disk</type>
842 <type>Fee for faxing</type>
843 <type>Fee for laminating</type>
844 <type>Fee for room cleaning</type>
845 <type>Deposit returned; fee refund</type>
846 <type>Sale items</type>
847 <type>Fee for lost card</type>
848 <type>Long overdue items</type>
849 <type>Lost/Replacement Cassette</type>
850 <type>Returned Check</type>
856 <keepalive>3</keepalive>
857 <stateless>1</stateless>
858 <implementation>OpenILS::Application::Ingest</implementation>
859 <language>perl</language>
860 <max_requests>1000000</max_requests>
862 <max_requests>1000000</max_requests>
863 <unix_log>open-ils.ingest-unix.log</unix_log>
864 <unix_sock>open-ils.ingest-unix.sock</unix_sock>
865 <unix_pid>open-ils.ingest-unix.pid</unix_pid>
866 <min_children>5</min_children>
867 <max_children>20</max_children>
868 <min_spare_children>2</min_spare_children>
869 <max_spare_children>5</max_spare_children>
872 <script_path>LIBDIR/javascript/</script_path>
873 <script_path>LOCALSTATEDIR/catalog/</script_path>
874 <script_path>LOCALSTATEDIR/web/opac/common/js/</script_path>
876 <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
877 <biblio_descriptor>biblio_descriptor.js</biblio_descriptor>
883 <keepalive>10</keepalive>
884 <stateless>1</stateless>
885 <language>perl</language>
886 <implementation>OpenILS::Application::Storage</implementation>
888 <max_requests>1000</max_requests>
889 <unix_log>open-ils.storage_unix.log</unix_log>
890 <unix_sock>open-ils.storage_unix.sock</unix_sock>
891 <unix_pid>open-ils.storage_unix.pid</unix_pid>
892 <min_children>1</min_children>
893 <max_children>10</max_children>
894 <min_spare_children>1</min_spare_children>
895 <max_spare_children>5</max_spare_children>
898 <script_path>LIBDIR/javascript/</script_path>
899 <script_path>LOCALSTATEDIR/catalog/</script_path>
901 <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
908 <user>postgres</user>
909 <host>localhost</host>
913 <client_encoding>UTF-8</client_encoding>
920 <keepalive>6</keepalive>
921 <stateless>1</stateless>
922 <language>C</language>
923 <implementation>oils_cstore.so</implementation>
925 <max_requests>1000</max_requests>
926 <min_children>1</min_children>
927 <max_children>15</max_children>
928 <min_spare_children>1</min_spare_children>
929 <max_spare_children>5</max_spare_children>
932 <max_query_recursion>100</max_query_recursion>
933 <driver>pgsql</driver>
937 <user>postgres</user>
938 <host>localhost</host>
942 <client_encoding>UTF-8</client_encoding>
948 <keepalive>6</keepalive>
949 <migratable>1</migratable>
950 <stateless>1</stateless>
951 <language>C</language>
952 <implementation>oils_pcrud.so</implementation>
955 <unix_log>open-ils.pcrud.log</unix_log>
956 <unix_sock>open-ils.pcrud.sock</unix_sock>
957 <unix_pid>open-ils.pcrud.pid</unix_pid>
958 <max_requests>1000</max_requests>
959 <min_children>1</min_children>
960 <max_children>15</max_children>
961 <min_spare_children>1</min_spare_children>
962 <max_spare_children>5</max_spare_children>
966 <IDL>SYSCONFDIR/fm_IDL.xml</IDL>
967 <driver>pgsql</driver>
971 <user>postgres</user>
972 <host>localhost</host>
976 <client_encoding>UTF-8</client_encoding>
982 <keepalive>6</keepalive>
983 <stateless>1</stateless>
984 <language>C</language>
985 <implementation>oils_qstore.so</implementation>
987 <max_requests>1000</max_requests>
988 <min_children>1</min_children>
989 <max_children>15</max_children>
990 <min_spare_children>1</min_spare_children>
991 <max_spare_children>5</max_spare_children>
994 <driver>pgsql</driver>
998 <user>postgres</user>
999 <host>localhost</host>
1003 <client_encoding>UTF-8</client_encoding>
1009 <keepalive>1</keepalive>
1010 <stateless>1</stateless>
1011 <language>perl</language>
1012 <implementation>OpenSRF::Application::Settings</implementation>
1013 <max_requests>17</max_requests>
1015 <unix_sock>opensrf.settings_unix.sock</unix_sock>
1016 <unix_pid>opensrf.settings_unix.pid</unix_pid>
1017 <max_requests>300</max_requests>
1018 <unix_log>opensrf.settings_unix.log</unix_log>
1019 <min_children>5</min_children>
1020 <max_children>15</max_children>
1021 <min_spare_children>3</min_spare_children>
1022 <max_spare_children>5</max_spare_children>
1026 <open-ils.collections>
1027 <keepalive>3</keepalive>
1028 <stateless>1</stateless>
1029 <language>perl</language>
1030 <implementation>OpenILS::Application::Collections</implementation>
1031 <max_requests>17</max_requests>
1033 <unix_sock>open-ils.collections_unix.sock</unix_sock>
1034 <unix_pid>open-ils.collections_unix.pid</unix_pid>
1035 <max_requests>1000</max_requests>
1036 <unix_log>open-ils.collections_unix.log</unix_log>
1037 <min_children>1</min_children>
1038 <max_children>10</max_children>
1039 <min_spare_children>1</min_spare_children>
1040 <max_spare_children>5</max_spare_children>
1042 </open-ils.collections>
1045 <keepalive>3</keepalive>
1046 <stateless>1</stateless>
1047 <language>perl</language>
1048 <implementation>OpenILS::Application::Reporter</implementation>
1049 <max_requests>99</max_requests>
1051 <unix_sock>open-ils.reporter_unix.sock</unix_sock>
1052 <unix_pid>open-ils.reporter_unix.pid</unix_pid>
1053 <max_requests>1000</max_requests>
1054 <unix_log>open-ils.reporter_unix.log</unix_log>
1055 <min_children>1</min_children>
1056 <max_children>10</max_children>
1057 <min_spare_children>1</min_spare_children>
1058 <max_spare_children>5</max_spare_children>
1060 </open-ils.reporter>
1062 <open-ils.reporter-store>
1063 <keepalive>6</keepalive>
1064 <stateless>1</stateless>
1065 <language>C</language>
1066 <implementation>oils_rstore.so</implementation>
1068 <max_requests>400</max_requests>
1069 <min_children>1</min_children>
1070 <max_children>10</max_children>
1071 <min_spare_children>1</min_spare_children>
1072 <max_spare_children>5</max_spare_children>
1075 <driver>pgsql</driver>
1079 <user>postgres</user>
1080 <host>localhost</host>
1084 <client_encoding>UTF-8</client_encoding>
1087 </open-ils.reporter-store>
1089 <!-- resolver_type defaults to sfx but can also be cufts -->
1092 <keepalive>3</keepalive>
1093 <stateless>1</stateless>
1094 <language>perl</language>
1095 <implementation>OpenILS::Application::ResolverResolver</implementation>
1096 <max_requests>93</max_requests>
1098 <unix_sock>open-ils.resolver_unix.sock</unix_sock>
1099 <unix_pid>open-ils.resolver_unix.pid</unix_pid>
1100 <max_requests>1000</max_requests>
1101 <unix_log>open-ils.resolver_unix.log</unix_log>
1102 <min_children>5</min_children>
1103 <max_children>15</max_children>
1104 <min_spare_children>3</min_spare_children>
1105 <max_spare_children>5</max_spare_children>
1108 <cache_timeout>86400</cache_timeout>
1109 <request_timeout>10</request_timeout>
1110 <default_url_base>http://path/to/sfx_or_cufts</default_url_base>
1111 <resolver_type>sfx</resolver_type>
1113 </open-ils.resolver>
1116 <open-ils.permacrud>
1117 <keepalive>3</keepalive>
1118 <stateless>1</stateless>
1119 <language>perl</language>
1120 <implementation>OpenILS::Application::PermaCrud</implementation>
1121 <max_requests>17</max_requests>
1123 <unix_sock>open-ils.permacrud_unix.sock</unix_sock>
1124 <unix_pid>open-ils.permacrud_unix.pid</unix_pid>
1125 <max_requests>1000</max_requests>
1126 <unix_log>open-ils.permacrud_unix.log</unix_log>
1127 <min_children>5</min_children>
1128 <max_children>15</max_children>
1129 <min_spare_children>3</min_spare_children>
1130 <max_spare_children>5</max_spare_children>
1132 </open-ils.permacrud>
1135 <keepalive>3</keepalive>
1136 <stateless>1</stateless>
1137 <language>perl</language>
1138 <implementation>OpenILS::Application::Fielder</implementation>
1139 <max_requests>17</max_requests>
1141 <unix_sock>open-ils.fielder_unix.sock</unix_sock>
1142 <unix_pid>open-ils.fielder_unix.pid</unix_pid>
1143 <max_requests>1000</max_requests>
1144 <unix_log>open-ils.fielder_unix.log</unix_log>
1145 <min_children>5</min_children>
1146 <max_children>15</max_children>
1147 <min_spare_children>3</min_spare_children>
1148 <max_spare_children>5</max_spare_children>
1153 <keepalive>5</keepalive>
1154 <stateless>1</stateless>
1155 <language>perl</language>
1156 <implementation>OpenILS::Application::Vandelay</implementation>
1157 <max_requests>100</max_requests>
1159 <unix_sock>vandelay_unix.sock</unix_sock>
1160 <unix_pid>vandelay_unix.pid</unix_pid>
1161 <unix_log>vandelay_unix.log</unix_log>
1162 <max_requests>100</max_requests>
1163 <min_children>1</min_children>
1164 <max_children>15</max_children>
1165 <min_spare_children>1</min_spare_children>
1166 <max_spare_children>5</max_spare_children>
1170 <!-- temporary location for MARC import files.
1171 Files will be deleted after records are spooled.
1172 *note: in a multi-brick environment, this will need to
1173 be on a write-able NFS share. -->
1174 <importer>/tmp</importer>
1177 </open-ils.vandelay>
1180 <keepalive>3</keepalive>
1181 <stateless>1</stateless>
1182 <language>perl</language>
1183 <implementation>OpenILS::Application::Serial</implementation>
1184 <max_requests>17</max_requests>
1186 <unix_sock>open-ils.serial_unix.sock</unix_sock>
1187 <unix_pid>open-ils.serial_unix.pid</unix_pid>
1188 <max_requests>1000</max_requests>
1189 <unix_log>open-ils.serial_unix.log</unix_log>
1190 <min_children>5</min_children>
1191 <max_children>15</max_children>
1192 <min_spare_children>3</min_spare_children>
1193 <max_spare_children>5</max_spare_children>
1206 Should match the fully qualified domain name of the host.
1208 On Linux, the output of the following command is authoritative:
1209 $ perl -MNet::Domain -e 'print Net::Domain::hostfqdn() . "\n";'
1211 To use 'localhost' instead, run osrf_ctl.sh with the -l flag
1215 <!-- services hosted on this machine -->
1216 <appname>opensrf.settings</appname>
1217 <appname>opensrf.math</appname>
1218 <appname>opensrf.dbmath</appname>
1219 <appname>open-ils.acq</appname>
1220 <appname>open-ils.booking</appname>
1221 <appname>open-ils.cat</appname>
1222 <appname>open-ils.supercat</appname>
1223 <appname>open-ils.search</appname>
1224 <appname>open-ils.circ</appname>
1225 <appname>open-ils.actor</appname>
1226 <appname>open-ils.auth</appname>
1227 <appname>open-ils.storage</appname>
1228 <appname>open-ils.penalty</appname>
1229 <appname>open-ils.justintime</appname>
1230 <appname>open-ils.cstore</appname>
1231 <appname>open-ils.collections</appname>
1232 <appname>open-ils.ingest</appname>
1233 <appname>open-ils.reporter</appname>
1234 <appname>open-ils.reporter-store</appname>
1235 <!-- <appname>open-ils.resolver</appname> -->
1236 <appname>open-ils.permacrud</appname>
1237 <appname>open-ils.pcrud</appname>
1238 <appname>open-ils.trigger</appname>
1239 <appname>open-ils.fielder</appname>
1240 <appname>open-ils.vandelay</appname>
1241 <appname>open-ils.serial</appname>