3 session_shared: fix use of maintenance thread.
5 Introduce 'start' method for filters and routers. It gets called after
6 configure and after fork, but before processing. This changes API -
7 from libmetaproxy2 to libmetaproxy3.
11 session_shared: ensure backend session is closed if init rejected
14 z3950_client: fix NULL ptr reference that could occur if two clients
15 connected concurrently and if max-sockets was in effect.
19 Fix bug 3497 - Metaproxy unstable while stopping.
21 Fix bug 3495 - SEGV in SRU filter.
25 Filter multi throws diagnostic 'Present Out of Range' when
26 appropriate - rather than returning 0 records.
28 Filter virt_db: fix bad result reuse. Could happen if a result
29 was overriden and a backend did not supported named result sets.
33 Filter log: category access logs diagnostics even if searchStatus
34 or presentStatus is 'success'.
38 The SRU to Z39.50 filter does repeated Z39.50 present requests
39 to fetch all records. Needed when a Z39.50 server returns partial
40 results (due to message size limits).
44 Metaproxy now kills all child processes that are spawned by
45 modules (in case of fork, exec).
49 Debian package now installs /etc/metaproxy/metaproxy.xml which
50 includes all XML files /etc/metaproxy/filters-enabled .
51 The include facility uses YAZ' yaz_xml_include_simple (YAZ 4.0.1).
55 Package based on YAZ version 4 and YAZ++ 1.2.0. It now includes a
56 development package to facilitate 3rd party Metaproxy modules.
60 Filter virt_db: Close backend filter session when Init rejected is received
61 from it (in which case it's not really closed yet). This will ensure we don't
62 run out of resources such as FDs in this case.
64 sru_z3950 filter: Accept any database (including those not listed).
68 Prepare for 64-bit YAZ. yazproxy will still work with YAZ++ 1.1.4 or
69 later which means YAZ 3.0.47 or later.
73 For filter virt_db, the database is a glob pattern and the virtual
74 database sections are consulted in the order given.
78 For filter multi, the target (for routing) may be given as a glob-pattern.
80 More documentation for filters virt_db and multi.
82 Update schema to allow for no database in sru_z3950 filter.
86 Added limit filter to put sleep (penalty) for heavy use.
88 Filter frontend_net may be configured to limit the number of new connections
89 from same IP to some value (connect-max).
91 Fixed the load_balance filter.
95 Fix path for metaproxy executable for Debian init.d script.
99 SRU to Z39.50 filter honors x-username and x-password. If only
100 x-username is given that translates to open authentication (Z39.50v2). If
101 both x-username and x-password is present that translates to idPass
102 authentication (Z39.50v3).
104 New facility to change current working directory (-w).
106 Update to upstream skeleton of init.d script. Should fix bug #2619.
108 Filter session_shared now caches records (used to only cache connections
111 Filter session_shared now invalidates a Z39.50 session if a server
112 returns -1 hits. This facility was also part of yazproxy and gets around
113 a bug in Voyager-based Z39.50 servers.
115 --- 1.0.15 2008/11/18
117 Fixed reference counting bug in Z39.50 client module (could cause SEGV).
119 --- 1.0.14 2008/06/09
121 Fixed the value of SRU record schema in searchRetrieve response. It was set
122 to a fixed value of "dc" before.
124 Serialize identical SRU requests. This is useful if HTTP client software
125 fires identical requests against metaproxy.
127 Allow Z39.50 target to be specified for SRU requests by using SRU extra
128 parameter x-target. Allows SRU to contact arbitrary Z39.50 targets and
129 avoid static configuration. This facility is handled by the sru_z3950 module
130 and the z3950_client module.
132 Allow maximum number of sockets to be used for a Z39.50 client by the
133 use of SRU extra parameter x-max-sockets. This facility is handled by the
134 sru_z3950 module and the z3950_client module.
136 --- 1.0.13.1 2008/02/29
138 Simplified check for Boost libraries.
140 --- 1.0.13 2008/02/29
142 First Debian package.
144 The sru_z9350 filter now recognizes SRU parameter z-target as being
145 a ZURL of the form host/database .
147 Mergetype may be specified for filter 'multi'.
149 --- 1.0.12 2007/09/19
151 Fixed problem in Makefile WRT library specifictions. This could produce
152 linker errors (when they should not happen).
154 Fixed bug #1341: MetaProxy returning different results. Problem was that
155 fix-up of record database did not normalize the database name.
157 Documentation updates for Windows compilation.
159 --- 1.0.11 2007/06/14
161 Fixed problem with logfile being truncated.
163 --- 1.0.10 2007/05/23
165 Fixed bug #1136: Access rights not enforced.
167 Extension for log module. The log category 'access' logs more details.
168 New category 'user-access' added which is simlar to 'access' but adds
169 the Z39.50 user as for all entries in a session.
173 Added support for configurable default/force target/vhost for module Z39.50
178 Implemented filter, session_shared, which optimizes usage of Z39.50
179 sessions and result sets.
181 New filter, record_transform, which converts MARC/XML records.
183 New filter, sru_z3950, which converts SRU to Z39.50 packages.
185 New filter, load_balance, in development.
187 New filter, zeerex_xplain.
189 XML framework for config files started.
191 Master RelaxNG Compact schema's are found in xml/schema/*.rnc,
192 RelaxNG XML schemas and XML Schema's are generated from RNC syntax.
193 XML config files are checked against RNG and XML Schema's.
195 XSLT transformation framework added in xml/xslt/*.xsl, consisting mainly of
196 LOC Marc21 stylesheets found at http://www.loc.gov/marcxml/xslt.
197 Added stylesheet explain2cqlpqftxt.xsl which transforms a standard SRU ZeeReX
198 explain record to YAZ CQL-to-PQF text config file.
202 Added 'timeout' setting for filter frontend_net which specifies the number
203 of seconds a session is idle before it is closed. Default timeout is
208 Database name in records returned set for virt_db/multi filters.
210 Filter session_shared now functional.
212 Log filter can be configured to write to a given file using 'filename'
213 element. Also information category can be specified with 'category'. If
214 filename is omitted, the log filter writes to stdout. See etc/config5.xml
219 Fixed compilation on Windows.
223 Added documentation for the hidenavailable option for the multi filter.
227 Fixed bug #573: Hide errors for individual servers. If the element
228 'hideunavailable' is given in the configuration, individual servers
229 being unavailable are hidden (unless all are unavailable).
231 Fixed bug #574: Database names are recognised case-sensitively.
233 Fixed bug #567: Fix up database name in Name-Plus-Record.
235 Fixed bug #568: Update win/makefile for VS 2005.
237 Fixed bug #569: Some options throws unknown exception.
241 More information about virtual hosts. The 'etc' directory is part of the
246 Build instructions for Windows. NMake makefile part of distribution tar.
252 Filters functional: auth_simple, backend_test, frontend_net, http_file,
253 log, multi, query_rewrite, template, virt_db, z3950_client.
255 Filters in development: session_shared.
257 Pseudo-filters: template, dl