source: trunk/doc/admin/base.config.html @ 3675

Last change on this file since 3675 was 3675, checked in by Jari Häkkinen, 15 years ago

Fixing copyright statements. Fixing svn properties.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Date Id
File size: 11.5 KB
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
4    $Id: base.config.html 3675 2007-08-16 14:16:43Z jari $
6    Copyright (C) 2006 Nicklas Nordborg
8    This file is part of BASE - BioArray Software Environment.
9    Available at
11    BASE is free software; you can redistribute it and/or modify it
12    under the terms of the GNU General Public License as published by
13    the Free Software Foundation; either version 2 of the License, or
14    (at your option) any later version.
16    BASE is distributed in the hope that it will be useful, but
17    WITHOUT ANY WARRANTY; without even the implied warranty of
19    General Public License for more details.
21    You should have received a copy of the GNU General Public License
22    along with this program; if not, write to the Free Software
23    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
24    02111-1307, USA.
28  <head>
29    <title>BASE 2 - Administrator documentation: base.config reference</title>
30  <link rel=stylesheet type="text/css" href="../styles.css">
31  </head>
34<div class="navigation">
35  <a href="../index.html">BASE 2</a>
36  <img src="../next.gif">
37  <a href="index.html">Administrator documentation</a>
38  <img src="../next.gif">
39  bsae.config reference
42<h1>BASE 2 - Administrator documentation: base.config reference</h1>
44<div class="abstract">
46  <p>
47  This document describes all configuration options in the
48  base.config file.
49  </p>
51  <b>Contents</b><br>
52  <ol>
53  <li><a href="#database">Database driver section</a></li>
54  <li><a href="#authentication">Authentication section</a></li>
55  <li><a href="#jobqueue">Internal job queue section</a></li>
56  <li><a href="#jobagent">Job agent section</a></li>
57  <li><a href="#secondary">Secondary storage controller</a></li>
58  <li><a href="#general">General section</a></li>
59  </ol>
62  <p class="authors">
63  <b>Last updated:</b> $Date: 2007-08-16 14:16:43 +0000 (Thu, 16 Aug 2007) $<br>
64  <b>Copyright &copy;</b> 2006 The respective authors. All rights reserved.
65  </p>
69  <a name="database"></a>
70  <h2>1. Database driver section</h2>
72  <dl>
73  <dt class="method">db.dialect</dt>
74  <dd>
75    The Hibernate dialect to use when generating SQL commands to
76    the database. Use:
77    <ul>
78    <li><code>org.hibernate.dialect.MySQLInnoDBDialect</code> for MySQL</li>
79    <li><code>org.hibernate.dialect.PostgreSQLDialect</code> for Postgres</li>
80    </ul>
81    Other dialects may work but are not supported.
82  </dd>
84  <dt class="method">db.driver</dt>
85  <dd>
86    The JDBC driver to use for connecting to the database. Use:
87    <ul>
88    <li><code>com.mysql.jdbc.Driver</code>  for MySQL</li>
89    <li><code>org.postgresql.Driver</code>  for Postgres</li>
90    </ul>
91    Other JDBC drivers may work but are not supported.
92  </dd>
94  <dt class="method">db.url</dt>
95  <dd>
96    The connection URL that locates the BASE 2 database. The exact syntax of the
97    string depends on the JDBC driver. Here are two examples which leaves all
98    other settings to their defaults:
99    <ul>
100    <li><code>jdbc:mysql://localhost/base2</code> for MySQL</li>
101    <li><code>jdbc:postgresql:base2</code> for MySQL</li>
102    </ul>
104    You can get more information about the parameters that are supported
105    on the connection URL by reading the database documentation:
106    <ul>
107    <li><a href=""
108      >MySQL</a></li>
109    <li><a href=""
110      >Postgres</a></li>
111    </ul>
112  </dd>
114  <dt class="method">db.dynamic.catalog</dt>
115  <dd>
116    The name of the catalog where the dynamic database is located. If not specified
117    the same catalog as the regular database is used. The exact meaning of catalog
118    depends on the actual database. For MySQL the catalog is the name of the database
119    so this value is simply the name of the dynamic database. Postgres doesn't support
120    connecting to multiple databases with the same connection so this should have
121    the same value as the database in the <code>db.url</code> setting.
122  </dd>
124  <dt class="method">db.dynamic.schema</dt>
125  <dd>
126    The name of the schema where the dynamic database is located. MySQL doesn't have
127    schemas so this value should not be specified. Postgres supports schemas and we
128    recommend that the dynamic part is created in it's own schema.
129  </dd>
131  <dt class="method">db.username</dt>
132  <dd>
133    The username to connect to the database. The user should have full
134    permission to the both the regular and the dynamic database.
135  </dd>
137  <dt class="method">db.password</dt>
138  <dd>
139    The password for the user.
140  </dd>
142  <dt class="method">db.batch-size</dt>
143  <dd>
144    The batch size to use when inserting/updating items with the Batch API.
145    A higher value requires more memory, a lower value degrades performance since
146    the number of database connections increases.
147  </dd>
149  <dt class="method">db.queries</dt>
150  <dd>
151    The class path to an XML file which contains database-specific queries
152    overriding those that doesn't work from the <code>/common-queries.xml</code>.
153    Use:
154    <ul>
155    <li><code>/mysql-queries.xml</code> for MySQL</li>
156    <li><code>/postgres-queries.xml</code> for Postgres</li>
157    </ul>
158  </dd>
160  <dt class="method">db.extended-properties</dt>
161  <dd>
162    An XML file describing the extended properties for extendable item
163    types, ie. the reporters. The default value is <code>/extended-properties.xml</code>.
164  </dd>
166  <dt class="method">db.raw-data-types</dt>
167  <dd>
168    An XML file describing all raw data types and their properties.
169    The default value is <code>/raw-data-types.xml</code>.
170  </dd>
172  <dt class="method">export.max.items</dt>
173  <dd>
174    The maximum number of items the export function should try to load
175    in a single query. This setting exists because MySQL prior to 5.0.2 doesn't support
176    scrollable result sets, but loads all data into memory. This will result in out of memory
177    exception if exporting too many items at the same time. Postgres doesn't have
178    this problem, since it doesn't load the data until it is requested. Use:
179    <ul>
180    <li>0 for Postgres</li>
181    <li>0 for MySQL version 5.0.2 or above (requires that useCursorFetch=true is specified
182      in connection url and that defaultFetchSize=??? is set to a value &gt; 0)
183    <li>As large as possible value for other MySQL version. A low value results in more queries and
184      slower performance when exporting data.</li>
185    </ul>
187  </dl>
189  <a name="authentication"></a>
190  <h2>2. Authentication section</h2>
192  <p>
193    Settings related to external authentication. For more information
194    see: <a href="../development/plugins/authentication/index.html"
195      >Development information - Plugins for user authentication</a>
196  </p>
198  <dl>
199  <dt class="method">auth.driver</dt>
200  <dd>
201    The class name of the plugin that acts as the authentication driver. BASE ships
202    with a simple plugin that checks if a user has a valid email account on a POP3
203    server. It is not enabled by default. The class name of that plugin is
204    <code>net.sf.basedb.core.authentication.POP3Authenticator</code>. If no class
205    is specified internal authentication is used.
206  </dd>
208  <dt class="method">auth.init</dt>
209  <dd>
210    Initialisation paramters sent to the plugin by calling the
211    <code>init()</code> method. The syntax and meaning of this string
212    depends on the plugin. For the <code>POP3Authenticator</code> this is simply
213    the IP-address of the mail server.
214  </dd>
216  <dt class="method">auth.synchronize</dt>
217  <dd>
218    If this setting is 1 or TRUE the BASE core will synchronize the extra
219    information (name, address, email, etc.) sent by the authentication driver
220    when a user logs in to BASE. This setting is ignored if the driver doesn't
221    support extra information. The <code>POP3Authenticator</code> returns FALSE.
222  </dd>
224  <dt class="method">auth.cachepasswords</dt>
225  <dd>
226    If passwords should be cached by BASE or not. If the passwords are cached a user
227    may login to BASE even if the external authentication server is down.
228  </dd>
230  <dt class="method">auth.daystocache</dt>
231  <dd>
232    How many days a cached password is valid if that is enabled. A value of 0
233    caches the passwords for ever.
234  </dd>
236  </dl>
238  <a name="jobqueue"></a>
239  <h2>3. Internal job queue section</h2>
241  TODO
243  <a name="jobagent"></a>
244  <h2>4. Job agent section</h2>
246  <p>
247    This section holds settings that the core uses when communicating
248    with external job agents.
249  </p>
251  <dl>
252  <dt class="method">agent.maxage</dt>
253  <dd>
254    Number of seconds to keep job agent information in the internal cache.
255    The information includs, CPU and memory usage and the status of executing
256    jobs. This setting controls how long the information is kept in the cache
257    before a new request is made to the job agent. The default value is 60
258    seconds.
259  </dd>
261  <dt class="method">agent.connection.timeout</dt>
262  <dd>
263    The timeout in milliseconds to wait for a repsonse from a job agent when
264    sending a request to it. The default timeout is 1000 milliseconds. This should
265    be more than enough if the job agent is on the internal network, but may have
266    to be increased if it is further away.
267  </dd>
268  </dl>
270  <a name="secondary"></a>
271  <h2>5. Secondary storage controller</h2>
272  <p>
273    Settings related to the secondary storage controller. For more
274    information about the secondary storage read the <a 
275    href="../development/plugins/storage/index.html">Plugins for secondary
276    file storage</a> document.
277  </p>
279  <dl>
280  <dt class="method"></dt>
281  <dd>
282    The class name of the plugin that acts as the secondary storage
283    controller. BASE ships with a simple plugin that just moves
284    files to another directory, but it is not enabled by default.
285    The class name of that plugin is
286    <code>net.sf.basedb.core.InternalStorageController</code>. If no class
287    is specified the secondary storage feature is disabled.
288  </dd>   
289  <dt class="method"></dt>
290  <dd>
291    Initialisation paramters sent to the plugin by calling the
292    <code>init()</code> method. The syntax and meaning of this string
293    depends on the plugin. For the internal controller this is simply
294    the path to the seconday directory.
295  </dd>
297  <dt class="method"></dt>
298  <dd>
299    Interval in seconds between each execution of the controller plugin. It
300    must be a value greater than zero or the secondary storage feature will
301    be disabled.
302  </dd>
304  <dt class="method"></dt>
305  <dd>
306    Time-point values specifying the time(s) of day that the controller
307    should be executed. This setting overrides the interval setting if present.
308    Time-point values are given as comma-separted list of two-digit 24-based
309    hour and two-digit minute values. For example: 03:10,09:00,23:59.
310  </dd>
311  </dl>
313  <a name="general"></a>
314  <h2>6. General section</h2>
316  <dl>
317  <dt class="method">userfiles</dt>
318  <dd>
319    The path to the directory where uploaded and generated files should
320    be stored. This is the primary storage. See above for information about
321    how to configure the secondary storage. Uploaded files are not stored in
322    the same directory structure or with the same names as in the BASE filesystem.
323    The internal structure may contain subdirectories.
324  </dd>
326  <dt class="method">permission.timeout</dt>
327  <dd>
328    Number of minutes to cache a logged in user's permission before
329    reloading them. The default value is 10. This setting affect how quickly
330    a changed permission propagate to a logged in user. Permissions are
331    always reloaded when a user logs in.
332  </dd>
334  <dt class="method">cache.timeout</dt>
335  <dd>
336    Number of minutes to keep user sessions in the internal cache
337    before the user is automatically logged out. The timeout is counted
338    from the last access made from the user.
339  </dd>
340  </dl>
Note: See TracBrowser for help on using the repository browser.