1 Changed record index structure. New layout is incompatible with
2 previous releases. Added setting "recordcompression" to control
3 compression of records. Possible values are "none" (no
4 compression) and bzip2 (compression using libbz2).
6 Added XML transfer syntax support for retrieval of structured records.
7 Schema in CompSpec is recognised in retrieval of structured records.
9 Changed Tcl record filter so that it attemps to read <filt>.tflt. If
10 that fails, the filter reads the file <filt>.flt (regx style filter).
12 Implemented new Tcl record filter - use grs.tcl.<filter> to enable it.
13 Zebra's configure script automatically attempts to locate Tcl. For
14 manual Tcl configuration use option --with-tclconfig=<path> to specify
15 where Tcl's library files are located.
17 Implemented "compression" of Dictionary and ISAM system. Dictionary
20 Added "tagsysno" directive to zebra.cfg to control under which tag the
21 system ID is placed. Use tagsysno: 0 to disable Zebra's system number
24 Added "tagrank" as above.
26 Changed file naming scheme for register files from <name>.mf.<no> to
29 Implemented "position"-flag for register type (as defined in
30 default.idx). When set to zero no position (or seqence number) is
31 saved in register for each word occurrence, thus saving some register
34 Implemented database mapping. Using mapdb one can specify a database
35 to be mapped to one or more physical databases. Usage:
36 mapdb <fromdb> <todb> ..
38 Added SOIF-filter. Thanks to Peter Valkenburg.
40 For the regx-filter "end element -record" may trigger a mark-of-record
41 if outer level is reached.
43 Tag sets may be typed in the reference to it. From the .abs-file the
44 "tagset" directive takes a third optional integer type for the tag set
45 referenced. From a .tag-file the "include" directive takes a third
46 optional type as well. The old "type" directive in the tag set itself
47 is still recognized but acts as the default type for the tag set.
49 Zebra supports the specification of arbitrary attributes sets, schemas
50 and tag sets, because of the change in YAZ' OID management system.
52 Fixed bug in Sort that caused it NOT to use character mapping as it
55 Zebra now uses GNU configure to generate Makefile(s).
57 Added un-optimised support for left and left/right truncation attributes.
59 Added support for relational operators on text when using RPN queries.
61 Added support for sort specifications in RPN queries. Type 7 specifies
62 'sort' where value 1=ascending, value 2=descending. The use attribute
63 specifies the field criteria as usual. The term specifies priority
64 where 0=first, 1=second, ...
66 Changed the way use attributes are specified in the recordId
69 Maximum number of databases in one Zebra register increased.
71 New setting, databasePath, which specifies that first directory during
72 update traversal is the database name (instead of a fixed one).
74 New setting, explainDatabase, which specifies that databases are
77 Modified Zebra so that it works with ASN.1 compiled code for YAZ.
79 Implemented EXPLAIN database maintenance. Zebra automatically
80 generate - and update CategoryList, TargetInfo, DatabaseInfo,
81 AttributeSetInfo and AttributeDetails records at this stage. The
82 records may be transferred as GRS-1, SUTRS or Explain.
84 Fixed register spec so that colon isn't treated as size separator
85 unless followed by [0-9+-] in order to allow DOS drive specifications.
87 Fixed two bugs in ISAMC system.
89 Changed the way Zebra keeps its maintenance information about attribute
90 sets, available attributes, etc.. Records in "SGML" notation using an
91 EXPLAIN schema is now used when appropriate.
93 Bug fix: Index didn't handle update/insert/delete of the same record
94 (i.e. same recordId) in one run (one invocation of zebraidx). Only the
95 first occurence of a record is considered.
97 Most searches now return correct number of hits.
99 New modular ranking system. Interested programmers are encouraged to
100 inspect rank1.c and improve the algorithm.
102 Bug fix: Lock files weren't removed as they should on NT.
104 Implemented Z39.50 Sort. Zebra's sort handler uses use attributes to
105 specify a "sort register". Refer to the gils sample records which refer
106 to index type "s" which is specified as "sort" in the default.idx file.
107 Each sort criteria can either be Ascending or Descending and at most
108 three sort elements can be specified.
110 Bug fix: Character mapping didn't work for text files.
114 Simple ranked searches now return correct number of hits.
116 The test option (-s) only makes a read-lock on the index as well
117 as using read-only operations anywhere.
119 Moved towards generic character mapping. Configuration file default.idx
120 specifies character map files for register types w, p, u, etc.
122 Implemented "begin variant" for the sgml.regx - filter.
124 Fixed a few memory leaks.
126 Added support for C++, headers uses extern "C" for public definitions.
128 Bug fix: The show records facility (-s) only displayed information for
129 the first record in a file (and not for every record in the file).
131 Added option "-f <n>" to limit the logging of record operations. After
132 <n> records has been processed no logging is performed (unless errors
135 Bug fix: the compressed ISAM system didn't handle update operations
138 Added setting, "maxResultSetSize", to hold the number of records to
139 save in a result set.
141 Bug fix: Complete phrase did't work for search operations.
143 Bug fix: temporary result sets weren't deleted.
145 Reduced disk space for saved keys (storeKeys = 1).
147 Added optional, physical ANY (key replication)
149 Implemented proximity operator in search.
151 Bug fix: the path name buffers used by file match traversal routines
152 have been extended to support long file names.
154 New C(ompressed) ISAM system. To enable it, specify "isam: c" in the
155 configuration file. The resulting register without "storeKeys" is about
156 half the size, and the memory used by zebraidx during phase 2 (merge) is
157 reduced to a minimum.
159 Reworked the way Regexp-2 queries with error tolerance are handled and
160 specified. The documentation has been updated accordingly.
162 Bug fix: Zebrasrv didn't search correctly when queries contained masking
163 characters. This bug was introduced in 1.0a8.
165 Zebrasrv now tag records with the proper database name.
167 New settings, memMax and keyTmpDir.
169 Changed name of setting lockDir (previously called lockPath) and
170 setTmpDir (previously called tempSetPath).
172 Generalized and changed record type specifications. In short, there are:
174 grs.sgml structured, "SGML-like" syntax
175 grs.regx.<filter> structured, Regular expression filter
176 grs.marc.<abs> Reads *MARC records in the ISO2709 format. <abs>
177 is the name of an abstract syntax file.
178 Bug fix: Result sets weren't sorted in operations involving boolean
179 operations with "ranked" operands.
183 Added national character-handling subsystem.
187 Small modifications to input filters and profiles.
189 Added support for SOIF syntax (with private OID).
193 Fixed buffer-size problem in indexing.
195 Added compression to temporary files for updating.
197 Added phrase registers.
199 Added dynamic mapping of search attribute to multiple termlists (ANY).
201 Scan support in multiple databases/registers.
203 Configuration settings are case-insensitive and single dash (-)
204 characters are ignored in comparisons.
206 The index processing ignores empty files - warning given.
208 New option to zebraidx (-V) displays version information.
212 Fixed problem in file-update system.
214 Fixed problem in shadow system; register was sometimes corrupted after
219 Fixed problems in the ISAM subsystem. Caused difficulties when updating
222 Fixed small problem in SUTRS-filter. A newline was sometimes inserted before
223 the rank and record number.
225 Fixed bug in the isam subsystem - caused a malfunction when accessing
226 words which occurred more than 10000 times.
228 Distribution should now include YAZ (Z39.50 protocol stack) to simplify
231 Server can now run under inetd. Use option -i, and -w <directory> to
232 set working directory to desired location.
234 New zebraidx command: clean - removes temporary shadow files.
236 Fixed bug in ISAM system. Occurred rarely during register updates.
238 Logging during index merge phase is improved. The remaining running
241 Temporary files generated by zebraidx are removed after each run.
243 Bug fix: Dictionary didn't handle 8-bit characters correctly; was obvious
244 when doing scan operations in dictionaries with European characters.
248 A whole slew of updates, to make the first publicized release. Get the doc
253 Memory-problems in ISAM fixed. More blocktypes added to the default setup
254 to increase performance on larger databases.
256 Various minor changes in data management system.
260 A couple of portability-problems resolved.
262 Changed some malloc() to xmalloc().