File: test.xml

package info (click to toggle)
sphinxsearch 2.2.11-8
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 25,720 kB
  • sloc: cpp: 102,259; xml: 85,608; sh: 9,259; php: 3,790; ansic: 3,158; yacc: 1,969; java: 1,336; ruby: 1,289; python: 1,062; pascal: 912; perl: 381; lex: 275; makefile: 150; sql: 77; cs: 35
file content (261 lines) | stat: -rw-r--r-- 7,388 bytes parent folder | download | duplicates (4)
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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
<?xml version="1.0" encoding="utf-8"?>
<test>

<name>blend characters</name>

<config>
indexer
{
	mem_limit		= 16M
}

searchd
{
	<searchd_settings/>
	workers = threads
}

source test
{
	type			= mysql
	<sql_settings/>
	sql_query		= SELECT * FROM test_table
}

index test
{
	source	= test
	path	= <data_path/>/test

	blend_chars = @, |, +, ., *, !, (, ), [, ], {, }
}

source test1
{
	type			= mysql
	<sql_settings/>
	sql_query		= SELECT 1 as document_id, 'zzzzzz buzzzz' as text
}

index test1
{
	source	= test1
	path	= <data_path/>/test1

	blend_chars = ., @,
	min_word_len = 2
}

source test2
{
	type			= mysql
	<sql_settings/>
	sql_query		= SELECT 1 as document_id, 'dummy a11-22 text' as text UNION SELECT 2 as document_id, 'dummy 11-22 text' as text
}

index test2
{
	source	= test2
	path	= <data_path/>/test2

	blend_chars = -, @,
}

index star
{
	source	= test
	path	= <data_path/>/star

	blend_chars = @, ., !, (, ), [, ], {, }
	min_infix_len = 2
	dict = crc
}

index star_kw
{
	source	= test
	path	= <data_path/>/star_kw

	blend_chars = @, ., !, (, ), [, ], {, }
	min_infix_len = 2
	dict = keywords
}

source test3
{
	type			= mysql
	<sql_settings/>
	sql_query		= SELECT 1 as document_id, ' the"dog of my friend ' as text UNION SELECT 2 as document_id, ' dog"is my friend ' as text
}

index test3
{
	source	= test3
	path	= <data_path/>/test3

	blend_chars = -, @, "
}

index rt
{
	type	 = rt
	path	= <data_path/>/rt

	blend_chars = @

	rt_field	 = text
	rt_attr_uint	 = idd
}

source test4
{
	type			= mysql
	<sql_settings/>
	sql_query		= SELECT 1 as document_id, ' the dog of my friend ' as text UNION SELECT 2 as document_id, ' dog is my friend ' as text
}

index test4
{
	source	= test4
	path	= <data_path/>/test4
	blend_chars = U+2E
}

</config>

<db_create>
CREATE TABLE test_table
(
	document_id INT NOT NULL,
	text VARCHAR(255) NOT NULL
);
</db_create>

<db_drop>
DROP TABLE IF EXISTS test_table
</db_drop>

<db_insert>
INSERT INTO test_table VALUES
(  1, 'aaa bbb@ccc ddd @eee fff@ggg@hhh iii@ kkk' ),
(  2, 'ggg@hhh' ),
(  3, 'xxx @ yyy' ),
(  4, 'aaa@bbb+ccc@ddd' ),
(  5, 'aaa|eee|ccc' ),
(  6, 'a+b+c+d e+f|g' ),
(  7, 'aaa bbb*ccc ddd eee fff*ggg*hhh iii' ),
(  8, 'ggg*hhh' ),
(  9, 'aaa ddd ggg hhh' ),
( 10, 'aaa bbb ccc ddd' ),
( 11, 'hello, world. how is this gonna work if we need to handle U.S.A' ),
( 20, 'its a must!!!' ),
( 21, 'hey @dude wassup' ),
( 30, 'posse' ),
( 31, 'posse()' ),
( 32, 'posse[]' ),
( 33, 'posse{}' );
</db_insert>

