Minor text tweak.
[idzebra-moved-to-github.git] / NEWS
1 --- 2.0.60 2015/02/06
2
3 Fix ICU phrase searches for terms split by ICU ZEB-664
4
5 Update Visual Studio nmake file for VS 2013.
6
7 --- 2.0.59 2014/04/17
8
9 Fix 0 ptr reference (crash) during search that occurred due to slightly
10 different behavior of YAZ 5.0.22 / YAZ 5.0.23.
11
12 --- 2.0.58 2014/03/06
13
14 Update OAI example README and allow Bib-1 attribute searches.
15
16 Fix ICU indexing test. The code was not really broken, but the test
17 program was.
18
19 --- 2.0.57 2014/02/28
20
21 Deb/RPM/Win Zebra packages uses libyaz5 (rather than libyaz4). This adds
22 SRU 2.0 support for Zebra.
23
24 --- 2.0.56 2013/11/04
25
26 Updates for YAZ 5. Zebra compiles fine with YAZ 4 still.
27
28 --- 2.0.55 2013/06/24
29
30 Addx + document zebraidx command "check", which checks consistency of
31 register.
32
33 Debian : idzebra-2.0-utils includes init.d script. Includes logrotate as
34 well. The zebrasrv init script listens on port 2100. At this time,
35 zebra.cfg, is not part of the package. Administrator must install or
36 modify $CONFIG to point to a working zebra.cfg.
37
38 RPM: idzebra-2.0 includes init.d script. Also includes logrotate. The
39 zebrasrv init script listens on port 2100 (IPv4 + IPv6). At this time,
40 zebra.cfg, is not part of the package. Administrator must install or
41 modify $CONFIG to point to a working zebra.cfg.
42
43 --- 2.0.54 2013/01/21
44
45 For mod_dom filter, allow type="adelete", which will not treat a failed
46 delete as an error (such as a record ID that do not exist already).
47
48 Log XML2/XSLT errors to yaz_log instead of stdout/stderr.
49
50 Relay \-character in non-regexp searches. Was treated as backslash
51 sequence before.
52
53 --- 2.0.53 2012/12/03
54
55 Improve hit estimate for or-searches (typically truncation)
56
57 Fix snippets for non-ICU / seqno not updated.
58
59 Replace key_compare_it with key_compare. This is because key_compare_it
60 throws exception on some CPUs with alignment constraints.
61
62 ICU: support @attr 5=2, @attr 5=3 in searches. (left truncation and
63 left+right truncation).
64
65 --- 2.0.52 2012/05/31
66
67 Fix problem in dictionary due to increase max size of term.
68
69 --- 2.0.51 2012/05/31
70
71 Fix buffer overrun for terms using ICU normalization.
72
73 Increase max size of indexing term from 256 to 512.
74
75 --- 2.0.50 2011/11/01
76
77 Fix a bug in zebra_begin_trans where Zebra could mark a transaction
78 complete when it actually failed. This could happen if register files
79 could not be opened.
80
81 --- 2.0.49 2011/09/02
82
83 Scan: allow preferred position > number + 1
84
85 Fix bug #4592: dict_scan misses
86
87 Fix snippets for complete fields, bug #4590. The
88 snippet_add_complete_fields (chr-system) now takes the indexing term
89 verbatim and makes that the display term.
90
91 --- 2.0.48 2011/06/28
92
93 Utility idebra-abs2dom part of distribution and deb+RPM packages.
94
95 Fix problem with scan and complete subfields (:p) . In some cases,
96 the display scan terms, would be invalid.
97
98 --- 2.0.47 2011/05/24
99
100 RPM: Store libraries in /usr/lib64 on 64-bit platforms.
101
102 Zebra honors SRU sortkeys. If used with YAZ 4.2.0 or later,
103 CQL sortby is honored as well.
104
105 Fix scan's handling of normalized terms. Some terms were incorrectly
106 ignored in the scan results, CJK terms in particular.
107
108 --- 2.0.46 2011/03/23
109
110 Fix bug in dictionary component of Zebra that could lead to
111 inconsistent register assert for large deleteions.
112
113 Improve estimate hits for phrase searches.
114
115 --- 2.0.45 2010/12/22
116
117 Add Debian package for Ubuntu maverick.
118
119 Update to newer Libxml2/Libxslt for Windows package.
120
121 Escape-sequences are disabled for RPN-queries with truncation=105/106.
122 These, unlike regular expressions, do not support \-sequences .
123
124 --- 2.0.44 2010/06/29
125
126 grs1: avoid term_len < 0 for .abs operator 'range'
127
128 ICU: fix use of un-init variable.
129
130 More reasonable approx hits for truncated searches.
131
132 Updates WRT Odr_int (YAZ 4).
133
134 --- 2.0.43 2009/11/05
135
136 Fix hits counts for searches when @attr 12=n is in use. This bug
137 was introduced in 2.0.40.
138
139 --- 2.0.42 2009/10/08
140
141 Proximity modifications. The optimized proximity now deals with more
142 cases, ie all prox of the form @prox 0 d 1 1,2,3 k 2 ..
143 That's exlusive==0, any distance, ordered (true), relation (<, =, <=),
144 known unit word.
145
146 Fix bug WRT inconsistent registers, bug #3062.
147
148 Fix install doc rule so it's compatible with Automake 1.11.
149
150 --- 2.0.41 2009/08/24
151
152 Fix typos and other errors in the documentation. Thanks to Galen
153 Charlton.
154
155 Fix DOM filter so that full record ID (z:id) if given is used verbatim
156 rather than truncated until first blank - in other words use memcpy
157 rather than sscanf. For PI fix record attributes parsing which was
158 completely broken.
159
160 --- 2.0.40 2009/07/13
161
162 Fixed problem in result set handling and segment handling.
163
164 --- 2.0.39 2009/07/09
165
166 Improved speed of record fetching by using a different block sizes
167 for recd{A,B}.
168
169 Added zlib-compression of recd-storage (record data). This is enabled
170 by using recordCompression: zlib in zebra.cfg.
171
172 Dictionary delete more agressive (dict_del_string).
173
174 --- 2.0.38 2009/06/19
175
176 Improved estimated hits for AND operation (bug #2907)
177
178 Fixed problem with register area growing after "drop DB". (bug #2913).
179
180 --- 2.0.37 2009/05/18
181
182 Example with marc21 is now installed and part of packages.
183
184 Fixed XSL for OAI example.
185
186 Fixed problem with generic proximity handling.
187
188 Added new ranking handler: rank-2. This is a combination of rank-1 and
189 static rank.. The staticrank is inverse (lowest value comes first, etc..).
190 rank-2 thus substracts that from score. This allows a system to specify
191 a "base" rank (=staticrank).
192
193 --- 2.0.36 2009/02/17
194
195 Added implementation-codes directive for .mar files.
196
197 Avoid error for missing recordId when zebraidx' option -s is in use.
198
199 Fixed problem with some disk blocks not beeing freed correctly when
200 'drop database' is used.
201
202 --- 2.0.34 2008/11/06
203
204 Facets can now be performed on sort registers (:s), not just regular indexes
205 (:w, :p) etc.. The performance appers to be much better than before.
206
207 Added a facility to embed metadata for records generated by the DOM XML
208 filter. The meta data step is triggered by a 'process-meta' section in the
209 retrieve section of the dom config, e.g.
210   <retrieve name="myelementset">
211     <xslt stylesheet="my-usual.xsl"/>
212     <process-meta/>
213   </retrieve>
214 The meta section substitutes metadata for all elements called 'meta' in
215 namespace http://indexdata.com/zebra-2.0 . The meta element must have
216 exactly one attribute, name, which specifies the special
217 element set name which is equivalent to the suffix to zebra:: for
218 non-embedded special retrievals. This allows snippets, facets etc to be
219 included.
220
221 Fixed bug #2202: incorrect sorting order when searching multiple databases.
222
223 --- 2.0.32 2008/06/06
224
225 Fixed OAI example.
226
227 --- 2.0.30 2008/05/14
228
229 Changed service name for Windows. Bug #978.
230
231 Fixed the alwaysmatches including _ALLRECORDS for ICU term indexing. Bug #2139.
232
233 --- 2.0.28 2008/04/03
234
235 Handle right-truncation for ICU normalized terms.
236
237 Updated OAI-PMH example.
238
239 --- 2.0.26 2008/01/28 
240
241 Fixes for searches on Chinese text.
242
243 Fixes for scan using ICU indexing terms.
244
245 --- 2.0.24 2008/01/18 
246
247 Fixed some memory violations for ICU enabled indexing that could be
248 triggered by long phrases.
249
250 Enable ICU on Windows. Thanks to Tumer Garip for makefile patches.
251
252 Fixed bug #2002: Zebra crashes during merge using ICU indexing.
253
254 --- 2.0.22 2007/12/20
255
256 Handle encoding errors for strings passed to ICU. (assert was
257 thrown earlier).
258
259 Added zebraidx command, adelete, which attempts to delete records.
260 It's like 'delete', but does not fail if a record does not exist.
261
262 --- 2.0.20 2007/12/19
263
264 Added experimental support for faceted results. This is implemented
265 as a special retrieval on a result set and is triggered using element
266 set name zebra::facet::f1:t1,f2,t2,.. which will return terms and
267 hit counts for field f1, type t1, field f2, type t2, .. The returned
268 data is packed as XML or SUTRS depending on record syntax.
269
270 Added support for Unicode-based indexing using ICU. This allows
271 locale specific scanning, sorting. The implementation is based on
272 the ICU utility part of YAZ 3.0.16 and later. See the manual as well
273 as the examples/marcxml for an example of the use of ICU.
274
275 --- 2.0.18 2007/09/19
276
277 Fixed bug with scan and staticrank enabled. Bug introduced in 2.0.16.
278
279 --- 2.0.16 2007/09/12
280
281 Scan now returns a displayTerm which closer to the original word/phrase
282 from original record.
283
284 Added snippet support. Element set name zebra::snippet will make
285 Zebra return an XML record with snippets (terms around matching terms).
286
287 Fixed bug #1142: Non-indexed but listed attributes issues diagnostic.
288
289 Fixed bug #1131: Missing value-of data in DOM filter.
290
291 Fixed bug #1049: zebra.cfg lines with leading space are ignored.
292
293 Fixed bug #1128: sortmax not honored.
294
295 Fixed bug #1121: Crash for some searches with customized string.chr.
296
297 --- 2.0.14 2007/05/09
298
299 Zebra uses the YAZ 3 API. Note that this changes the Zebra API
300 as well. The register layout is the same however. 
301
302 Fixed bug #1114: scan within set may use excessive CPU.
303
304 Fixed memory leak that occurred in scan.
305
306 Fixed memory leak that occurred for each deleted record.
307
308 Optimize updates of records where content is almost identical to previous
309 version of record. This makes updating of the internal explain database
310 faster too.
311
312 For RPN queries the index type (w,p,..) may be specified verbatim as
313 structure attribute with string value, e.g. @attr 4=w .
314
315 Changed record update API . It is now handled by function
316 zebra_record_update which does insert/replace/delete/update of records .
317 This function replaces zebra_record_{insert,delete} and
318 zebra_admin_exchange_record. The DOM filter uses this feature and the
319 @type attribute in record element specifies the action
320 insert/replace/delete/update.
321
322 Added support for multi-record updates (Bug #944). Based on patch from
323 Hans-Werner Hilse.
324
325 --- 2.0.12 2007/03/07
326
327 Fixed bug with indexing of attributes for rec.grs-class of filters.
328 If X-Path was enabled xelm a/@b would be ignored.
329
330 Fixed bug in register system where 'no more space' messages was produced
331 even though there was plenty of space.
332
333 Fixed bug #884: Entity declarations in input are lost at retrieval time.
334
335 Implemented new filter 'dom'. See test/xslt/dom-config*xml for examples. 
336 This, like alvis, performs indexing and retrieval using XSLT. But Unlike
337 alvis, it allows multiple XSLT steps to be performed and does ISO2709
338 reading. Bug #843.
339
340 --- 2.0.10 2007/01/24
341
342 Staticrank indexing is now an index register type defined in default.idx
343 via directive 'staticrank'. The 'staticrank' directive for grs is no longer
344 supported (was only implemented for Zebra 2.0.8).
345
346 For searches, allow truncmax value to be controlled with attribute 13.
347 If given, that overrides the value of 'truncmax'.
348
349 For truncations being limited (abort at truncmax terms), zebrasrv returns
350 SearchResponse with resultSetStatus=subset.
351
352 For estimated hit counts, zebrasrv returns SearchResponse with 
353 resultSetStatus=estimate.
354
355 --- 2.0.8 2007/01/15
356
357 For searches, do not truncate more than at most 'truncmax' terms in one
358 single term with right-truncation/regular attribute. By default, 'truncmax',
359 is 10000.
360
361 Bug #781: Easier tracking of result sets. We only do this when mkstemp
362 is available (most moderun Unixes supports this). The PID is included
363 in filename : tempdir/zrs_PID_XXXXXX.
364
365 Added support for specification of staticrank for grs-class of filters.
366 This is enabled by using 'staticrank indexname' in .abs. Contents of
367 indexname (elm ... indexname:w) is then used as value for staticrank.
368
369 Implemented sorting via the ISAMB system. To enable, use sortindex:i in
370 zebra.cfg.
371
372 Added special retrieval support for sort keys. These keys can also be
373 fetched using zebra::index:field:s   
374
375 Added support for specification of approximative limits for whole query.
376 This is specified as attribute type 12. Semantics is the same as
377 estimatehits in zebra.cfg.
378
379 --- 2.0.6 2006/11/28
380
381 Fixed bug #736: Updates gets slower.
382
383 Fixed bug #735: Delete fails to process rest of file after a record that
384 does not exist,
385
386 Added RPM package for Zebra 2.
387
388 Improved indexing speed for large documents.
389
390 Added support for special utility retrieval zebra:: which offers retrieval
391 of fundamental properties for record, such as indexed terms, raw record,
392 and system record ID.
393
394 --- 2.0.4 2006/10/16
395
396 Fixed bug #47: Commit needs to check for roll-back.
397
398 Fixed bug #672: Trailing characters in password are ignored
399
400 Added extra presence check for tcl.h, because some systems have
401 tclConfig.sh installed even though Tcl C headers are missing.
402
403 Optimized melm performance.
404
405 Do not use sync(2) during commit (but rely on sync'd individual files).
406
407 Fixed bug in ISAMB's utility function decode_ptr. With gcc -O3 on some
408 platforms the src argument was not updated. Problem was compiler
409 optimization due to strict aliasing rules.
410
411 --- 2.0.2 2006/09/22
412
413 Bug fixes: #638, #647, #657, #669.
414
415 Implement skip of 0 hit counts in scan. Useful for scan operations
416 limited by a result set.
417
418 Honor position attribute, i.e. allow first-in-field search. To
419 enable this, "firstinfield 1" must be given for an index in
420 default.idx. Enabled in tab/default.idx for w. At this stage
421 first-in field is supported for phrase/and-list/or-list searches
422
423 Common stream reader interface for record filters (struct ZebraRecStream).
424
425 Debian package fix: packages idzebra-2.0 + libidzebra-2.0-modules did
426 not depend properly on sub packages.
427
428 --- 2.0.0 2006/08/14
429
430 New record filter (record type) 'alvis' which uses XSLT transformations
431 to drive both indexing as well as retrieval. See example configuration in the
432 'example/alvis-oai' directory.
433
434 'isamb' is now the default ISAM system. In Zebra 1.3, the default ISAM was
435 'isamc'. The type used can still be configured with the 'isam' setting
436 in 'zebra.cfg'.
437
438 Index structure is now 64-bit based, also on 32 bit systems. 
439 There are no more 2GB register file limits.
440
441 Extended search result tuning. Approximate limit for terms can be enabled
442 and specified with attribute 11. The (approx or exact) hit count is returned
443 as part of the search response as in 1.3 series. The subqueryID of a search
444 term hit count can be specified with attribute 10.
445
446 Zebra uses string attributes for indexing internally. Using set+numeric
447 use attribute can still be used. This is a search-only conversion which
448 inspects '*.att'-set files as indicated using attset-directives in 'zebra.cfg'.
449 'attset' references are no longer required, but when used they deserve
450 as "check" for that the index names used are also present in '*.att'.
451
452 Zebra record filters (record type handlers) may be built as loadable
453 modules (.so's) on Unix. In particular the Zebra 2.0 Debian package uses
454 separate packages for each of them. This also means that zebra programs
455 such as zebraidx is no longer depending on Tcl/other..
456
457 Documentation updates, especially on query structure and syntax, SRU, 
458 XSLT support, alvis filter module, and many added examples.
459
460 Improved logging of the 'zebrasrv' and 'zebraidx' binaries.
461
462 Improved debian package structure.
463
464 --- 1.3.16 2004/08/16