kimchy
245d241a5c
handle any exception on first phase
2011-02-17 02:06:59 +02:00
kimchy
09d650fae7
Index Status: Peer recovery does not compute the index size correctly to report the full size, closes #695 .
2011-02-17 01:43:56 +02:00
kimchy
fb90392040
add status based test
2011-02-17 01:28:54 +02:00
kimchy
6ffd60dfb5
change var name to better reflect the fact that its data and not work
2011-02-17 01:07:05 +02:00
kimchy
3c9dafe67b
better reason for disco state change
2011-02-16 23:30:40 +02:00
kimchy
bc504d6c08
add simple netty benchmark
2011-02-16 08:17:31 +02:00
kimchy
2f5dd85bd5
change handlers from CHM to volatile Immutable Map
2011-02-16 05:24:29 +02:00
kimchy
3679efa840
default management TP to max at 20
2011-02-16 02:44:48 +02:00
kimchy
087f5d6bea
fix scheduling to actually schedule the correct runnable
2011-02-16 02:44:24 +02:00
kimchy
d1d3f8c4ca
REST codes: Improve returned error codes on REST APIs, associate codes with internal exceptions, closes #690 .
2011-02-16 01:41:01 +02:00
Lukáš Vlček
12a33e6a91
Add new Access-Control-Allow-Headers value into http response header, closes #688
2011-02-15 23:53:53 +02:00
kimchy
442ce9daaa
ignore closed exception when async loading bloom filters
2011-02-15 23:23:49 +02:00
kimchy
f14305e95c
upgrade to jackson 1.7.3
2011-02-15 20:57:13 +02:00
kimchy
36efde8c1d
simplify threaded listener invocation by wrapping the listener with a threaded listener and not check in each action for it
2011-02-15 07:52:24 +02:00
kimchy
3ed848a495
ThreadPool: Refactor into several pools, with configurable types per pool, closes #687 .
2011-02-15 07:00:24 +02:00
kimchy
1b5cdb181a
Query: boosting query, closes #683 .
2011-02-11 19:59:15 +02:00
kimchy
65197ba39d
don't return null highlighted fields if no highlighting was done
2011-02-11 18:31:09 +02:00
kimchy
d054c8c14e
use cached thread pool to do cluster state gateway snapshotting
2011-02-11 03:14:13 +02:00
kimchy
e63e5f232c
only actually fork to another thread if a flush is really needed
2011-02-11 02:35:02 +02:00
kimchy
fc88cccfb4
only fork a refresh if it actually needs to be refreshed
2011-02-11 02:27:29 +02:00
kimchy
7c4d574a32
only call refresh if its needed, so we check outside of the readLock when async refreshing
2011-02-11 01:53:48 +02:00
kimchy
df4f4f056a
protected against a possible null for lastGC in the previous collection
2011-02-11 01:48:23 +02:00
kimchy
260aab21fd
filtered collector should set the next reader on the wrapped collector
2011-02-11 00:34:20 +02:00
kimchy
44b06bee3b
open indexing searcher lazily when indexing, and not when flushing
2011-02-10 20:31:01 +02:00
Alberto Paro
7bbf69b194
Added support to define rest actions in plugins
2011-02-10 19:00:17 +02:00
Alberto Paro
35c339f5f3
Removed empty fragments in highlight results
2011-02-10 19:00:17 +02:00
Alberto Paro
5ea58a3387
Don't fail search if highlight field is missing for a specific type. Close #682
2011-02-10 19:00:17 +02:00
kimchy
a3af51a1d9
add fixed thread pool module so one can create it
2011-02-10 17:42:34 +02:00
kimchy
2e12e5b279
make optimize default parameters constants
2011-02-10 16:48:05 +02:00
kimchy
9ae9ab9553
add flush to search 1 stress test
2011-02-10 16:47:43 +02:00
kimchy
57108c8575
REST API: Failure to index docs that have their ids URL encoded and contain `/`, closes #681 .
2011-02-10 03:18:01 +02:00
kimchy
89ac4d108a
make forkjoin an option in fixed thread pool
2011-02-10 00:05:08 +02:00
kimchy
30510a8320
add forkjoin TP
2011-02-09 23:47:38 +02:00
kimchy
5e96d3d93d
add fixed thread pool (mainly for internal testing for now)
2011-02-09 23:47:13 +02:00
kimchy
5047f4aa6f
fix wrong parsing of of version / explain causing NPE on search
2011-02-09 22:56:52 +02:00
kimchy
2b8a6742dd
move transport benchmark to the micro bench
2011-02-09 22:50:44 +02:00
kimchy
b26d86293f
terms facet on an IP field returns terms as numbers, not IPs, closes #678 .
2011-02-09 21:37:42 +02:00
kimchy
d35f397608
remove timer service
2011-02-09 19:01:05 +02:00
kimchy
9f2afeb4ca
move to use scheduled TP and not timer service
2011-02-09 17:21:16 +02:00
kimchy
27d6c71d5b
move to use scheduled TP and not timer service
2011-02-09 16:47:04 +02:00
kimchy
ccb30d42e9
move to use a single thread for the scheduled tasks, forking where need to another TP
2011-02-09 16:25:09 +02:00
kimchy
f6dced3750
upgrade to netty 3.2.4
2011-02-09 02:07:02 +02:00
kimchy
d442f33d0b
more api cleaning
2011-02-09 00:37:27 +02:00
kimchy
f7aee2a423
clean thread pool interface
2011-02-09 00:30:21 +02:00
kimchy
f09a66bf12
upgrade to latest jsr166y code
2011-02-09 00:26:09 +02:00
kimchy
ff044c1882
Add safeJsonBuilder and safeSmileBuilder for cases where the builder needs to be used outside the scope of directly passing it to an API
2011-02-08 23:41:20 +02:00
kimchy
9c011d5b79
improve get perf by using bloom filter to fetch the doc
2011-02-08 23:40:49 +02:00
kimchy
7a8995e6a8
add max_size to bloom filter, defaults to 500m
2011-02-08 23:02:29 +02:00
kimchy
1db2d993cb
have a 500 million docs cap on the creation of a bloom filter
2011-02-08 22:57:50 +02:00
kimchy
4bcedde011
don't require to provide the type of the doc in the doc element in percolator request, also, change the REST endpoint for percolator to include the type, basically: {index}/{type}/_percolate
2011-02-08 22:24:44 +02:00
kimchy
3062d5b86c
nice usage of versioning parse element
2011-02-08 17:50:28 +02:00
kimchy
ac8646deb7
Search: By default, don't return the version per hit, unless `version` is set to `true`, closes #676 .
2011-02-08 17:48:13 +02:00
kimchy
18ff92662e
bulk request does not refresh on shard replicas
2011-02-08 15:03:03 +02:00
kimchy
4084db378d
more eager refresh logic, execute a refresh even if one is on going so no operations are missed
2011-02-08 12:52:45 +02:00
kimchy
37b1415b57
Improve error when creating a percolator with no query, closes #669 .
2011-02-08 11:57:07 +02:00
kimchy
da9f4992e0
flush with full=true is broken: this IndexWriter is closed, closes #670 .
2011-02-08 11:50:23 +02:00
kimchy
059936fc84
make custom CMS static
2011-02-08 11:41:08 +02:00
kimchy
43a95de9db
dynamic flag on object type should lower case itself when serialized back to its json representation
2011-02-08 11:38:02 +02:00
kimchy
b8c644cab5
ip mapping no longer enabled
2011-02-08 11:24:14 +02:00
kimchy
490ddc5d1d
ip mapping no longer enabled
2011-02-08 11:08:50 +02:00
Edward Dale
f319625cb5
Adding Analysis.getWordList method which retrieves list of words from setting or file specified by setting.
2011-02-08 11:02:18 +02:00
Edward Dale
c95544141b
Adding a decompounding token filter.
2011-02-08 11:02:18 +02:00
kimchy
a663b7ced9
default snowball token filter to English (similar to the analyzer)
2011-02-08 01:38:09 +02:00
kimchy
689b20a518
Mapping: Disable automatic ip type detection on new fields, closes #674 .
2011-02-08 01:14:34 +02:00
kimchy
4319e3cb05
add a test to fetch just an array element (which has no mapping)
2011-02-07 20:24:15 +02:00
kimchy
f0a8bf3783
remove monitoring dead locks
2011-02-06 23:37:38 +02:00
kimchy
3dc3206e0f
don't use time estimator to wakeup a thread each time
2011-02-06 23:33:11 +02:00
kimchy
02a2ebb84b
add geo_bbox as an alias to geo bounding box
2011-02-06 21:58:49 +02:00
kimchy
151e24c5bd
upgrade to jackson 1.7.2
2011-02-03 23:36:55 +02:00
kimchy
1f68d7eabf
when introducing a new type or new fields as part of an index request, wait (with a cap) until they are introduced on to the cluster before returning from the index request
2011-02-03 22:55:16 +02:00
kimchy
28dbbaa3fa
allow to set an internal source builder on search request builder
2011-02-03 22:54:31 +02:00
kimchy
00cba66eb8
move to use mvel 2.1.RC1
2011-02-03 11:29:24 +02:00
kimchy
5fe2615ba7
Index Status: Add primary store size to include only primary shards store sizes, also move index store and translog into their own elements, closes #666 .
2011-02-03 00:50:24 +02:00
kimchy
13869239b0
better help on -url for plugin command
2011-02-02 17:56:57 +02:00
kimchy
904bee12bc
Search: Failure when sorting on `short` type, closes #665 .
2011-02-02 17:55:21 +02:00
kimchy
95ea6153a7
no need for thread pool to notify listeners
2011-02-02 16:16:29 +02:00
kimchy
da17be34c1
if no shards are allocated for a deleted index, then no need to wait for a response
2011-02-02 15:28:48 +02:00
kimchy
4ed82023ce
another embedded test for query and fetch on a single shard
2011-02-02 14:04:24 +02:00
kimchy
0bce34cb5a
optimize single shard search (or search result) by not doing another round of sorting
2011-02-02 13:52:34 +02:00
kimchy
8c196d8b84
better logging, and disable strange failure in thread locals test when run with gradle (for now)
2011-02-02 12:15:18 +02:00
kimchy
3f62b9ea96
check for trace logging
2011-02-02 11:25:13 +02:00
kimchy
c86551d9b5
move master node tests to cluster package, and force it to use zen disco always
2011-02-02 11:15:12 +02:00
kimchy
d2a3f5142f
improve the order of shutdown of top level components in node, close indices first and applying cluster changes, also, improve atomicity of closing of indices and shards
2011-02-01 23:10:15 +02:00
kimchy
eb1db1140b
better to close the channels on another thread as well, just to be safe
2011-02-01 23:08:52 +02:00
kimchy
8587f16119
make sure to call releaseExternalResources on another thread to make sure its not called from a netty IO handler
2011-02-01 22:16:09 +02:00
kimchy
237e936884
if action is performing the operation, return true to indicate it
2011-02-01 17:00:59 +02:00
kimchy
8927e1dee4
Search Scripts: Allow to access score in facet related scripts using `doc.score`, closes #663 .
2011-02-01 13:41:58 +02:00
kimchy
cc6f65f8b8
Search: When sorting, allow to pass `track_scores` and set it to `true` to get scores/max_score back, closes #662 .
2011-02-01 12:38:46 +02:00
kimchy
5da14a7ed1
Geo: All geo components that accept an array of [lat, lon] to change to do [lon, lat] to conform with GeoJSON, closes #661 .
2011-02-01 01:39:01 +02:00
kimchy
f8b5628db9
have rolling restart stress test create incremental ids
2011-01-31 21:41:46 +02:00
kimchy
c7add5f377
upgrade to mvel 2.1 snapshot to gain performance improvements
2011-01-31 21:41:23 +02:00
kimchy
54c770bcc9
improve hash wheel timer
2011-01-31 16:26:17 +02:00
kimchy
cebdae5707
refactor script execution handling to improve performance, also introduce specific search script executor
2011-01-31 16:08:06 +02:00
kimchy
5d39cc93dd
refresh for test
2011-01-31 15:51:39 +02:00
kimchy
04c2a2a543
move ngram to the default processor
2011-01-31 11:52:02 +02:00
kimchy
e85f9c276f
only allow _score to be used, and remove score from custom_score scripts
2011-01-31 02:19:41 +02:00
kimchy
bdb87c7a62
refactor a bit search script execution
2011-01-31 01:29:30 +02:00
kimchy
919143f6b6
don't break if no document mapper exists
2011-01-31 00:00:24 +02:00
kimchy
e516051ea5
Search: When fetching _parent, only the _id should be returned, and not type#id, closes #658 .
2011-01-30 21:16:45 +02:00
kimchy
8b9ec890c3
Thread Pool: Increase the keep alive time of threads from 60 seconds to 60 minutes, closes #657 .
2011-01-30 20:34:34 +02:00
kimchy
5b4846b0b6
Translog Flushing: Improve logic, flush not just by operations in the translog, closes #656 .
2011-01-30 17:41:22 +02:00
kimchy
8884b575c1
more doc
2011-01-30 16:30:17 +02:00
kimchy
94c632b79b
Java Client - Allow to set facets in binary format, closes #442 .
2011-01-30 15:53:10 +02:00
kimchy
e5db3175fb
add explicit internal methods for getting doc fields
2011-01-30 00:34:50 +02:00
kimchy
ad4bb464e8
upgraded to new trove, major upgrade, better perf, but damn, 2mb larger in size...
2011-01-30 00:05:56 +02:00
kimchy
0b09fd0806
Facets: Remove redundant data returned as part of facet response (for example, the field name being faceted), closes #655 .
2011-01-29 20:44:58 +02:00
kimchy
7fa5b0cb57
only add highlighted fragments that have a score > 0 (when ending up using the default highlighter)
2011-01-29 15:29:25 +02:00
kimchy
2d94087f90
explicitly set optimize parameters when doing async merge
2011-01-29 04:11:56 +02:00
kimchy
4a27671d0c
moe internal stats on translog
2011-01-29 04:04:58 +02:00
kimchy
332c4cfa53
use bloom filter to reduce seeks when needing to load version
2011-01-29 03:55:00 +02:00
kimchy
ead4d600be
add a test for term docs version deletes
2011-01-27 00:00:29 +02:00
kimchy
30f54fe23e
change default async interval to 1 second, to do merges (if needed) more often
2011-01-26 23:29:24 +02:00
kimchy
00fa7c95fb
improve test time
2011-01-26 23:04:10 +02:00
kimchy
5ecb847a3a
improve test time
2011-01-26 22:59:35 +02:00
kimchy
24d5a758f0
fix thread name
2011-01-26 22:43:02 +02:00
kimchy
c7e73e4558
tookInMillis is not serialized over network for bulk response
2011-01-26 22:41:41 +02:00
kimchy
6c21c30f31
Index Merge: Improve internal (segment) merging by not initiating it on doc operations, closes #653 .
2011-01-26 22:39:40 +02:00
kimchy
e1d56ea467
call maybeMerge outside of writeLock to reduce work done under writeLock
2011-01-26 17:16:32 +02:00
kimchy
5a4686aee5
Search: Allow to pass a search filter, applying only on the query (and not on facets for example), closes #650 .
2011-01-26 12:55:30 +02:00
kimchy
10ff150bb8
don't log index missing exception when trying to optimize single shard search request
2011-01-25 18:29:28 +02:00
kimchy
00aad4c123
rename tests
2011-01-25 14:40:04 +02:00
kimchy
a5e02d559f
optimize single index conversion from alias to concrete index
2011-01-24 21:25:20 +02:00
kimchy
95dc08fa3b
refactor search tests into separate packages
2011-01-24 16:06:28 +02:00
kimchy
256f1d3611
add a test for collector ordering
2011-01-24 13:58:09 +02:00
kimchy
9735d3e6d7
don't establish a connection between two client nodes
2011-01-24 13:34:43 +02:00
kimchy
9d75849362
better shutdown of sockets
2011-01-24 13:15:57 +02:00
kimchy
3537de4530
don't have the constructor private
2011-01-23 21:07:04 +02:00
kimchy
95b6184135
Terms Facets: Allow to get `all_terms` back (possibly with count 0), closes #647 .
2011-01-23 16:09:18 +02:00
kimchy
85ee6eaf10
add logging on which state file failed to load
2011-01-23 02:59:42 +02:00
kimchy
ce4f09c2b1
Strict dynamic setting: Refuse to index a document with fields not present in the mapping definition, closes #643 .
2011-01-22 01:08:41 +02:00
kimchy
3907c8c680
add a test for custom type class name in token filter factory
2011-01-21 02:07:02 +02:00
kimchy
9801ddeb0d
Analysis: Add phonetic token filter (metaphone, soundex, ...), closes #644 .
2011-01-21 01:57:16 +02:00
kimchy
5316cd1931
should be debug logging, not warn
2011-01-20 17:38:24 +02:00
kimchy
545d8f35df
No cluster name filtering when sniffing is not enabled, closes #637 .
2011-01-20 17:28:45 +02:00
kimchy
9ff8006d37
have compilation and javadoc use UTF8 encoding
2011-01-20 14:24:12 +02:00
kimchy
034a66263a
Analysis: Add stemming to czech analyzer, closes #642 .
2011-01-20 13:30:48 +02:00
Lukáš Vlček
e0fa15a365
added Czech Stemmer, closes #635
2011-01-20 12:34:51 +02:00
kimchy
04f8b55686
ES hangs connection when parent is not specified in bulk index, closes #641 .
2011-01-20 12:28:55 +02:00
kimchy
b4467c7d1f
use caching scorer when there are multiple collectors, so if they call score as well, it will not be computed again
2011-01-19 22:59:28 +02:00
kimchy
7359f7983f
handle rest HEAD on / path
2011-01-19 21:56:53 +02:00
kimchy
b1d13febbf
Percolate on Index and Bulk, closes #636 .
2011-01-19 16:45:45 +02:00
kimchy
2eb8278a80
better logging when not allocating a shard due to required number of existing shards
2011-01-19 00:30:56 +02:00
kimchy
574c455203
Terms Facet: Add option include counts where term is missing, closes #632 .
2011-01-18 21:51:16 +02:00
kimchy
e4a6e99f69
improve handling when not to persist current state to gateway based on blocks and have a block indicate if it also blocks state persistence
2011-01-18 15:28:55 +02:00
kimchy
87d5a92edb
move handling of recovered metadata to GatewayService, reducing code duplication in different gateway implementations
2011-01-18 14:38:10 +02:00
kimchy
a4c2087511
initial not recovered block on node init, and remove it as usual (once node is initialized / recovered)
2011-01-18 14:08:45 +02:00
kimchy
4750ccdc1c
move nullable annotation to the common package, and move javax inject (from guice 3) to internal common as well
2011-01-17 19:45:37 +02:00
kimchy
ba725f8986
fix a (rare) case where search will fail due to failed serialization
2011-01-17 14:37:36 +02:00
kimchy
b4e5a542f3
internal refactoring/simplification in percolator
2011-01-17 13:57:32 +02:00
kimchy
f2bd2c7bbd
protect against a case when string field data value is null
2011-01-17 12:39:11 +02:00
kimchy
89d31bbfde
properly print debug statement when nodes based operations fail
2011-01-17 12:38:08 +02:00
kimchy
f55fa4223e
improve loading queries by adding all of them in batch to the executor
2011-01-17 11:11:13 +02:00
kimchy
20c77a2ac5
clear the percolator reader from the cache explicitly
2011-01-17 10:11:14 +02:00
kimchy
1f289df128
more append benchmark
2011-01-16 12:47:54 +02:00
kimchy
285afe8053
add refresh interval to os/process/network info api which represents the refresh interval of their respective stats
2011-01-16 12:33:23 +02:00
kimchy
c0e2e14c36
fix javadoc
2011-01-15 02:15:36 +02:00
kimchy
998f5f4188
add lt(Object) to range filter builder
2011-01-15 02:15:29 +02:00
kimchy
771e028e54
simple fs bench test
2011-01-15 02:14:10 +02:00
kimchy
2381f668f8
wait for mappings to be created on other nodes before returning from the put mapping request
2011-01-15 02:13:57 +02:00
kimchy
f8b1d1eebd
add explicit type missing exception when trying to search on a type that is not registered
2011-01-14 17:53:45 +02:00
kimchy
a8be99b7e0
Node Stats: Process / Network / Os should only refresh every 5 seconds (refresh_interval to set it), closes #626 .
2011-01-14 16:00:55 +02:00
kimchy
38d10d19bc
Add `prefer_local` flag to analyze and percolate request, closes #625 .
2011-01-14 01:01:37 +02:00
kimchy
ff347858c5
properly report teh files and size recovered when doing primary local gateway recovery
2011-01-13 23:59:35 +02:00
kimchy
7fc04a4ab6
make sure to close the term docs when loading version
2011-01-13 22:49:56 +02:00
kimchy
ad236d19ee
add logging if failing to execute on a node
2011-01-13 16:51:06 +02:00
kimchy
180d225016
Percolator, closes #624 .
2011-01-13 16:20:31 +02:00
kimchy
2d180eb28a
upgrade to sigar 1.6.4
2011-01-13 16:02:35 +02:00
kimchy
577135db97
upgrade jackson to 1.7.1
2011-01-13 15:50:58 +02:00
kimchy
7213539d72
factor out exists collector
2011-01-12 20:51:19 +02:00
kimchy
f8b1a8e38b
add internal event when an index shard is started
2011-01-12 20:47:35 +02:00
kimchy
5e27e3fca4
support reader as well
2011-01-12 17:11:23 +02:00
kimchy
85b6a982d4
A setting to auto expand the number of replicas of an index (based on data nodes), closes #623 .
2011-01-12 16:27:36 +02:00
kimchy
f5a9f2d948
If the cluster does not contain any indices then index templates do not survive cluster restart, closes #617 .
2011-01-11 23:38:46 +02:00
kimchy
a0a714e6a5
Shared Gateway: Allow to set the number of concurrent streams doing snapshot operations, closes #621 .
2011-01-11 22:03:44 +02:00
kimchy
93dec72e43
optimize a filtered query with match_all query into a constant score that just wraps the filter
2011-01-11 19:17:17 +02:00
kimchy
6130ac2ee7
optimize query facet in case the query is a filtered query with match_all query to use just the filter
2011-01-11 18:49:05 +02:00
kimchy
ba9a12e201
Mapper: Add `byte` type (8bit signed), closes #620 .
2011-01-11 16:01:10 +02:00
kimchy
38ea07cfbe
fix field data cache setting: used under index.cache.field.type, available values: resident, soft, weak
2011-01-11 06:33:24 +02:00
kimchy
a5432ba7ce
limit the number of addresses to try and connect to when doing unicast discovery with just the host and not the port to 5
2011-01-11 00:53:53 +02:00
kimchy
90d005a330
add trace logging to unicast discovery
2011-01-10 23:30:46 +02:00
kimchy
50cdf2920f
Make ToXContent return a builder
2011-01-10 22:11:12 +02:00
kimchy
89314f29a7
improve multi value field cache handling both in terms of memory usage and GC behavior
2011-01-10 20:58:31 +02:00
kimchy
233ed1f8c6
improve multi value field cache handling both in terms of memory usage and GC behavior
2011-01-10 20:18:12 +02:00
kimchy
cb8ceb1a39
upgrade to guice 3.0 rc2
2011-01-10 17:49:39 +02:00
kimchy
d4246da7b3
/_open is not recovering indices correctly, closes #615 .
2011-01-09 23:31:10 +02:00
kimchy
d650705a03
refresh param to bulk not working, closes #614 .
2011-01-09 22:06:51 +02:00
kimchy
373af6b1e0
use fs channel to write to file to improve speed of adding to translog
2011-01-09 20:53:40 +02:00
kimchy
5c08271e74
improve numeric stream analysis performance
2011-01-09 19:35:24 +02:00
kimchy
3c3d01347e
improve all stream analysis performance
2011-01-09 02:51:41 +02:00
kimchy
8de7beadc8
Highlighting: Sometimes highlighting returns empty fragments even thought there should be, closes #613 .
2011-01-08 03:19:49 +02:00
kimchy
7364159d69
NPE for when passing null date to content builder, closes #610 .
2011-01-07 23:28:57 +02:00
kimchy
286a6fac76
upgrade to jackson 1.7, also fix (really unused case) of getting compressed smile stored through REST with smile context type
2011-01-07 16:35:52 +02:00
kimchy
b9be6d9ea7
Geo-distance in scripts (like custom_score), closes #607 .
2011-01-07 15:22:11 +02:00
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