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
|
<?xml version="1.0" encoding="utf-8"?>
<test>
<name>string attibutes vs agent groupings</name>
<num_agents>3</num_agents>
<config>
indexer
{
mem_limit = 16M
}
searchd
{
<searchd_settings/>
workers = threads
collation_libc_locale = C
<dynamic>
<variant>collation_server = utf8_general_ci</variant>
<variant>collation_server = libc_ci</variant>
<variant>collation_server = libc_cs</variant>
</dynamic>
}
<agent0>
source src_master
{
type = mysql
<sql_settings/>
sql_query = SELECT id, idd1, str1, body FROM test_table where id in ( 1, 2, 3 )
sql_attr_uint = idd1
sql_attr_string = str1
}
index master
{
source = src_master
docinfo = extern
path = <data_path/>/master
}
index all
{
type = distributed
local = master
agent = <agent1_address/>:a1
agent = <agent2_address/>:a2
}
</agent0>
<agent1>
source src_a1
{
type = mysql
<sql_settings/>
sql_query = SELECT id, idd1, str1, body FROM test_table where id in ( 4, 5, 6 )
sql_attr_uint = idd1
sql_attr_string = str1
}
index a1
{
source = src_a1
docinfo = extern
path = <data_path/>/a1
}
</agent1>
<agent2>
source src_a2
{
type = mysql
<sql_settings/>
sql_query = SELECT id, idd1, str1, body FROM test_table where id in ( 7, 8, 9 )
sql_attr_uint = idd1
sql_attr_string = str1
}
index a2
{
source = src_a2
docinfo = extern
path = <data_path/>/a2
}
</agent2>
</config>
<db_create>
CREATE TABLE `test_table`
(
`id` int(11) NOT NULL default '0',
`idd1` int(11) NOT NULL default '0',
`str1` varchar(1024) NOT NULL default '',
`body` varchar(1024) NOT NULL default ''
)
</db_create>
<db_drop>
DROP TABLE IF EXISTS `test_table`
</db_drop>
<db_insert>
INSERT INTO `test_table` VALUES
( 1, 1, 'a aa', 'the dog' ),
( 2, 10, 'c cC', 'the cat' ),
( 3, 2, 'a aA', 'the bird' ),
( 4, 11, 'c cC', 'cat eats bird' ),
( 5, 3, 'a Aa', 'dog eats cat' ),
( 6, 12, 'c cc', 'bird' ),
( 7, 4, 'a Aa', 'the cat' ),
( 8, 5, 'a aA', 'eats' ),
( 9, 13, 'c cc', 'the' )
</db_insert>
<sphqueries>
<sphinxql>select * from all group by str1 order by id asc</sphinxql>
<sphinxql>select *, weight() w from all where match ('the | cat | dog | bird') group by str1 within group order by idd1 desc order by w asc</sphinxql>
<sphinxql>set collation_connection=libc_cs</sphinxql>
<sphinxql>select * from all group by str1 order by idd1 desc</sphinxql>
<sphinxql>select *, weight() w from all where match ('the | cat | dog | bird') group by str1 within group order by idd1 asc order by w asc</sphinxql>
</sphqueries>
<queries>
<query mode="extended2" index="all" groupattr="str1" groupfunc="attr" groupsort="@id asc"></query>
<query mode="extended2" index="all" groupattr="str1" groupfunc="attr" groupsort="@weight asc" sortmode="extended" sortby="idd1 desc">the | cat | dog | bird</query>
</queries>
</test>
|