kimchy
8b8bad7572
build on aferreira improvements to handle empty parameters with no =, and improve component decoding logic
2011-01-07 14:34:34 +02:00
Adriano Ferreira
2d81acbbf2
Adding test for edge cases of RestUtils.decodeQueryString()
...
When writing tests for the fix of decodeQueryString() to
handle gracefully edge cases like:
&a
&a&b
it arises the question of what behavior is desirable
for these pathological cases (vs the regular p=v pairs).
This change just skips them which is consonant
to the preexisting code.
To be thorough, we add tests for a bunch of edge cases, like:
QUERY PARSED PARAMS
? {}
?& {}
?= { "": "" }
?a {}
?p=v&a { "p": "v" }
?p=v&a&p1=v1 { "p": "v", "p1": "v1" }
?a&b {}
2011-01-07 14:13:26 +02:00
Adriano Ferreira
154dcf007e
Make RestUtils.decodeQueryString() more robust in edge cases
...
The code of decodeQueryString() had some trouble with weird URLs:
(1) an input like "uri?param&p=v" causes an exception to be thrown
(2) an input like "uri?param1¶m2" causes an infinite loop
This could be verified against an ES server with requests like
curl -XGET localhost:9200/test/_analyze?t&text=this+is+a+test
# the exception stack trace shows up in logs
curl -XGET localhost:9200/test/_analyze?t1&t2&text=this+is+a+test
# never returns, never ends
This change fixes these issues.
2011-01-07 14:13:25 +02:00
Adriano Ferreira
edb075b611
Minor changes to RestUtils.decodeQueryString() tests
...
Testing
RestUtils.decodeQueryString("something", "something".indexOf('?') + 1, params);
is not really checking decoding of an empty query.
Instead, it is testing decoding of "something"
as a query (because "something.index('?')+1" evaluates to 0).
The parameter map is left empty because
"malformed" pairs like "something" are currently skipped.
Instead, this change modify this test to check the edge cases:
+ fromIndex >= queryString.length()
+ fromIndex < 0
2011-01-07 14:13:25 +02:00
kimchy
fe0f9ebc9d
make lucene document creation allowed to be indexed twice
2011-01-07 14:09:39 +02:00
kimchy
c7cb353956
fix serialization of count request
2011-01-06 20:44:36 +02:00
kimchy
6a0a9ff374
parse query with offset
2011-01-06 16:13:15 +02:00
kimchy
b9e808f755
improve version loading by going directly to the relevant reader
2011-01-06 11:50:16 +02:00
kimchy
26c5f6c482
Allow ./bin/plugin to install plugins from the local filesystem / custom url, closes #595 .
2011-01-06 10:46:42 +02:00
kimchy
cc5978393b
with the new stemmer analyzer, don't break when there is no language stopwords, but just create it without stopwords
2011-01-06 09:53:56 +02:00
harryf
4a45df88c6
Add Snowball stemmer as analyzer and filter
2011-01-06 09:40:49 +02:00
kimchy
66d63055df
Add to node stats the number of times field cache was evicted due to memory constraints, closes #603 .
2011-01-05 22:37:15 +02:00
kimchy
754b0d7a0f
Add `resident` field cache type, closes #602 .
2011-01-05 21:23:47 +02:00
kimchy
0954df0623
change the default interval for gc checks to 1 second
2011-01-05 20:40:52 +02:00
kimchy
31231531e1
Highlighting: The result of highlighting for a hit can contain data from another document, closes #600 .
2011-01-05 15:45:46 +02:00
kimchy
6258915205
Bulk API: Add how long the bulk API took (in milliseconds) to the response, closes #599 .
2011-01-05 14:12:45 +02:00
kimchy
29b308005a
try to be more predictable when doing pagination (still can return duplicates when going to different shards) by sorting on the shards results based on the shard id first
2011-01-04 23:42:44 +02:00
kimchy
0faa05b3f2
add more integration versioning tests
2011-01-04 18:09:46 +02:00
kimchy
9423378f27
add heavy concurrent updates to same doc, and make sure it has the same data on all replicas
2011-01-04 17:44:33 +02:00
kimchy
45c1ab06b3
Versioning, closes #594 .
2011-01-04 04:04:30 +02:00
kimchy
9335b3a9e6
Search: Add a `timed_out` element indicating if the search request timed out, closes #592 .
2011-01-03 15:25:24 +02:00
kimchy
ff6d7254fe
optimize query parsing to use single field parser when executing on single field
2011-01-03 15:14:28 +02:00
kimchy
2c8c6aa22a
add a uid scan benchmark to check perf
2011-01-03 14:34:38 +02:00
kimchy
dc17d10b81
small refactor
2011-01-03 13:32:09 +02:00
kimchy
5e029865a8
Des.config=/path/to/config/file doesn't replace $ES_HOME/elasticsearch.conf, just appends to it, closes #588 .
2011-01-03 12:53:50 +02:00
kimchy
ccdbbef276
don't send leave request when the master node is null
2011-01-03 12:01:33 +02:00
kimchy
84fa13a5e0
upgrade to gradle 0.9.1
2011-01-03 11:45:59 +02:00
kimchy
d2a70b21cd
key (which is time) can be negative as well
2011-01-02 22:03:52 +02:00
kimchy
07d361816e
Search: Date Histogram Facet, closes #591 .
2011-01-02 15:07:45 +02:00
kimchy
d523104b91
add some sanity tests with joda for date time manipulation
2011-01-01 23:48:25 +02:00
kimchy
b7b775228e
add some sanity tests with joda for date time manipulation
2011-01-01 23:40:46 +02:00
kimchy
aec720218d
Histogram Facet: Improve perf / memory by defaulting to just providing counts with no totals, closes #587 .
2011-01-01 17:27:55 +02:00
kimchy
45b93e2781
add histogram facet benchmark
2011-01-01 16:33:18 +02:00
kimchy
e6b4834768
Highlighting: Allow to highlight on fields without term vectors, closes #585 .
2010-12-31 18:57:26 +02:00
kimchy
7c959e7ec3
Master based operations (create index, delete index) to automatically retry on retryable cluster blocks (like recovery from gateway)
2010-12-31 14:09:45 +02:00
kimchy
a92dbc537a
those two should not be final...
2010-12-31 00:23:04 +02:00
Tim Dysinger
fd593acafe
make every static field final (immutable)
2010-12-31 00:22:31 +02:00
Tim Dysinger
6b672e29f5
Remove infinite loop typo
2010-12-31 00:01:45 +02:00
kimchy
82298d890c
Terms Facet: Performance and memory improvements when faceting numeric fields, closes #583 .
2010-12-30 19:45:36 +02:00
kimchy
019359a896
add more scanning options on the field data cache
2010-12-30 17:08:32 +02:00
kimchy
6c8b06c967
clean unused method
2010-12-30 16:45:12 +02:00
kimchy
a450deee5f
Groovy Plugin not loaded (groovy not enabled as pluggable script provider), closes #581 .
2010-12-30 16:21:08 +02:00
kimchy
8e8a3a894f
upgrade testing framework jars, improve build scripts to share the testing jars
2010-12-30 16:08:38 +02:00
kimchy
fea93b7fea
Delete By Query: Types are not serialized over network, causing them to be ignored, closes #580 .
2010-12-30 14:43:08 +02:00
kimchy
976d14705a
add a warn and don't apply ec2 unicast discovery if not found (will not really happen)
2010-12-30 13:18:00 +02:00
kimchy
789e1a343f
failing to load plugins, return an empty map
2010-12-30 13:16:09 +02:00
kimchy
2e46add991
remove debugging dead code
2010-12-30 13:14:49 +02:00
kimchy
51277a9486
no need to check for shard if tis null, we know its not
2010-12-30 13:12:08 +02:00
kimchy
c4646a2b55
use close helper method to close streams
2010-12-30 13:11:20 +02:00
kimchy
76d042f3c5
explicitly pass null values to methods where applicable
2010-12-30 13:09:11 +02:00