对MariaDB10.0的Sphinx进行扩展

已修改过的文件:http://pan.baidu.com/s/1o8DHvkA

将这两个文件放到MariaDB的解压目录后,再进行安装

/usr/local/mariadb-10.0.28/storage/sphinx/

如下是修改的代码

get_rec ( byte * buf, const byte * key, uint keylen,uint a,uint b,uint c );

index_next_same ( byte * buf, const byte * key, uint keylen,uint a,uint b,uint c );

SPHINXSE_SYSTEM_COLUMNS 6

SPH_RET ( get_rec ( buf, key, key_len ,pTable->m_tStats.m_iMatchesTotal,pTable->m_tStats.m_iMatchesFound,pTable->m_tStats.m_iQueryMsec ) );

field[3]->store ( a, 1 );
field[4]->store ( b, 1 );
field[5]->store ( b, 1 );

SPH_RET ( get_rec ( buf, m_pCurrentKey, m_iCurrentKeyLen,m_a,m_b,m_c ) );

int ha_sphinx::index_next_same ( byte * buf, const byte * key, uint keylen,uint a,uint b,uint c )
{
        SPH_ENTER_METHOD();
        SPH_RET ( get_rec ( buf, key, keylen,a,b,c ) );
}

int ha_sphinx::get_rec ( byte * buf, const byte *, uint ,uint a,uint b,uint c)

uint                    m_a;
uint                    m_b;
uint                    m_c;

, m_a ( 0 )
, m_b ( 0 )
, m_c ( 0 )

 

CREATE TABLE `table_sphinxse` (
  `id` bigint(20) unsigned NOT NULL,
  `weight` int(11) DEFAULT '1',
  `query` varchar(20480) NOT NULL,
  `Matchestotal` int(11) DEFAULT '0',
  `Matchesfound` int(11) DEFAULT '0',
  `Querymsec` int(11) DEFAULT '0',
  `Fadd_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  KEY `query` (`query`(1024))
) ENGINE=SPHINX DEFAULT CHARSET=utf8 CONNECTION='sphinx://127.0.0.1:4312';
select sql_no_cache id,matchesfound from table_sphinxse where query='filter=res_type,1';

共多少条

 

时间: 2024-11-13 06:55:18

对MariaDB10.0的Sphinx进行扩展的相关文章

DynamicReports v2.0.0发布 基于JasperReports扩展的Java报表库

DynamicReports v2.0.0发布 基于JasperReports扩展的Java报表库,可用它来快速创建报表而无需可视化报表http://www.aliyun.com/zixun/aggregation/6993.html">设计工具. DynamicReports is based on JasperReports. It allows to create dynamic report designs and it doesn't need a visual report d

C# 3.0 新特性:扩展方法初探

C#3.0中一个激动人心的特性就是扩展方法:你可以使用实例方法的语法来调用静态方法.本文仔细阐述了这一新特性并且给出了几个相应的例子. 声明扩展方法 扩展方法的行为和静态方法是非常类似的,你只能在静态类中声明它们.为声明一个扩展方法,你需要给该方法的第一个参数指定this关键字,如下例: // Program.cspublic static class EMClass{ public static int ToInt32Ext(this string s) { return Int32.Pars

一起谈.NET技术,ASP.NET 4.0 一些隐性的扩展

ASP.NET 4.0在很多方面都做了改进,在这篇ASP.NET 4.0白皮书就描述了很多ASP.NET 4.0的机制改变和改进.在我的博客中,也有几篇关于ASP.NET4.0的特性修改的文章.但是作为一个全新的框架和运行时,内部肯定还会有很多API和扩展点不会暴露的那么明显.比如今天从这篇文章Three Hidden Extensibility Gems in ASP.NET 4的介绍中,我又了解了一些在我平常开发中绝对非常有用的扩展点. PreApplicationStartMethodAt

ASP.NET 4.0 一些隐性的扩展

ASP.NET 4.0在很多方面都做了改进,在这篇ASP.NET 4.0白皮书就描述了很多ASP.NET 4.0的机制改变和改进.在我的博客中,也有几篇关于ASP.NET4.0的特性修改的文章.但是作为一个全新的框架和运行时,内部肯定还会有很多API和扩展点不会暴露的那么明显.比如今天从这篇文章Three Hidden Extensibility Gems in ASP.NET 4的介绍中,我又了解了一些在我平常开发中绝对非常有用的扩展点. Pre ApplicationStartMethodA

MVC2.0:用Area扩展项目的目录结构

Area是MVC2.0里新特性,但是感觉在项目中应用的不是很多,也许是项目比较小吧,没有在意目录结构的 整理,举个例子来说吧,比如我们在管理自己项目的后台时候需要建立一个Admin目录,总感觉Admin建在 View目录下不是很好,而且对URL显示也不是很完美..比如/Admin/index.aspx- 如果能有一个目录来单独 管理Admin 是很完美滴- 在 MVC1.0时没办法实现这个功能,MVC2.0 提供了Area 特性,用来管理越来越庞大的项目目录结 构.. 在VS2010里面项目上右

C# 3.0语言新特性(语言规范):2 扩展方法

规范 原文:<C# Version 3.0 Specification>,Microsoft翻译:lover_P 扩展方法(Extension Methods)是一种静态方法,可以通过实例方法的语法进行调用.从最终效果上看,扩展方法使得扩展一个现有类型和构造一个具有附加方法的类型变成了现实. 注意 扩展方法很难发觉,并且比起实例方法在功能性上有很大限制.出于这些原因,我们建议保守地使用扩展方法,仅在实例方法不大可行或根本不可行的时候才使用. 扩展成员的其他类型,如属性.事件和运算符都在考虑之中

c#v2.0 扩展特性 翻译(1)

Introduction to C# 2.0C# 2.0 introduces several language extensions, the most important of which are Generics, Anonymous Methods, Iterators, and Partial Types. C#2.0 介绍几种语言扩展,泛型,匿名方法,迭代器 和.partial Types. · Generics permit classes, structs, interfaces

php7.0.5相关问题,redis扩展

问题描述 php7.0.5相关问题,redis扩展 为什么php7.0.5安装redis扩展,phpinfo还是不显示redis,步骤都是对的 PHP官方库里没有PHP7的redis扩展:https://pecl.php.net/package/redis 编译安装下载github地址:https://github.com/phpredis/phpredis/tree/php7 Windows:https://github.com/neil-chen/NeilChen/tree/master/p

《圣殿祭司的ASP.NET4.0专家技术手册》----2-12 扩展方法

2-12 扩展方法 圣殿祭司的ASP.NET4.0专家技术手册 扩展方法(Extension Methods)允许针对现有类型加入自定义方法,而不必用传统方式,先继承然后再实现方法,最后还要再进行编译,完全省略了这些不必要的步骤. 然而,什么时候需使用到扩展方法?通常有两个时机: (1)需扩展类型额外的方法,就可通过扩展方法加入额外的方法: (2)希望直接使用系统已建立好的扩展方法,这种情况在LINQ中尤其明显. 范例2-12 使用扩展方法扩展string类型方法 假设要将阿拉伯数字"2266&