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