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