<queries>
	<query mode="extended2" index="test">bbb|ccc</query>
	<query mode="extended2" index="test">bbb@ccc</query>

	<query mode="extended2" index="test">bbb\|ccc</query>
	<query mode="extended2" index="test">bbb\@ccc</query>

	<query mode="extended2" index="test">bbb ccc</query>
	<query mode="extended2" index="test">"bbb ccc"</query>

	<query mode="extended2" index="test">aaa|eee|ccc</query>
	<query mode="extended2" index="test">aaa\|eee\|ccc</query>
	<query mode="extended2" index="test">"aaa|eee|ccc"</query>
	<query mode="extended2" index="test">"aaa\|eee\|ccc"</query>

	<query mode="extended2" index="test">a+b+c+d</query>
	<query mode="extended2" index="test">a+b+c+d e</query>
	<query mode="extended2" index="test">"a+b+c+d e f"</query>
	<query mode="extended2" index="test">"a+b+c+d e+f|g"</query>

	<query mode="extended2" index="test">"bbb@ccc ddd @eee"</query>
	<query mode="extended2" index="test">"ddd @eee fff@ggg@hhh"</query>
	<query mode="extended2" index="test">"fff@ggg@hhh iii@ kkk"</query>

	<query mode="extended2" expect_error="1" index="test">@</query>
	<query mode="extended2" index="test">\@</query>

	<query mode="extended2" expect_error="1" index="test">@eee kkk</query>
	<query mode="extended2" index="test">\@eee kkk</query>

	<query mode="extended2" index="test">aaa\*ccc</query>
	<query mode="extended2" index="test">aaa*ccc</query>
  
	<query mode="extended2" index="test">bbb\*ccc</query>
	<query mode="extended2" index="test">bbb*ccc</query>

	<query mode="extended2" index="test"> bbb ccc</query>
	<query mode="extended2" index="test">"bbb ccc"</query>

	<query mode="extended2" index="test">fff\*ggg</query>
	<query mode="extended2" index="test">fff*ggg</query>
	<query mode="extended2" index="test">fff*ggg*hhh</query>

	<query mode="extended2" index="test">"bbb*ccc ddd"</query>
	<query mode="extended2" index="test">"bbb*ccc ccc ddd"</query>
	<query mode="extended2" index="test">bbb*ccc &lt;&lt; ddd</query>

	<query mode="extended2" index="test">hello</query>
	<query mode="extended2" index="test">"hello world"</query>
	<query mode="extended2" index="test">hello U.S.A</query>

	<query mode="extended2" index="test">must</query>
	<query mode="extended2" index="test">must\!\!\!</query>
	<query mode="extended2" index="test">dude</query>
	<query mode="extended2" index="test">\@dude</query>

	<query mode="extended2" index="test">posse</query>
	<query mode="extended2" index="test">posse\(\)</query>
	<query mode="extended2" index="test">posse\[\]</query>
	<query mode="extended2" index="test">posse\{\}</query>
	<query mode="extended2" index="test">"posse()"</query>
	<query mode="extended2" index="test">"posse[]"</query>
	<query mode="extended2" index="test">"posse{}"</query>
	
	<query mode="extended2" index="test">^ggg*hhh$</query>
	<query mode="extended2" index="test">^ggg*hhh</query>
	<query mode="extended2" index="test">ggg*hhh$</query>
	<query mode="extended2" index="test">^ggg</query>
	<query mode="extended2" index="test">hhh$</query>
	<query mode="extended2" index="test">ggg$</query>
	<query mode="extended2" index="test">^hhh</query>
	
	<query mode="extended2" index="star">^gg*</query>
	<query mode="extended2" index="star">*hh$</query>
	<query mode="extended2" index="star">^*gg*</query>
	<query mode="extended2" index="star">^*hh*</query>
	<query mode="extended2" index="star">*cc*$</query>
	<!--regression for missed field modifier vs tiny expanded -->
	<query mode="extended2" index="star_kw">*hh*</query>
	<query mode="extended2" index="star_kw">*hh*$</query>
</queries>

<sphqueries>
	<!-- here is going regression blend vs special character within query-->
	<sphinxql>select * from test1 where match ( 'zzzzzz  .(buzzzz)' )</sphinxql>
	<!-- here is going regression many overshort tokens in query-->
	<sphinxql>select * from test1 where match ( 'a+b' )</sphinxql>
	<!-- here is going regression blend_char into a numeric-->
	<sphinxql>select * from test2 where match ( 'a11-22' )</sphinxql>
	<sphinxql>select * from test2 where match ( '11-22' )</sphinxql>
	<sphinxql>select * from test3 where match ( ' "the dog " ' )</sphinxql>
	<sphinxql>select * from test3 where match ( ' dog " is my " ' )</sphinxql>
	<sphinxql>select * from test3 where match ( ' dog ' )</sphinxql>
	<!-- here is going regression many same hits at RT index -->
	<sphinxql>INSERT INTO rt VALUES ( 1, 'thatsgoingverylongwordthathasblendedpartattheand@blendedpart and word at the end', 11 )</sphinxql>
	<sphinxql>CALL KEYWORDS ( 'thatsgoingverylongwordthathasblendedpartattheand', 'rt', 1 )</sphinxql>
	<sphinxql>INSERT INTO rt VALUES ( 2, 'thatsgoingverylongwordthathasblendedpartattheand@blendedpart', 11 )</sphinxql>
	<sphinxql>CALL KEYWORDS ( 'thatsgoingverylongwordthathasblendedpartattheand', 'rt', 1 )</sphinxql>
	<!-- regression blended vs quorum argument -->
	<sphinxql>select * from test4 where match ( ' "dog of friend"/0.5 ' )</sphinxql>
</sphqueries>

</test>