Changed extract code so that it optimizes updates of records where content
[idzebra-moved-to-github.git] / NEWS
1 Fixed memory leak that occurred for each deleted record.
2
3 Optimize updates of records where content is almost identical to previous
4 version of record. This makes updating of the internal explain database
5 faster too.
6
7 For RPN queries the index type (w,p,..) may be specified verbatim as
8 structure attribute with string value, e.g. @attr 4=w .
9
10 Changed record update API . It is now handled by function
11 zebra_record_update which does insert/replace/delete/update of records .
12 This function replaces zebra_record_{insert,delete} and
13 zebra_admin_exchange_record. The DOM filter uses this feature and the
14 @type attribute in record element specifies the action
15 insert/replace/delete/update.
16
17 Added support for multi-record updates (Bug #944). Based on patch from
18 Hans-Werner Hilse.
19
20 --- 2.0.12 2007/03/07
21
22 Fixed bug with indexing of attributes for rec.grs-class of filters.
23 If X-Path was enabled xelm a/@b would be ignored.
24
25 Fixed bug in register system where 'no more space' messages was produced
26 even though there was plenty of space.
27
28 Fixed bug #884: Entity declarations in input are lost at retrieval time.
29
30 Implemented new filter 'dom'. See test/xslt/dom-config*xml for examples. 
31 This, like alvis, performs indexing and retrieval using XSLT. But Unlike
32 alvis, it allows multiple XSLT steps to be performed and does ISO2709
33 reading. Bug #843.
34
35 --- 2.0.10 2007/01/24
36
37 Staticrank indexing is now an index register type defined in default.idx
38 via directive 'staticrank'. The 'staticrank' directive for grs is no longer
39 supported (was only implemented for Zebra 2.0.8).
40
41 For searches, allow truncmax value to be controlled with attribute 13.
42 If given, that overrides the value of 'truncmax'.
43
44 For truncations being limited (abort at truncmax terms), zebrasrv returns
45 SearchResponse with resultSetStatus=subset.
46
47 For estimated hit counts, zebrasrv returns SearchResponse with 
48 resultSetStatus=estimate.
49
50 --- 2.0.8 2007/01/15
51
52 For searches, do not truncate more than at most 'truncmax' terms in one
53 single term with right-truncation/regular attribute. By default, 'truncmax',
54 is 10000.
55
56 Bug #781: Easier tracking of result sets. We only do this when mkstemp
57 is available (most moderun Unixes supports this). The PID is included
58 in filename : tempdir/zrs_PID_XXXXXX.
59
60 Added support for specification of staticrank for grs-class of filters.
61 This is enabled by using 'staticrank indexname' in .abs. Contents of
62 indexname (elm ... indexname:w) is then used as value for staticrank.
63
64 Implemented sorting via the ISAMB system. To enable, use sortindex:i in
65 zebra.cfg.
66
67 Added special retrieval support for sort keys. These keys can also be
68 fetched using zebra::index:field:s   
69
70 Added support for specification of approximative limits for whole query.
71 This is specified as attribute type 12. Semantics is the same as
72 estimatehits in zebra.cfg.
73
74 --- 2.0.6 2006/11/28
75
76 Fixed bug #736: Updates gets slower.
77
78 Fixed bug #735: Delete fails to process rest of file after a record that
79 does not exist,
80
81 Added RPM package for Zebra 2.
82
83 Improved indexing speed for large documents.
84
85 Added support for special utility retrieval zebra:: which offers retrieval
86 of fundamental properties for record, such as indexed terms, raw record,
87 and system record ID.
88
89 --- 2.0.4 2006/10/16
90
91 Fixed bug #47: Commit needs to check for roll-back.
92
93 Fixed bug #672: Trailing characters in password are ignored
94
95 Added extra presence check for tcl.h, because some systems have
96 tclConfig.sh installed even though Tcl C headers are missing.
97
98 Optimized melm performance.
99
100 Do not use sync(2) during commit (but rely on sync'd individual files).
101
102 Fixed bug in ISAMB's utility function decode_ptr. With gcc -O3 on some
103 platforms the src argument was not updated. Problem was compiler
104 optimization due to strict aliasing rules.
105
106 --- 2.0.2 2006/09/22
107
108 Bug fixes: #638, #647, #657, #669.
109
110 Implement skip of 0 hit counts in scan. Useful for scan operations
111 limited by a result set.
112
113 Honor position attribute, i.e. allow first-in-field search. To
114 enable this, "firstinfield 1" must be given for an index in
115 default.idx. Enabled in tab/default.idx for w. At this stage
116 first-in field is supported for phrase/and-list/or-list searches
117
118 Common stream reader interface for record filters (struct ZebraRecStream).
119
120 Debian package fix: packages idzebra-2.0 + libidzebra-2.0-modules did
121 not depend properly on sub packages.
122
123 --- 2.0.0 2006/08/14
124
125 New record filter (record type) 'alvis' which uses XSLT transformations
126 to drive both indexing as well as retrieval. See example configuration in the
127 'example/alvis-oai' directory.
128
129 'isamb' is now the default ISAM system. In Zebra 1.3, the default ISAM was
130 'isamc'. The type used can still be configured with the 'isam' setting
131 in 'zebra.cfg'.
132
133 Index structure is now 64-bit based, also on 32 bit systems. 
134 There are no more 2GB register file limits.
135
136 Extended search result tuning. Approximate limit for terms can be enabled
137 and specified with attribute 11. The (approx or exact) hit count is returned
138 as part of the search response as in 1.3 series. The subqueryID of a search
139 term hit count can be specified with attribute 10.
140
141 Zebra uses string attributes for indexing internally. Using set+numeric
142 use attribute can still be used. This is a search-only conversion which
143 inspects '*.att'-set files as indicated using attset-directives in 'zebra.cfg'.
144 'attset' references are no longer required, but when used they deserve
145 as "check" for that the index names used are also present in '*.att'.
146
147 Zebra record filters (record type handlers) may be built as loadable
148 modules (.so's) on Unix. In particular the Zebra 2.0 Debian package uses
149 separate packages for each of them. This also means that zebra programs
150 such as zebraidx is no longer depending on Tcl/other..
151
152 Documentation updates, especially on query structure and syntax, SRU, 
153 XSLT support, alvis filter module, and many added examples.
154
155 Improved logging of the 'zebrasrv' and 'zebraidx' binaries.
156
157 Improved debian package structure.
158
159 --- 1.3.16 2004/08/16