Version 0.9.9-rc2, 08 apr 2009

  • added IsConnectError(), Open(), Close() calls to Java API (bug #240)
  • added read_buffer, read_unhinted directives
  • added checks for build options returned by mysql_config (builds on Solaris now)
  • added fixed-RAM index merge (bug #169)
  • added logging chained queries count in case of (optimized) multi-queries
  • added GEODIST() function
  • added --status switch to searchd
  • added MySpell (OpenOffice) affix file support (bug #281)
  • added ODBC support (both Windows and UnixODBC)
  • added support for @id in IN() (bug #292)
  • added support for aggregate functions in GROUP BY (namely AVG, MAX, MIN, SUM)
  • added MySQL UDF that builds snippets using searchd
  • added write_buffer directive (defaults to 1M)
  • added xmlpipe_fixup_utf8 directive
  • added suggestions sample
  • added microsecond precision int64 timer (bug #282)
  • added listen_backlog directive
  • added max_xmlpipe2_field directive
  • added initial SphinxQL support to mysql41 handler, SELECT .../SHOW WARNINGS/STATUS/META are handled
  • added support for different network protocols, and mysql41 protocol
  • added fieldmask ranker, updated SphinxSE list of rankers
  • added mysql_ssl_xxx directives
  • added --cpustats (requires clock_gettime()) and --status switches to searchd
  • added performance counters, Status() API call
  • added overshort_step and stopword_step directives
  • added strict order operator (aka operator before, eg. “one << two << three”)
  • added indextool utility, moved --dumpheader there, added --debugdocids, --dumphitlist options
  • added own RNG, reseeded on @random sort query (bug #183)
  • added field-start and field-end modifiers support (syntax is “^hello world$”; field-end requires reindex)
  • added MVA attribute support to IN() function
  • added AND, OR, and NOT support to expressions
  • improved logging of (optimized) multi-queries (now logging chained query count)
  • improved handshake error handling, fixed protocol version byte order (omg)
  • updated SphinxSE to protocol 1.22
  • allowed phrase_boundary_step=-1 (trick to emulate keyword expansion)
  • removed SPH_MAX_QUERY_WORDS limit
  • fixed CLI search vs documents missing from DB (bug #257)
  • fixed libsphinxclient results leak on subsequent sphinx_run_queries call (bug #256)
  • fixed libsphinxclient handling of zero max_matches and cutoff (bug #208)
  • fixed Java API over-64K string reads (eg. big snippets) in Java API (bug #181)
  • fixed Java API 2nd Query() after network error in 1st Query() call (bug #308)
  • fixed typo-class bugs in SetFilterFloatRange (bug #259), SetSortMode (bug #248)
  • fixed missing @@relaxed support (bug #276), fixed missing error on @nosuchfield queries, documented @@relaxed
  • fixed UNIX socket permissions to 0777 (bug #288)
  • fixed xmlpipe2 crash on schemas with no fields, added better document structure checks
  • fixed (and optimized) expr parser vs IN() with huge (10K+) args count
  • fixed double EarlyCalc() in fullscan mode (minor performance impact)
  • fixed phrase boundary handling in some cases (on buffer end, on trailing whitespace)
  • fixes in snippets (aka excerpts) generation
  • fixed inline attrs vs id64 index corruption
  • fixed head searchd crash on config re-parse failure
  • fixed handling of numeric keywords with leading zeroes such as “007” (bug #251)
  • fixed junk in SphinxSE status variables (bug #304)
  • fixed wordlist checkpoints serialization (bug #236)
  • fixed unaligned docinfo id access (bug #230)
  • fixed GetRawBytes() vs oversized blocks (headers with over 32K charset_table should now work, bug #300)
  • fixed buffer overflow caused by too long dest wordform, updated tests
  • fixed IF() return type (was always int, is deduced now)
  • fixed legacy queries vs. special chars vs. multiple indexes
  • fixed write-write-read socket access pattern vs Nagle vs delays vs FreeBSD (oh wow)
  • fixed exceptions vs query-parser issue
  • fixed late calc vs @weight in expressions (bug #285)
  • fixed early lookup/calc vs filters (bug #284)
  • fixed emulated MATCH_ANY queries (empty proximity and phrase queries are allowed now)
  • fixed MATCH_ANY ranker vs fields with no matches
  • fixed index file size vs inplace_enable (bug #245)
  • fixed that old logs were not closed on USR1 (bug #221)
  • fixed handling of '!' alias to NOT operator (bug #237)
  • fixed error handling vs query steps (step failure was not reported)
  • fixed querying vs inline attributes
  • fixed stupid bug in escaping code, fixed EscapeString() and made it static
  • fixed parser vs @field -keyword, foo|@field bar, “” queries (bug #310)
News
Downloads
Services
Community
Resources
About