Version 2.0.44
[idzebra-moved-to-github.git] / NEWS
1 --- 2.0.44 2010/06/29
2
3 grs1: avoid term_len < 0 for .abs operator 'range'
4
5 ICU: fix use of un-init variable.
6
7 More reasonable approx hits for truncated searches.
8
9 Updates WRT Odr_int (YAZ 4).
10
11 --- 2.0.43 2009/11/05
12
13 Fix hits counts for searches when @attr 12=n is in use. This bug
14 was introduced in 2.0.40.
15
16 --- 2.0.42 2009/10/08
17
18 Proximity modifications. The optimized proximity now deals with more
19 cases, ie all prox of the form @prox 0 d 1 1,2,3 k 2 ..
20 That's exlusive==0, any distance, ordered (true), relation (<, =, <=),
21 known unit word.
22
23 Fix bug WRT inconsistent registers, bug #3062.
24
25 Fix install doc rule so it's compatible with Automake 1.11.
26
27 --- 2.0.41 2009/08/24
28
29 Fix typos and other errors in the documentation. Thanks to Galen
30 Charlton.
31
32 Fix DOM filter so that full record ID (z:id) if given is used verbatim
33 rather than truncated until first blank - in other words use memcpy
34 rather than sscanf. For PI fix record attributes parsing which was
35 completely broken.
36
37 --- 2.0.40 2009/07/13
38
39 Fixed problem in result set handling and segment handling.
40
41 --- 2.0.39 2009/07/09
42
43 Improved speed of record fetching by using a different block sizes
44 for recd{A,B}.
45
46 Added zlib-compression of recd-storage (record data). This is enabled
47 by using recordCompression: zlib in zebra.cfg.
48
49 Dictionary delete more agressive (dict_del_string).
50
51 --- 2.0.38 2009/06/19
52
53 Improved estimated hits for AND operation (bug #2907)
54
55 Fixed problem with register area growing after "drop DB". (bug #2913).
56
57 --- 2.0.37 2009/05/18
58
59 Example with marc21 is now installed and part of packages.
60
61 Fixed XSL for OAI example.
62
63 Fixed problem with generic proximity handling.
64
65 Added new ranking handler: rank-2. This is a combination of rank-1 and
66 static rank.. The staticrank is inverse (lowest value comes first, etc..).
67 rank-2 thus substracts that from score. This allows a system to specify
68 a "base" rank (=staticrank).
69
70 --- 2.0.36 2009/02/17
71
72 Added implementation-codes directive for .mar files.
73
74 Avoid error for missing recordId when zebraidx' option -s is in use.
75
76 Fixed problem with some disk blocks not beeing freed correctly when
77 'drop database' is used.
78
79 --- 2.0.34 2008/11/06
80
81 Facets can now be performed on sort registers (:s), not just regular indexes
82 (:w, :p) etc.. The performance appers to be much better than before.
83
84 Added a facility to embed metadata for records generated by the DOM XML
85 filter. The meta data step is triggered by a 'process-meta' section in the
86 retrieve section of the dom config, e.g.
87   <retrieve name="myelementset">
88     <xslt stylesheet="my-usual.xsl"/>
89     <process-meta/>
90   </retrieve>
91 The meta section substitutes metadata for all elements called 'meta' in
92 namespace http://indexdata.com/zebra-2.0 . The meta element must have
93 exactly one attribute, name, which specifies the special
94 element set name which is equivalent to the suffix to zebra:: for
95 non-embedded special retrievals. This allows snippets, facets etc to be
96 included.
97
98 Fixed bug #2202: incorrect sorting order when searching multiple databases.
99
100 --- 2.0.32 2008/06/06
101
102 Fixed OAI example.
103
104 --- 2.0.30 2008/05/14
105
106 Changed service name for Windows. Bug #978.
107
108 Fixed the alwaysmatches including _ALLRECORDS for ICU term indexing. Bug #2139.
109
110 --- 2.0.28 2008/04/03
111
112 Handle right-truncation for ICU normalized terms.
113
114 Updated OAI-PMH example.
115
116 --- 2.0.26 2008/01/28 
117
118 Fixes for searches on Chinese text.
119
120 Fixes for scan using ICU indexing terms.
121
122 --- 2.0.24 2008/01/18 
123
124 Fixed some memory violations for ICU enabled indexing that could be
125 triggered by long phrases.
126
127 Enable ICU on Windows. Thanks to Tumer Garip for makefile patches.
128
129 Fixed bug #2002: Zebra crashes during merge using ICU indexing.
130
131 --- 2.0.22 2007/12/20
132
133 Handle encoding errors for strings passed to ICU. (assert was
134 thrown earlier).
135
136 Added zebraidx command, adelete, which attempts to delete records.
137 It's like 'delete', but does not fail if a record does not exist.
138
139 --- 2.0.20 2007/12/19
140
141 Added experimental support for faceted results. This is implemented
142 as a special retrieval on a result set and is triggered using element
143 set name zebra::facet::f1:t1,f2,t2,.. which will return terms and
144 hit counts for field f1, type t1, field f2, type t2, .. The returned
145 data is packed as XML or SUTRS depending on record syntax.
146
147 Added support for Unicode-based indexing using ICU. This allows
148 locale specific scanning, sorting. The implementation is based on
149 the ICU utility part of YAZ 3.0.16 and later. See the manual as well
150 as the examples/marcxml for an example of the use of ICU.
151
152 --- 2.0.18 2007/09/19
153
154 Fixed bug with scan and staticrank enabled. Bug introduced in 2.0.16.
155
156 --- 2.0.16 2007/09/12
157
158 Scan now returns a displayTerm which closer to the original word/phrase
159 from original record.
160
161 Added snippet support. Element set name zebra::snippet will make
162 Zebra return an XML record with snippets (terms around matching terms).
163
164 Fixed bug #1142: Non-indexed but listed attributes issues diagnostic.
165
166 Fixed bug #1131: Missing value-of data in DOM filter.
167
168 Fixed bug #1049: zebra.cfg lines with leading space are ignored.
169
170 Fixed bug #1128: sortmax not honored.
171
172 Fixed bug #1121: Crash for some searches with customized string.chr.
173
174 --- 2.0.14 2007/05/09
175
176 Zebra uses the YAZ 3 API. Note that this changes the Zebra API
177 as well. The register layout is the same however. 
178
179 Fixed bug #1114: scan within set may use excessive CPU.
180
181 Fixed memory leak that occurred in scan.
182
183 Fixed memory leak that occurred for each deleted record.
184
185 Optimize updates of records where content is almost identical to previous
186 version of record. This makes updating of the internal explain database
187 faster too.
188
189 For RPN queries the index type (w,p,..) may be specified verbatim as
190 structure attribute with string value, e.g. @attr 4=w .
191
192 Changed record update API . It is now handled by function
193 zebra_record_update which does insert/replace/delete/update of records .
194 This function replaces zebra_record_{insert,delete} and
195 zebra_admin_exchange_record. The DOM filter uses this feature and the
196 @type attribute in record element specifies the action
197 insert/replace/delete/update.
198
199 Added support for multi-record updates (Bug #944). Based on patch from
200 Hans-Werner Hilse.
201
202 --- 2.0.12 2007/03/07
203
204 Fixed bug with indexing of attributes for rec.grs-class of filters.
205 If X-Path was enabled xelm a/@b would be ignored.
206
207 Fixed bug in register system where 'no more space' messages was produced
208 even though there was plenty of space.
209
210 Fixed bug #884: Entity declarations in input are lost at retrieval time.
211
212 Implemented new filter 'dom'. See test/xslt/dom-config*xml for examples. 
213 This, like alvis, performs indexing and retrieval using XSLT. But Unlike
214 alvis, it allows multiple XSLT steps to be performed and does ISO2709
215 reading. Bug #843.
216
217 --- 2.0.10 2007/01/24
218
219 Staticrank indexing is now an index register type defined in default.idx
220 via directive 'staticrank'. The 'staticrank' directive for grs is no longer
221 supported (was only implemented for Zebra 2.0.8).
222
223 For searches, allow truncmax value to be controlled with attribute 13.
224 If given, that overrides the value of 'truncmax'.
225
226 For truncations being limited (abort at truncmax terms), zebrasrv returns
227 SearchResponse with resultSetStatus=subset.
228
229 For estimated hit counts, zebrasrv returns SearchResponse with 
230 resultSetStatus=estimate.
231
232 --- 2.0.8 2007/01/15
233
234 For searches, do not truncate more than at most 'truncmax' terms in one
235 single term with right-truncation/regular attribute. By default, 'truncmax',
236 is 10000.
237
238 Bug #781: Easier tracking of result sets. We only do this when mkstemp
239 is available (most moderun Unixes supports this). The PID is included
240 in filename : tempdir/zrs_PID_XXXXXX.
241
242 Added support for specification of staticrank for grs-class of filters.
243 This is enabled by using 'staticrank indexname' in .abs. Contents of
244 indexname (elm ... indexname:w) is then used as value for staticrank.
245
246 Implemented sorting via the ISAMB system. To enable, use sortindex:i in
247 zebra.cfg.
248
249 Added special retrieval support for sort keys. These keys can also be
250 fetched using zebra::index:field:s   
251
252 Added support for specification of approximative limits for whole query.
253 This is specified as attribute type 12. Semantics is the same as
254 estimatehits in zebra.cfg.
255
256 --- 2.0.6 2006/11/28
257
258 Fixed bug #736: Updates gets slower.
259
260 Fixed bug #735: Delete fails to process rest of file after a record that
261 does not exist,
262
263 Added RPM package for Zebra 2.
264
265 Improved indexing speed for large documents.
266
267 Added support for special utility retrieval zebra:: which offers retrieval
268 of fundamental properties for record, such as indexed terms, raw record,
269 and system record ID.
270
271 --- 2.0.4 2006/10/16
272
273 Fixed bug #47: Commit needs to check for roll-back.
274
275 Fixed bug #672: Trailing characters in password are ignored
276
277 Added extra presence check for tcl.h, because some systems have
278 tclConfig.sh installed even though Tcl C headers are missing.
279
280 Optimized melm performance.
281
282 Do not use sync(2) during commit (but rely on sync'd individual files).
283
284 Fixed bug in ISAMB's utility function decode_ptr. With gcc -O3 on some
285 platforms the src argument was not updated. Problem was compiler
286 optimization due to strict aliasing rules.
287
288 --- 2.0.2 2006/09/22
289
290 Bug fixes: #638, #647, #657, #669.
291
292 Implement skip of 0 hit counts in scan. Useful for scan operations
293 limited by a result set.
294
295 Honor position attribute, i.e. allow first-in-field search. To
296 enable this, "firstinfield 1" must be given for an index in
297 default.idx. Enabled in tab/default.idx for w. At this stage
298 first-in field is supported for phrase/and-list/or-list searches
299
300 Common stream reader interface for record filters (struct ZebraRecStream).
301
302 Debian package fix: packages idzebra-2.0 + libidzebra-2.0-modules did
303 not depend properly on sub packages.
304
305 --- 2.0.0 2006/08/14
306
307 New record filter (record type) 'alvis' which uses XSLT transformations
308 to drive both indexing as well as retrieval. See example configuration in the
309 'example/alvis-oai' directory.
310
311 'isamb' is now the default ISAM system. In Zebra 1.3, the default ISAM was
312 'isamc'. The type used can still be configured with the 'isam' setting
313 in 'zebra.cfg'.
314
315 Index structure is now 64-bit based, also on 32 bit systems. 
316 There are no more 2GB register file limits.
317
318 Extended search result tuning. Approximate limit for terms can be enabled
319 and specified with attribute 11. The (approx or exact) hit count is returned
320 as part of the search response as in 1.3 series. The subqueryID of a search
321 term hit count can be specified with attribute 10.
322
323 Zebra uses string attributes for indexing internally. Using set+numeric
324 use attribute can still be used. This is a search-only conversion which
325 inspects '*.att'-set files as indicated using attset-directives in 'zebra.cfg'.
326 'attset' references are no longer required, but when used they deserve
327 as "check" for that the index names used are also present in '*.att'.
328
329 Zebra record filters (record type handlers) may be built as loadable
330 modules (.so's) on Unix. In particular the Zebra 2.0 Debian package uses
331 separate packages for each of them. This also means that zebra programs
332 such as zebraidx is no longer depending on Tcl/other..
333
334 Documentation updates, especially on query structure and syntax, SRU, 
335 XSLT support, alvis filter module, and many added examples.
336
337 Improved logging of the 'zebrasrv' and 'zebraidx' binaries.
338
339 Improved debian package structure.
340
341 --- 1.3.16 2004/08/16