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