Click or drag to resize
Version 2.3.0

Release date: August 30, 2010

Changes
  • SphinxQL: New connection string option Encoding. This option sets the encoding that is used for both queries and result sets. The option Result Encoding is now obsolete.

    The default encoding is now utf-8. In previous version it defaulted to latin1, which could cause problems, because most indexes are configured to use utf-8 as charset type. The reason the encoding has to be configured in the first place, is because Sphinx currently uses a hardcoded value of latin1 for the charset type of SphinxQL result packets.

  • SphinxQL: All GetXXX() methods of SphinxQLDataReader that take a column name as an argument are now case insensitive.
  • SphinxQL: Added property Code to SphinxQLException class which contains the error code returned by Sphinx.
  • SphinxQL: Creating a SphinxQLParameter object with a .NET type that has no equivalent Sphinx type would throw an exception, even if the Sphinx type to use was explicitly properly, e.g. double d = 5.0; var parameter = new SphinxQLParameter("name", d, SphinxType.Float); This is now fixed.
  • The behavior of SphinxQLParameterCollection.Add(object value) and Contains(object value) did not match other data providers: The given parameter was interpreted as the value, that the Value property of a SphinxQLParameter instance should be set to, i.e. Add() would a create new parameter object with the specified value, and Contains() would check the collection for a parameter with the specified value.

    This is the correct behavior according to the documentation of the base class, DbParameterCollection, but other data providers expect value to be an instance of the respective parameter class. Passing a value that is not a SphinxQLParameter, will not throw an exception, but trigger the old behavior and log a warning. This will be removed in a future release.

  • SphinxQL: SphinxQLConnectionStringBuilder was using the logger of the SphinxQLConnection class.
  • SphinxQL: The DbType property of SphinxQLParameter now supports DbType.Int32.
  • Some internal optimizations (SphinxQL and native API).