1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594
|
--- 2.2.8 2024/10/22
Fix implicit atoi/stdlib import
--- 2.2.7 2023/01/13
Fix Tcl not enabled by confiugre (#48)
Buffer overflow fixes and reformats (#47)
--- 2.2.6 2022/12/14
zebraidx: Mention -f option when skipping index lines #39
Fix result-sets not removed in some cases #38
--- 2.2.5 2022/06/22
Fix buffer overflow in dictionary insert handling. Could lead to
assert failures in some cases. All users should upgrade.
--- 2.2.4 2022/05/30
Upgrade configure.ac to version 2.69
Make memMax a size_t type ZEB-694 #34
Fix sample XSLT for Libxslt 1.1.35 ZEB-693
--- 2.2.3 2021/10/04
Fix #26: Index contents not shown when using "zebra::index" elements
in ICU mode.
Update XSL in example/marcxml. Thx to Jaider A. F.
zebra.pc fixes. Add Requires directive (so we don't have to
guess YAZ flags here). Simplify value for Libs, but add
all libs in Libs.private. Cflags: No need for I${includedir}
Fix #24: Do not tokenize in ICU phrase rule.
Windows: update for VS 2019, ICU 68.
--- 2.2.2 2020/11/05
Add bf_xopen, bf_xclose, bf_alloc, bf_free symbols to keep it
ABI compatible. Closes #22.
Bump zebra libraries from 0:1:0 to 0:2:0 (revision + 1).
A few typos fixed.
--- 2.2.1 2020/10/22
Remove bf_xopen, bf_xclose, bf_alloc, bf_free and tests for them.
These utilities are not used anywhere in Zebra. Closes #12.
Convert some Zebra configuration files in ISO-8859-1 to UTF-8.
--- 2.2.0 2020/09/14
For configure, --with-yaz=pkg makes it use yaz.pc rather than
yaz-config.
New generated pkg-config file zebra.pc.
For configure, use pkg-config to find Expat library.
For configure, use pkg-config to find Tcl library.
--- 2.1.4 2018/08/01
Avoid useless debug info for facet handling ZEB-682
--- 2.1.3 2017/12/06
Perform reverse mapping for facets ZEB-601
Update to Expat 2.2.3
--- 2.1.2 2017/08/04
Update to Expat 2.2.3 on Windows installer
--- 2.1.1 2017/07/17
Use Expat 2.2.2 on Windows installer ZEB-676
--- 2.1.0 2017/04/03
Fix 'make -j no check' by serializing some tests that weren't
supposed to be run in parallel.
Add support for user-defined groups in mod-dom filter. A group can
be generated with <group>-indexing element with property unit. Unit
is one of the known Z39.50 proximity units and defaults to "element"
if omitted. This can be searched with @prox 0 0 0 0 k 8 which boils
down to "same known unit=element".
Fix compilation with Tcl 8.6 and later. Closes #4
--- 2.0.62 2016/01/30
Zebra SCM moved to GitHub https://github.com/indexdata/idzebra
Make packages for Ubuntu 15.10/Wily Werewolf.
Fix incorrect scan terms with result set limit. Closes #1
Fix documentation of of chr's equivalent directive ZEB-672
And add a few tests for the behavior.
Allow @attr 2=102 for numeric index
--- 2.0.61 2015/09/15
Upgrade to debhelper version 7
Not upgrading to version 9 now. It would move libraries and modules
to /usr/lib/{arch}.
Many documentation fixes. Thanks to David Crossley.
Build: Remove Debian squeeze. Add CentOS 7. Remove Ubuntu Saucy.
Add Ubuntu Vivid.
Fix modulePath for examples ZEB-665
Fix typo in path to oai-pmh example
--- 2.0.60 2015/02/06
Fix ICU phrase searches for terms split by ICU ZEB-664
Update Visual Studio nmake file for VS 2013.
--- 2.0.59 2014/04/17
Fix 0 ptr reference (crash) during search that occurred due to slightly
different behavior of YAZ 5.0.22 / YAZ 5.0.23.
--- 2.0.58 2014/03/06
Update OAI example README and allow Bib-1 attribute searches.
Fix ICU indexing test. The code was not really broken, but the test
program was.
--- 2.0.57 2014/02/28
Deb/RPM/Win Zebra packages uses libyaz5 (rather than libyaz4). This adds
SRU 2.0 support for Zebra.
--- 2.0.56 2013/11/04
Updates for YAZ 5. Zebra compiles fine with YAZ 4 still.
--- 2.0.55 2013/06/24
Addx + document zebraidx command "check", which checks consistency of
register.
Debian : idzebra-2.0-utils includes init.d script. Includes logrotate as
well. The zebrasrv init script listens on port 2100. At this time,
zebra.cfg, is not part of the package. Administrator must install or
modify $CONFIG to point to a working zebra.cfg.
RPM: idzebra-2.0 includes init.d script. Also includes logrotate. The
zebrasrv init script listens on port 2100 (IPv4 + IPv6). At this time,
zebra.cfg, is not part of the package. Administrator must install or
modify $CONFIG to point to a working zebra.cfg.
--- 2.0.54 2013/01/21
For mod_dom filter, allow type="adelete", which will not treat a failed
delete as an error (such as a record ID that do not exist already).
Log XML2/XSLT errors to yaz_log instead of stdout/stderr.
Relay \-character in non-regexp searches. Was treated as backslash
sequence before.
--- 2.0.53 2012/12/03
Improve hit estimate for or-searches (typically truncation)
Fix snippets for non-ICU / seqno not updated.
Replace key_compare_it with key_compare. This is because key_compare_it
throws exception on some CPUs with alignment constraints.
ICU: support @attr 5=2, @attr 5=3 in searches. (left truncation and
left+right truncation).
--- 2.0.52 2012/05/31
Fix problem in dictionary due to increase max size of term.
--- 2.0.51 2012/05/31
Fix buffer overrun for terms using ICU normalization.
Increase max size of indexing term from 256 to 512.
--- 2.0.50 2011/11/01
Fix a bug in zebra_begin_trans where Zebra could mark a transaction
complete when it actually failed. This could happen if register files
could not be opened.
--- 2.0.49 2011/09/02
Scan: allow preferred position > number + 1
Fix bug #4592: dict_scan misses
Fix snippets for complete fields, bug #4590. The
snippet_add_complete_fields (chr-system) now takes the indexing term
verbatim and makes that the display term.
--- 2.0.48 2011/06/28
Utility idebra-abs2dom part of distribution and deb+RPM packages.
Fix problem with scan and complete subfields (:p) . In some cases,
the display scan terms, would be invalid.
--- 2.0.47 2011/05/24
RPM: Store libraries in /usr/lib64 on 64-bit platforms.
Zebra honors SRU sortkeys. If used with YAZ 4.2.0 or later,
CQL sortby is honored as well.
Fix scan's handling of normalized terms. Some terms were incorrectly
ignored in the scan results, CJK terms in particular.
--- 2.0.46 2011/03/23
Fix bug in dictionary component of Zebra that could lead to
inconsistent register assert for large deleteions.
Improve estimate hits for phrase searches.
--- 2.0.45 2010/12/22
Add Debian package for Ubuntu maverick.
Update to newer Libxml2/Libxslt for Windows package.
Escape-sequences are disabled for RPN-queries with truncation=105/106.
These, unlike regular expressions, do not support \-sequences .
--- 2.0.44 2010/06/29
grs1: avoid term_len < 0 for .abs operator 'range'
ICU: fix use of un-init variable.
More reasonable approx hits for truncated searches.
Updates WRT Odr_int (YAZ 4).
--- 2.0.43 2009/11/05
Fix hits counts for searches when @attr 12=n is in use. This bug
was introduced in 2.0.40.
--- 2.0.42 2009/10/08
Proximity modifications. The optimized proximity now deals with more
cases, ie all prox of the form @prox 0 d 1 1,2,3 k 2 ..
That's exlusive==0, any distance, ordered (true), relation (<, =, <=),
known unit word.
Fix bug WRT inconsistent registers, bug #3062.
Fix install doc rule so it's compatible with Automake 1.11.
--- 2.0.41 2009/08/24
Fix typos and other errors in the documentation. Thanks to Galen
Charlton.
Fix DOM filter so that full record ID (z:id) if given is used verbatim
rather than truncated until first blank - in other words use memcpy
rather than sscanf. For PI fix record attributes parsing which was
completely broken.
--- 2.0.40 2009/07/13
Fixed problem in result set handling and segment handling.
--- 2.0.39 2009/07/09
Improved speed of record fetching by using a different block sizes
for recd{A,B}.
Added zlib-compression of recd-storage (record data). This is enabled
by using recordCompression: zlib in zebra.cfg.
Dictionary delete more agressive (dict_del_string).
--- 2.0.38 2009/06/19
Improved estimated hits for AND operation (bug #2907)
Fixed problem with register area growing after "drop DB". (bug #2913).
--- 2.0.37 2009/05/18
Example with marc21 is now installed and part of packages.
Fixed XSL for OAI example.
Fixed problem with generic proximity handling.
Added new ranking handler: rank-2. This is a combination of rank-1 and
static rank.. The staticrank is inverse (lowest value comes first, etc..).
rank-2 thus substracts that from score. This allows a system to specify
a "base" rank (=staticrank).
--- 2.0.36 2009/02/17
Added implementation-codes directive for .mar files.
Avoid error for missing recordId when zebraidx' option -s is in use.
Fixed problem with some disk blocks not beeing freed correctly when
'drop database' is used.
--- 2.0.34 2008/11/06
Facets can now be performed on sort registers (:s), not just regular indexes
(:w, :p) etc.. The performance appers to be much better than before.
Added a facility to embed metadata for records generated by the DOM XML
filter. The meta data step is triggered by a 'process-meta' section in the
retrieve section of the dom config, e.g.
<retrieve name="myelementset">
<xslt stylesheet="my-usual.xsl"/>
<process-meta/>
</retrieve>
The meta section substitutes metadata for all elements called 'meta' in
namespace http://indexdata.com/zebra-2.0 . The meta element must have
exactly one attribute, name, which specifies the special
element set name which is equivalent to the suffix to zebra:: for
non-embedded special retrievals. This allows snippets, facets etc to be
included.
Fixed bug #2202: incorrect sorting order when searching multiple databases.
--- 2.0.32 2008/06/06
Fixed OAI example.
--- 2.0.30 2008/05/14
Changed service name for Windows. Bug #978.
Fixed the alwaysmatches including _ALLRECORDS for ICU term indexing. Bug #2139.
--- 2.0.28 2008/04/03
Handle right-truncation for ICU normalized terms.
Updated OAI-PMH example.
--- 2.0.26 2008/01/28
Fixes for searches on Chinese text.
Fixes for scan using ICU indexing terms.
--- 2.0.24 2008/01/18
Fixed some memory violations for ICU enabled indexing that could be
triggered by long phrases.
Enable ICU on Windows. Thanks to Tumer Garip for makefile patches.
Fixed bug #2002: Zebra crashes during merge using ICU indexing.
--- 2.0.22 2007/12/20
Handle encoding errors for strings passed to ICU. (assert was
thrown earlier).
Added zebraidx command, adelete, which attempts to delete records.
It's like 'delete', but does not fail if a record does not exist.
--- 2.0.20 2007/12/19
Added experimental support for faceted results. This is implemented
as a special retrieval on a result set and is triggered using element
set name zebra::facet::f1:t1,f2,t2,.. which will return terms and
hit counts for field f1, type t1, field f2, type t2, .. The returned
data is packed as XML or SUTRS depending on record syntax.
Added support for Unicode-based indexing using ICU. This allows
locale specific scanning, sorting. The implementation is based on
the ICU utility part of YAZ 3.0.16 and later. See the manual as well
as the examples/marcxml for an example of the use of ICU.
--- 2.0.18 2007/09/19
Fixed bug with scan and staticrank enabled. Bug introduced in 2.0.16.
--- 2.0.16 2007/09/12
Scan now returns a displayTerm which closer to the original word/phrase
from original record.
Added snippet support. Element set name zebra::snippet will make
Zebra return an XML record with snippets (terms around matching terms).
Fixed bug #1142: Non-indexed but listed attributes issues diagnostic.
Fixed bug #1131: Missing value-of data in DOM filter.
Fixed bug #1049: zebra.cfg lines with leading space are ignored.
Fixed bug #1128: sortmax not honored.
Fixed bug #1121: Crash for some searches with customized string.chr.
--- 2.0.14 2007/05/09
Zebra uses the YAZ 3 API. Note that this changes the Zebra API
as well. The register layout is the same however.
Fixed bug #1114: scan within set may use excessive CPU.
Fixed memory leak that occurred in scan.
Fixed memory leak that occurred for each deleted record.
Optimize updates of records where content is almost identical to previous
version of record. This makes updating of the internal explain database
faster too.
For RPN queries the index type (w,p,..) may be specified verbatim as
structure attribute with string value, e.g. @attr 4=w .
Changed record update API . It is now handled by function
zebra_record_update which does insert/replace/delete/update of records .
This function replaces zebra_record_{insert,delete} and
zebra_admin_exchange_record. The DOM filter uses this feature and the
@type attribute in record element specifies the action
insert/replace/delete/update.
Added support for multi-record updates (Bug #944). Based on patch from
Hans-Werner Hilse.
--- 2.0.12 2007/03/07
Fixed bug with indexing of attributes for rec.grs-class of filters.
If X-Path was enabled xelm a/@b would be ignored.
Fixed bug in register system where 'no more space' messages was produced
even though there was plenty of space.
Fixed bug #884: Entity declarations in input are lost at retrieval time.
Implemented new filter 'dom'. See test/xslt/dom-config*xml for examples.
This, like alvis, performs indexing and retrieval using XSLT. But Unlike
alvis, it allows multiple XSLT steps to be performed and does ISO2709
reading. Bug #843.
--- 2.0.10 2007/01/24
Staticrank indexing is now an index register type defined in default.idx
via directive 'staticrank'. The 'staticrank' directive for grs is no longer
supported (was only implemented for Zebra 2.0.8).
For searches, allow truncmax value to be controlled with attribute 13.
If given, that overrides the value of 'truncmax'.
For truncations being limited (abort at truncmax terms), zebrasrv returns
SearchResponse with resultSetStatus=subset.
For estimated hit counts, zebrasrv returns SearchResponse with
resultSetStatus=estimate.
--- 2.0.8 2007/01/15
For searches, do not truncate more than at most 'truncmax' terms in one
single term with right-truncation/regular attribute. By default, 'truncmax',
is 10000.
Bug #781: Easier tracking of result sets. We only do this when mkstemp
is available (most moderun Unixes supports this). The PID is included
in filename : tempdir/zrs_PID_XXXXXX.
Added support for specification of staticrank for grs-class of filters.
This is enabled by using 'staticrank indexname' in .abs. Contents of
indexname (elm ... indexname:w) is then used as value for staticrank.
Implemented sorting via the ISAMB system. To enable, use sortindex:i in
zebra.cfg.
Added special retrieval support for sort keys. These keys can also be
fetched using zebra::index:field:s
Added support for specification of approximative limits for whole query.
This is specified as attribute type 12. Semantics is the same as
estimatehits in zebra.cfg.
--- 2.0.6 2006/11/28
Fixed bug #736: Updates gets slower.
Fixed bug #735: Delete fails to process rest of file after a record that
does not exist,
Added RPM package for Zebra 2.
Improved indexing speed for large documents.
Added support for special utility retrieval zebra:: which offers retrieval
of fundamental properties for record, such as indexed terms, raw record,
and system record ID.
--- 2.0.4 2006/10/16
Fixed bug #47: Commit needs to check for roll-back.
Fixed bug #672: Trailing characters in password are ignored
Added extra presence check for tcl.h, because some systems have
tclConfig.sh installed even though Tcl C headers are missing.
Optimized melm performance.
Do not use sync(2) during commit (but rely on sync'd individual files).
Fixed bug in ISAMB's utility function decode_ptr. With gcc -O3 on some
platforms the src argument was not updated. Problem was compiler
optimization due to strict aliasing rules.
--- 2.0.2 2006/09/22
Bug fixes: #638, #647, #657, #669.
Implement skip of 0 hit counts in scan. Useful for scan operations
limited by a result set.
Honor position attribute, i.e. allow first-in-field search. To
enable this, "firstinfield 1" must be given for an index in
default.idx. Enabled in tab/default.idx for w. At this stage
first-in field is supported for phrase/and-list/or-list searches
Common stream reader interface for record filters (struct ZebraRecStream).
Debian package fix: packages idzebra-2.0 + libidzebra-2.0-modules did
not depend properly on sub packages.
--- 2.0.0 2006/08/14
New record filter (record type) 'alvis' which uses XSLT transformations
to drive both indexing as well as retrieval. See example configuration in the
'example/alvis-oai' directory.
'isamb' is now the default ISAM system. In Zebra 1.3, the default ISAM was
'isamc'. The type used can still be configured with the 'isam' setting
in 'zebra.cfg'.
Index structure is now 64-bit based, also on 32 bit systems.
There are no more 2GB register file limits.
Extended search result tuning. Approximate limit for terms can be enabled
and specified with attribute 11. The (approx or exact) hit count is returned
as part of the search response as in 1.3 series. The subqueryID of a search
term hit count can be specified with attribute 10.
Zebra uses string attributes for indexing internally. Using set+numeric
use attribute can still be used. This is a search-only conversion which
inspects '*.att'-set files as indicated using attset-directives in 'zebra.cfg'.
'attset' references are no longer required, but when used they deserve
as "check" for that the index names used are also present in '*.att'.
Zebra record filters (record type handlers) may be built as loadable
modules (.so's) on Unix. In particular the Zebra 2.0 Debian package uses
separate packages for each of them. This also means that zebra programs
such as zebraidx is no longer depending on Tcl/other..
Documentation updates, especially on query structure and syntax, SRU,
XSLT support, alvis filter module, and many added examples.
Improved logging of the 'zebrasrv' and 'zebraidx' binaries.
Improved debian package structure.
--- 1.3.16 2004/08/16
|