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
|
<?xml version="1.0" encoding="utf-8"?>
<test>
<name>indexing ranged stored procedures</name>
<config>
indexer
{
mem_limit = 16M
}
searchd
{
<searchd_settings/>
}
source test
{
type = mysql
<sql_settings/>
sql_query_range = SELECT 1, 3
sql_range_step = 1
sql_query = CALL test_proc($start+$end-$end-1)
sql_attr_uint = gid
}
index test
{
source = test
path = <data_path/>/test
}
</config>
<db_create>
create procedure test_proc (in base int)
begin
select * from test_table where id=2*base or id=2*base+1;
end
</db_create>
<db_create>
create table test_table
(
id int not null,
gid int not null,
title varchar(255) not null
);
</db_create>
<db_drop>drop procedure if exists test_proc;</db_drop>
<db_drop>drop table if exists test_table;</db_drop>
<db_insert>insert into test_table values ( 1, 100, 'hello one' );</db_insert>
<db_insert>insert into test_table values ( 2, 200, 'hello two' );</db_insert>
<db_insert>insert into test_table values ( 3, 300, 'hello three' );</db_insert>
<db_insert>insert into test_table values ( 4, 400, 'hello four' );</db_insert>
<queries>
<query mode="extended2">hello</query>
</queries>
</test>
|