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