Minor changes.
[idzebra-moved-to-github.git] / CHANGELOG
1 Added "tagsysno" directive to zebra.cfg to control under which tag the
2 sysstem ID is placed. Use tagsysno: 0 to disable Zebra's system number
3 entirely.
4
5 Added "tagrank" as above.
6
7 Changed file naming scheme for register files from <name>.mf.<no> to
8 <name>-<no>.mf.
9
10 Implemented "position"-flag for register type (as defined in
11 default.idx). When set to zero no position (or seqence number) is
12 saved in register for each word occurrence, thus saving some register
13 space.
14
15 Implemented database mapping. Using mapdb one can specify a database
16 to be mapped to one or more physical databases. Usage:
17 mapdb <fromdb> <todb> ..
18
19 Added SOIF-filter. Thanks to Peter Valkenburg.
20
21 For the regx-filter "end element -record" may trigger a mark-of-record
22 if outer level is reached.
23
24 Tag sets may be typed in the reference to it. From the .abs-file the
25 "tagset" directive takes a third optional integer type for the tag set
26 referenced. From a .tag-file the "include" directive takes a third
27 optional type as well. The old "type" directive in the tag set itself
28 is still recognized but acts as the default type for the tag set.
29  
30 Zebra supports the specification of arbitrary attributes sets, schemas
31 and tag sets, because of the change in YAZ' OID management system.
32
33 Fixed bug in Sort that caused it NOT to use character mapping as it
34 should.
35
36 Zebra now uses GNU configure to generate Makefile(s).
37
38 Added un-optimised support for left and left/right truncation attributes.
39
40 Added support for relational operators on text when using RPN queries.
41
42 Added support for sort specifications in RPN queries. Type 7 specifies
43 'sort' where value 1=ascending, value 2=descending. The use attribute
44 specifies the field criteria as usual.  The term specifies priority
45 where 0=first, 1=second, ...
46
47 Changed the way use attributes are specified in the recordId
48 specification.
49
50 Maximum number of databases in one Zebra register increased.
51
52 New setting, databasePath, which specifies that first directory during
53 update traversal is the database name (instead of a fixed one).
54
55 New setting, explainDatabase, which specifies that databases are
56 EXPLAIN aware.
57
58 Modified Zebra so that it works with ASN.1 compiled code for YAZ.
59
60 Implemented EXPLAIN database maintenance. Zebra automatically
61 generate - and update CategoryList, TargetInfo, DatabaseInfo,
62 AttributeSetInfo and AttributeDetails records at this stage. The
63 records may be transferred as GRS-1, SUTRS or Explain.
64
65 Fixed register spec so that colon isn't treated as size separator
66 unless followed by [0-9+-] in order to allow DOS drive specifications.
67
68 Fixed two bugs in ISAMC system.
69
70 Changed the way Zebra keeps its maintenance information about attribute
71 sets, available attributes, etc.. Records in "SGML" notation using an
72 EXPLAIN schema is now used when appropriate.
73
74 Bug fix: Index didn't handle update/insert/delete of the same record
75 (i.e. same recordId) in one run (one invocation of zebraidx). Only the
76 first occurence of a record is considered.
77
78 Most searches now return correct number of hits.
79
80 New modular ranking system. Interested programmers are encouraged to
81 inspect rank1.c and improve the algorithm.
82
83 Bug fix: Lock files weren't removed as they should on NT.
84
85 Implemented Z39.50 Sort. Zebra's sort handler uses use attributes to
86 specify a "sort register". Refer to the gils sample records which refer
87 to index type "s" which is specified as "sort" in the default.idx file.
88 Each sort criteria can either be Ascending or Descending and at most
89 three sort elements can be specified.  
90
91 Bug fix: Character mapping didn't work for text files.
92
93 --- 1.0b1 1998/1/29
94
95 Simple ranked searches now return correct number of hits.
96
97 The test option (-s) only makes a read-lock on the index as well
98 as using read-only operations anywhere.
99
100 Moved towards generic character mapping. Configuration file default.idx
101 specifies character map files for register types w, p, u, etc.
102
103 Implemented "begin variant" for the sgml.regx - filter.
104
105 Fixed a few memory leaks.
106
107 Added support for C++, headers uses extern "C" for public definitions.
108
109 Bug fix: The show records facility (-s) only displayed information for
110 the first record in a file (and not for every record in the file).
111
112 Added option "-f <n>" to limit the logging of record operations. After
113 <n> records has been processed no logging is performed (unless errors
114 occur).
115
116 Bug fix: the compressed ISAM system didn't handle update operations
117 correctly.
118
119 Added setting, "maxResultSetSize", to hold the number of records to 
120 save in a result set.
121
122 Bug fix: Complete phrase did't work for search operations.
123
124 Bug fix: temporary result sets weren't deleted.
125
126 Reduced disk space for saved keys (storeKeys = 1).
127
128 Added optional, physical ANY (key replication)
129
130 Implemented proximity operator in search.
131
132 Bug fix: the path name buffers used by file match traversal routines
133 have been extended to support long file names.
134
135 New C(ompressed) ISAM system. To enable it, specify "isam: c" in the
136 configuration file. The resulting register without "storeKeys" is about
137 half the size, and the memory used by zebraidx during phase 2 (merge) is
138 reduced to a minimum.
139
140 Reworked the way Regexp-2 queries with error tolerance are handled and
141 specified. The documentation has been updated accordingly.
142
143 Bug fix: Zebrasrv didn't search correctly when queries contained masking
144 characters. This bug was introduced in 1.0a8.
145
146 Zebrasrv now tag records with the proper database name.
147
148 New settings, memMax and keyTmpDir.
149
150 Changed name of setting lockDir (previously called lockPath) and
151 setTmpDir (previously called tempSetPath).
152
153 Generalized and changed record type specifications. In short, there are:
154        text                plain SUTRS
155        grs.sgml            structured, "SGML-like" syntax
156        grs.regx.<filter>   structured, Regular expression filter
157        grs.marc.<abs>      Reads *MARC records in the ISO2709 format. <abs>
158                            is the name of an abstract syntax file.                           
159 Bug fix: Result sets weren't sorted in operations involving boolean
160 operations with "ranked" operands.
161
162 --- 1.0a8 1996/6/6
163
164 Added national character-handling subsystem.
165
166 Various fixes.
167
168 Small modifications to input filters and profiles.
169
170 Added support for SOIF syntax (with private OID).
171
172 --- 1.0a7 1996/5/16
173
174 Fixed buffer-size problem in indexing.
175
176 Added compression to temporary files for updating.
177
178 Added phrase registers.
179
180 Added dynamic mapping of search attribute to multiple termlists (ANY).
181
182 Scan support in multiple databases/registers.
183
184 Configuration settings are case-insensitive and single dash (-)
185 characters are ignored in comparisons.
186
187 The index processing ignores empty files - warning given.
188
189 New option to zebraidx (-V) displays version information.
190
191 --- 1.0a6 1996/2/24
192
193 Fixed problem in file-update system.
194
195 Fixed problem in shadow system; register was sometimes corrupted after
196 a commit operation.
197
198 --- 1.0a5 1996/2/10
199
200 Fixed problems in the ISAM subsystem. Caused difficulties when updating
201 existing registers.
202
203 Fixed small problem in SUTRS-filter. A newline was sometimes inserted before
204 the rank and record number.
205
206 Fixed bug in the isam subsystem - caused a malfunction when accessing
207 words which occurred more than 10000 times.
208
209 Distribution should now include YAZ (Z39.50 protocol stack) to simplify
210 installation.
211
212 Server can now run under inetd. Use option -i, and -w <directory> to
213 set working directory to desired location.
214
215 New zebraidx command: clean - removes temporary shadow files.
216
217 Fixed bug in ISAM system. Occurred rarely during register updates.
218
219 Logging during index merge phase is improved. The remaining running
220 time is estimated.
221
222 Temporary files generated by zebraidx are removed after each run.
223
224 Bug fix: Dictionary didn't handle 8-bit characters correctly; was obvious
225 when doing scan operations in dictionaries with European characters.
226
227 --- 1.0a4 1996/01/11
228
229 A whole slew of updates, to make the first publicized release. Get the doc
230 and check it out.
231
232 --- 1.0a3 1995/12/06
233
234 Memory-problems in ISAM fixed. More blocktypes added to the default setup
235 to increase performance on larger databases.
236
237 Various minor changes in data management system.
238
239 --- 1.0a2 1995/12/05
240
241 A couple of portability-problems resolved.
242
243 Changed some malloc() to xmalloc().
244
245 --- 1.0a1 1995/11/28
246
247 First release.