Commit Graph

4053 Commits

Author SHA1 Message Date
Martijn van Groningen ea9a4d70cf lucene 4: Removed the usage of Document & Field when retrieving stored fields. 2012-12-06 18:18:52 +01:00
Igor Motov d947dfde2b Add support for ignoring settings in system properties.
An elasticsearch node can be instructed to ignore settings specified in system properties by setting config.ignore_system_properties setting to true.
2012-12-06 09:37:36 -05:00
Martijn van Groningen f72d5c1907 Expose fragmenter option for plain / normal highlighter.
Closes #2465
2012-12-06 14:59:42 +01:00
Shay Banon c22b521800 fix properly handling acceptDocs in filters
our idea is to apply it on the "filtered/constant" level, and not on compound filters, so we won't apply it multiple times. The solution is conservative a bit now, we can further optimize it in the future, for example, not to wrap it when no caching is done within the filter chain
2012-12-06 01:55:16 +01:00
Martijn van Groningen 6cfd938dce Fixed unable to highlight on all multi-valued field values.
Closes #2384
2012-12-03 12:39:18 +01:00
Shay Banon f17ad829ac remove snappy support
relates to #2459
2012-12-03 12:30:13 +01:00
Shay Banon a2a8553faf Indexing Slow Log
closes #2457
2012-12-03 10:21:59 +01:00
Igor Motov 6021515567 The relevancy score in explanation should match the actual score in custom_filters_query
Fixes #2441
2012-11-27 10:13:16 -08:00
Shay Banon 69ef822da6 cleanup docsets
- remove the DocSet abstraction, and use Bits where we can by getting it from DocIdSet
- better handling of acceptDocs, though still need to properly apply them when caching is involved
2012-11-27 10:04:21 -08:00
Igor Motov fb9143aac1 fix sporadically disappearing fields during concurrent dynamic mapping updates 2012-11-24 14:02:58 +01:00
Simon Willnauer 32a0772821 #2436 expose KeepWordTokenFilter by default 2012-11-23 10:11:30 +01:00
Igor Motov 65a43d3ad4 Fix handling of stop word _lang_ notation
Fixes #2412
2012-11-23 09:54:02 +01:00
Shay Banon e1679b89bb fix failed test that were using the wrong form match query 2012-11-22 15:14:02 +01:00
Shay Banon 192cf5298a fix failed test that were using the wrong form match query 2012-11-22 14:44:03 +01:00
Chris Male 2541847945 Added control over Query used by MatchQuery with there are zero terms after analysis 2012-11-22 22:13:29 +13:00
Chris Male 9e2469e04f Add per-field Similarity support 2012-11-21 12:44:59 +13:00
Martijn van Groningen be70722de7 Renamed pulsing40 and Lucene40 postings format providers to pulsing and default respectively for more consistent naming in settings. 2012-11-15 09:54:00 +01:00
Martijn van Groningen 20c6085852 changed test method names. 2012-11-15 09:40:24 +01:00
Martijn van Groningen e80f74584b Added licence header. 2012-11-15 00:18:49 +01:00
Martijn van Groningen fd5bd102aa lucene 4: Exposed Lucene's codec api
This feature adds the option to configure a `PostingsFormat` and assign it to a field in the mapping. This feature is very expert and in almost all cases Elasticsearch's defaults will suite your needs.

## Configuring a postingsformat per field

There're several default postings formats configured by default which can be used in your mapping:
a* `direct` - A codec that wraps the default postings format during write time, but loads the terms and postinglists into memory directly in memory during read time as raw arrays. This postings format is exceptional memory intensive, but can give a substantial increase in search performance.
* `memory` - A codec that loads and stores terms and postinglists in memory using a FST. Acts like a cached postingslist.
* `bloom_default` - Maintains a bloom filter for the indexed terms, which is stored to disk and builds on top of the `default` postings format. This postings format is useful for low document frequency terms and offers a fail fast for seeks to terms that don't exist.
* `bloom_pulsing` - Similar to the `bloom_default` postings format, but builds on top of the `pulsing` postings format.
* `default` - The default postings format. The default if none is specified.

On all fields it possible to configure a `postings_format` attribute. Example mapping:
```
{
  "person" : {
     "properties" : {
         "second_person_id" : {"type" : "string", "postings_format" : "pulsing"}
     }
  }
}
```

## Configuring a custom postingsformat
It is possible the instantiate custom postingsformats. This can be specified via the index settings.
```
{
   "codec" : {
      "postings_format" : {
         "my_format" : {
            "type" : "pulsing40"
            "freq_cut_off" : "5"
         }
      }
   }
}
```
In the above example the `freq_cut_off` is set the 5 (defaults to 1). This tells the pulsing postings format to inline the postinglist of terms with a document frequency lower or equal to 5 in the term dictionary.

Closes #2411
2012-11-14 23:54:29 +01:00
Igor Motov 120560bd0a Using non-mapped fields in prefix queries shouldn't cause NullPointerException
Fixes #2408
2012-11-14 18:34:54 +01:00
Igor Motov f47d62cc30 Date fields shouldn't be returned as longs by Get API 2012-11-13 21:36:28 +01:00
Igor Motov d1281d283b Add `index.routing.allocation.require....` and `cluster.routing.allocation.require....` settings
Fixes #2404
2012-11-13 19:29:20 +01:00
Martijn van Groningen 978c95649e lucene 4: Fixed SimpleQueryTests 2012-11-12 13:44:42 +01:00
Martijn van Groningen 05746adeb2 lucene 4: Set number of replicas to 0. Makes the test run faster. 2012-11-12 13:44:42 +01:00
Igor Motov c2f3eab7d3 lucene 4: fix sorting 2012-11-12 13:44:42 +01:00
uboness cae66fb636 * lucene 4: added missing short support in stream input/output
* lucene 4: added more extensive test for stored fields
2012-11-12 13:44:41 +01:00
Igor Motov f8842d5a4f lucene 4: fix TokenFilterTests 2012-11-12 13:44:41 +01:00
Shay Banon 9d5cae23fa lucene 4: fix general mapping test
no need to test for boost, we already have specific boost tests, in general, we should get rid of this test, and use more specialized tests if we are missing some
2012-11-12 13:44:41 +01:00
Shay Banon 5c45aad260 lucene 4: fix boost mapping tests 2012-11-12 13:44:41 +01:00
Igor Motov 3f3a95668b lucene4: add support for omit_norm setting to numeric types and don't omit norms if boost is not 1.0
This commit enables setting boost for numeric fields. However, there is still no way to take advantage of boosted numeric fields during searching because all queries against numeric fields are translated into range queries wrapped in ConstantScore. Boost for numeric fields is broken on master as well https://gist.github.com/7ecedea4f6a5219efb89
2012-11-12 13:44:40 +01:00
Igor Motov 2fb3591792 lucene4: fixed default values tests to refer to correct default FieldType constants 2012-11-12 13:44:40 +01:00
Igor Motov a5bef30be9 lucene4: fixed CompressIndexInputOutputTests 2012-11-12 13:44:40 +01:00
Igor Motov 3816366780 lucene4: fixed SimpleAllMapperTests 2012-11-12 13:44:40 +01:00
Shay Banon a38064913f lucene 4: fix engine tests 2012-11-12 13:44:40 +01:00
Igor Motov bf13f3f81e lucene4: fixed SimpleIndexQueryParserTests 2012-11-12 13:44:39 +01:00
Martijn van Groningen db639e5c2e lucene 4: Upgraded SimpleLuceneTests class. Test actually passes now. 2012-11-12 13:44:39 +01:00
Martijn van Groningen 2a8161d096 lucene 4: Upgraded SimpleLuceneTests class.
The complete codebase compiles now!
2012-11-12 13:44:39 +01:00
Martijn van Groningen aa2a8c66cc lucene 4: Upgraded UidFieldTests class. 2012-11-12 13:44:39 +01:00
Martijn van Groningen 5c0ef796e8 lucene 4: Upgraded BoostMappingTests + SimpleMapperTests 2012-11-12 13:44:39 +01:00
Shay Banon cefe2ba870 lucene 4: fix fuzzy query test 2012-11-12 13:44:39 +01:00
Igor Motov 787b7a3900 lucene4: more unit test cleanup 2012-11-12 13:44:37 +01:00
Igor Motov 5ad40205c2 lucene4: remove DocumentBuilder and FieldBuilder 2012-11-12 13:44:37 +01:00
Igor Motov bb76542068 lucene4: unit tests cleanup 2012-11-12 13:44:37 +01:00
Igor Motov 6b4e483f55 lucene4: fixed unit.index.mapper, unit.index.query and unit.index.store test (with exception of document boost and similarity issues) 2012-11-12 13:44:37 +01:00
Igor Motov 6bbe37f876 lucene4: fixed integration tests that got broken by switch from String to Text in Facet terms 2012-11-12 13:44:36 +01:00
Shay Banon f572a7bcf7 lucene 4: no close on searcher anymore 2012-11-12 13:44:31 +01:00
Martijn van Groningen 454954e7be lucene 4: Fix field data, facets and field comparators 2012-11-12 13:44:31 +01:00
Shay Banon a8e43578a2 Adding a type with _source or _all enabled fails, when these are disabled in index
fixes #2394
2012-11-09 17:21:25 +01:00
Igor Motov af1e8c0eb1 Add auto index creation on update request
Fixes #2375
2012-11-02 10:18:51 -04:00
Aaron Dixon bd9a5bfa0c fixed issue2371 (incorrect behavior of path_match) 2012-11-01 22:11:33 +01:00
Chris Male 768b8b4d2b Changed SpatialRelation contains to within 2012-11-01 22:03:47 +01:00
Igor Motov 23f7b0002a Deleting a non-existent warmer shouldn't cause request to hang
Fixes #2363
2012-11-01 21:49:54 +01:00
Igor Motov a2628b5eb2 Upsert should return fields Fixes #2362 2012-11-01 21:43:23 +01:00
Igor Motov 29928a9e15 Add test for percolation with the _size field enabled 2012-10-23 23:08:52 +02:00
Igor Motov c551f93cae Add highlighter type switch 2012-10-23 02:25:55 +02:00
Shay Banon 04eabbd38a Mapping: string mapping to automatically set omit_norms to true and index_options to docs when setting index to not_analyzed
closes #2349
2012-10-22 19:01:01 +02:00
Martijn van Groningen ee5df74a6b Fixed delete by query issue with index aliases and nested mappings.
The issue was that under these circumstances the delete by query operation would run forever.
What also is fixed is that during shard recovery when delete by query is replayed nested docs
are also deleted. Closes #2302
2012-10-20 23:39:15 +02:00
Shay Banon 246dc1d992 formatting 2012-10-19 09:48:48 +02:00
Simon Willnauer b6a83fd8b2 #2332 support CustomScoreQuery highlighting and expose QueryBuilder on CustomScoreQuery via Java API 2012-10-19 09:23:16 +02:00
Martijn van Groningen 51e69e1a9e Fixed NPE when using `has_parent` or `has_child` filter/query.
The NPE occurred when for an arbitrary segment no parent documents exist for a has_parent filter/query and no child documents exist for a has_child filter/query.

Closes #2297
2012-09-28 17:08:30 +02:00
Shay Banon 613c70c289 introduce TransportResponse
a class that needs to be used when sending a response over the transport layer, with an option to have headers
2012-09-27 18:05:16 +02:00
Shay Banon cfe7504d1c introduce TransportRequest (with optional headers)
introduce a new class, TransportRequest, which includes headers. This class can be used when sending requests over the transport layer, and ActionRequest also extends it now.
This is the first phase of the refactoring part in the transport layer and action layer to allow for simpler implementations of those as well as simpler "filtering" capabilities in the future
2012-09-26 23:46:28 +02:00
Martijn van Groningen 81a6940ad3 Fixed score explain is for `custom_filters_score` query.
Only the explain of the filter was included. This fix adds an explain for the inner query and wraps it in a top-level explanation.
2012-09-24 14:00:34 +02:00
Shay Banon 6e66f45f58 minor geo shape fetch improvements 2012-09-23 21:31:13 +02:00
Chris Male 05e0b4d4e0 Added ShapeFetchService with support in GeoShapeQueryParser/FilterParser 2012-09-23 21:24:13 +02:00
Chris Male 4f5e62e988 Added MultiPolygon parsing and serialization support 2012-09-21 14:03:21 +02:00
Martijn van Groningen 8080fdc509 Added types exists api
The types exists api checks whether one or more types exists in one or more indices.

## Example usage
curl -XHEAD 'localhost:9200/twitter/tweet'

## Options
* `index` - One or more indices. Either specified as query string parameter or in the uri path.
* `type` - One or more types. Either specified as query string parameter or in the uri path.
* `ignore_missing` -  Determines what type of indices to exclude from a request. The option can have the following values: `none` or `missing`.

Closes #2273
2012-09-21 10:21:32 +02:00
Chris Male 6fc0b83e07 Upgraded to Spatial4j 0.3 2012-09-20 23:55:51 +02:00
Shay Banon 0fadbf2177 more easily add a field with boost to multi match builder 2012-09-20 12:38:13 +02:00
Shay Banon 83a39bd509 improve test by not waiting for green state, no need 2012-09-20 12:00:58 +02:00
Shay Banon f8e1291243 global node indices level queries to be created by guice 2012-09-20 11:54:46 +02:00
Martijn van Groningen d5aa35e0ea Added better error handling for has_child, has_parent and top_children.
If has_parent, has_child or top_children are executed incorrectly then a better exception is thrown. This gives a better error description when one of these queries or filters is being used in count api.

Closes #2261
2012-09-18 13:26:23 +02:00
Shay Banon 7924115b90 Disable allocation: New indices allocation not to be disabled by default
When setting cluster.routing.allocation.disable_allocation, it causes new indices primary shards to not be allocated. By default, new indices created should allow to, at the very least, allocate primary shards so they become operations. A new setting, cluster.routing.allocation.disable_new_allocation, allows to also disable "new" allocations.
closes #2258.
2012-09-17 16:00:55 +02:00
Shay Banon 90e0a70e0e cancel allocation command to allow_primary to be cancelled 2012-09-17 12:31:33 +02:00
Shay Banon afca5ef15f The reroute command allows to explcitiyly execute a cluster reroute allocation command including specific commands. For example, a shard can be moved from one node to another explicitly, an allocation can be canceled, or an unassigned shard can be explicitly allocated on a specific node.
Here is a short example of how a simple reroute API call:

    curl -XPOST 'localhost:9200/_cluster/reroute' -d '{
        "commands" : [
            {"move" : {"index" : "test", "shard" : 0, "from_node" : "node1", "to_node" : "node2"}},
            {"allocate" : {"index" : "test", "shard" : 1, "node" : "node3"}}
        ]
    }'

An importnat aspect to remember is the fact that once when an allocation occurs, the cluster will aim at rebalancing its state back to an even state. For example, if the allocation includes moving a shard from `node1` to `node2`, in an "even" state, then another shard will be moved from `node2` to `node1` to even things out.

The cluster can be set to disable allocations, which means that only the explicitl allocations will be performed. Obviously, only once all commands has been applied, the cluster will aim to be rebalance its state.

Anohter option is to run the commands in "dry_run" (as a URI flag, or in the request body). This will cause the commands to apply to the current cluster state, and reutrn the resulting cluster after the comamnds (and rebalancing) has been applied.

The commands supporterd are:

* `move`: Move a started shard from one node to anotehr node. Accepts `index` and `shard` for index name and shard number, `from_node` for the node to move the shard "from", and `to_node` for the node to move the shard to.
* `cancel`: Cancel allocation of a shard (or recovery). Accepts `index` and `shard` for index name and shar number, and `node` for the node to cancel the shard allocation on.
* `allocate`: Allocate an unassigned shard to a node. Accepts the `index` and `shard` for index name and shard number, and `node` to allocate the shard to. It also accepts `allow_primary` flag to explciitly specify that it is allowed to explciitly allocate a primary shard (might result in data loss).

closes #2256
2012-09-15 22:56:14 +02:00
Martijn van Groningen cfe76546f2 Added has_parent query The `has_parent` query works the same as the `has_parent` filter, by automatically wrapping the filter with a constant_score. It has the same syntax as the `has_parent` filter. Closes #2254 2012-09-14 17:34:01 +02:00
Martijn van Groningen 3cd54fc4ee Improve `has_child` filter / query performance (#2251) Added a new has_child filter implementation, that works _uid based instead of bitset based. This implementation is about ~2 till ~6 times (depending on the query) faster than the already existing bitset based implementation. 2012-09-14 14:37:29 +02:00
Shay Banon ef9974ce2c add serialization options for allocation commands 2012-09-14 14:26:39 +02:00
Martijn van Groningen 2bd9b3aed0 Added `has_parent` filter (#2243)
The `has_parent` filter accepts a query and a parent type. The query is executed in the parent document space, which is specified by the parent type. This filter return child documents which associated parents have matched. For the rest `has_parent` filter has the same options and works in the same manner as the `has_child` filter.

This is an experimental filter.

Filter example
###################
```
{
    "has_parent" : {
        "parent_type" : "blog"
        "query" : {
            "term" : {
                "tag" : "something"
            }
        }
    }
}
```
The `parent_type` field name can also be abbreviated to `type`.

Memory considerations
###############
With the current implementation, all _id values are loaded to memory (heap) in order to support fast lookups, so make sure there is enough mem for it.

This issue originates from issue #792
2012-09-13 13:35:45 +02:00
Shay Banon e530f03b94 internal custom allocation commands
add support for internal custom allocation commands, including allocation, move, and cancel (shard).
also, fix #2242, which causes the cluster state to be in inconsistent state when a shard being the source of relocation is failed
2012-09-12 15:13:27 +02:00
Martijn van Groningen b6a9bd9a31 - Fixed boosting per field with multi_match query. 2012-09-12 11:43:33 +02:00
Shay Banon 24ce2ef537 handle EOF when handling arrays as well 2012-09-05 11:40:39 +02:00
Shay Banon a42159f8d5 Shard Allocation: `index.routing.allocation....` settings do not "remove" the setting on empty string, closes #2229. 2012-09-03 16:44:23 +02:00
Martijn van Groningen 9b29950997 Added fields option to explain api. #2203 2012-08-31 22:19:09 +02:00
Martijn van Groningen cd0e1226e1 Added a global ignore_malformed index setting. #2220 Also extended the ignore_malformed support to TTL, Ip and timestamp field types. 2012-08-31 22:10:46 +02:00
Martijn van Groningen dea2de3304 Add ignore_indices option for search, multisearch, count and other Broadcast request. #2209 2012-08-27 15:36:14 +03:00
Martijn van Groningen 1d4aee6086 - Explain api opens 2 engine searchers, but closes only 1 engine searcher. Closes #2206 2012-08-27 12:20:02 +03:00
Martijn van Groningen bbe735f2cc Fixed issue #2197 2012-08-25 00:38:26 +03:00
uboness b4b33bb205 Local node master listener
* Fixed an issue where dynamic update to minimum_master_nodes settings would not take immediate effect
* Added LocalNodeMasterListener support to the ClusterService. Enables listening to when the local node becomes/stopped being a master
2012-08-24 02:25:13 +02:00
uboness 3fdb9f0a27 Enabled the option of configuring plugin types in the settings. This will also help in tests when testing plugin related functionality 2012-08-21 23:00:24 +02:00
Martijn van Groningen 8365e7ba0b - Added explain api. #2184 2012-08-21 13:26:17 +02:00
Shay Banon 9aae62b4a6 All Field: Automatically detect when field level boosting is used, and optimize when its not, closes #2189. 2012-08-20 15:07:32 +02:00
Shay Banon e3a9271000 unify more count and search implementation 2012-08-19 16:54:53 +02:00
Simon Willnauer b0b5775c98 use term query instead of a specialized SpanTermQuery on _all field if positions are omitted 2012-08-16 10:42:14 -07:00
Shay Banon ab49a8c2fc improve update test to wait for green cluster state 2012-08-14 01:47:18 +02:00
Simon Willnauer 53f65d8ff2 Remove / deprecated omit_term_freq_and_positions in favor of IndexOptions exposed via mapping API 2012-08-13 17:19:08 +02:00
Shay Banon eda3da2aea fix geo shape tests 2012-08-13 14:40:36 +02:00
Chris Male bea4346f3a Added GeoShape indexing and querying support 2012-08-13 13:44:29 +02:00
Martijn van Groningen b979dfa0be Add lenient option to match & multi_match queries. #2156 2012-08-09 21:56:50 +02:00
Shay Banon fedd1965ea Update API: Update through an alias with routing configured on it fail to use the routing, closes #2155. 2012-08-09 15:14:52 +02:00
Martijn van Groningen e43dd4687e - Added support for multi match query. 2012-08-09 11:36:59 +02:00
Martijn van Groningen 195e586fd8 - Fixed timezone parsing when input starts with '+'sign. Fixes issue #2141 2012-08-07 22:53:00 +02:00
Martijn van Groningen 37e7a54b0e Fixed top children query bug reported in issue #2140
Fixed type.
2012-08-06 22:02:03 +02:00
Martijn van Groningen 0e3c825501 Added ignore_malformed mapping parameter for all number like types. Issue #2120 2012-08-03 10:41:07 +03:00
Shay Banon 7a0d7f531d fix test 2012-08-02 09:40:54 +03:00
Shay Banon e88dbafe51 rename Test to Tests, so it will be executed as part of the mvn tests as well, reformat a bit 2012-08-01 16:20:37 +03:00
Simon Willnauer d13a7809d1 #2116 Expose all ShingleFilter settings via ShingleTokenFilterFactory 2012-08-01 16:18:58 +03:00
Shay Banon 0492d9b8cb fix test failure message... 2012-07-31 21:02:34 +02:00
Shay Banon 82cfe0e8b2 upgrade to latest testng, improve console output when running test, add more options as env vars when using maven 2012-07-31 20:24:39 +02:00
Shay Banon bbc45fefe5 rename limit to ignore_above, and create a dedicated test 2012-07-31 13:00:10 +02:00
Martijn van Groningen 41b3a454cf Issue #2121 Added limit parameter for string type. 2012-07-31 13:00:03 +02:00
Shay Banon 4eb85bbbd6 Transport/Http: Remove explicit setting of send/receive buffer, and improve netty receive buffer predictor, closes #2124. 2012-07-30 21:37:38 +02:00
Shay Banon 7edafcf9a0 Node Stats: Add jvm buffer pools stats (when available, for java 7 and above), closes #2122. 2012-07-29 00:49:18 +02:00
Shay Banon 57e966e9d7 upgrade to jackson 2.0.4 2012-07-10 23:44:02 +02:00
Shay Banon 99d2f27c84 Introduce Text abstraction, allowing for improved representation of strings, apply to HighlightedField (breaks backward for Java API from String to Text), closes #2093.
By introducing the Text abstraction, we can keep (long) text fields in their UTF8 bytes format, and no need to convert them to a string when serializing it back to Json for example.

The first place we can apply this is to highlighted text, which can be long.. . This does breaks backward comp. for people using the Java API where the HighlightField now has a Text as its content, and not String.
2012-07-10 00:47:37 +02:00
Shay Banon 35233564fd buffer management refactoring
First phase at improving buffer management and reducing even further buffer copies. Introduce a BytesReference abstraction, allowing to more easily slice and "read/write references" from streams. This is the foundation for later using it to create smarter buffers on top of composite netty channels for example (which http now produces) as well as reducing buffer copies when sending transport/rest responses.
2012-07-07 01:26:41 +02:00
Shay Banon 8d1e04a973 have the quick rolling restart stress test also wait for 0 relocating shards 2012-07-06 01:01:18 +02:00
Shay Banon 57023c8ba9 Compression: Support snappy as a compression option, closes #2081. 2012-07-04 17:14:12 +02:00
Shay Banon e5c89def42 Support wildcard and +/- notation for multi index APIs, closes #2074. 2012-07-01 18:16:04 +02:00
Shay Banon 565db26e13 Store Compression: integer overflow causes failed reads (index is safe), closes #2071. 2012-06-30 01:37:46 +02:00
Shay Banon 8bab859822 simplify tests, doc file length 2012-06-29 16:01:17 +02:00
Shay Banon f2e39e4ee2 Auto import dangling indices, closes #2067. 2012-06-29 01:01:26 +02:00
Shay Banon a872c88f03 dangling index handling might still remove the state files for the dangling index, closes #2065. 2012-06-28 13:32:44 +02:00
Matt Weber d6bc17fee5 Partial update without script
Allow the use of "doc" as the update source when a script is not
specified.  New fields are added, existing fields are overwritten, and
maps are merged recursively.
2012-06-27 21:29:22 +02:00
Igor Motov a4ad84b5e4 Enable validation of queries with has_child and script filters 2012-06-27 21:23:02 +02:00
Igor Motov dbeda1ab2b Add missing serialization for error and explanation in validate query request 2012-06-27 21:23:01 +02:00
Shay Banon 2b893fe1e5 Use bloom filter when flushing (applying deletes), closes #2058. 2012-06-26 16:45:29 +02:00
Shay Banon 12a644c89b Stored Compression: failure to fetch document in certain cases (read failure, index compression works), closes #2055. 2012-06-26 01:54:19 +02:00
Shay Banon 6e7764a083 reduce objects created with bloom filter operations 2012-06-24 20:58:44 +02:00
Shay Banon 2fb867b467 Store Compression: Term Vector Vector, closes #2049. 2012-06-23 23:11:00 +02:00
Shay Banon 6fb836c25e better thread naming 2012-06-23 18:35:42 +02:00
Shay Banon 1780a2a067 Failure to recover properly on node(s) restart
When a node restarts, it might be canceling one recovery of a shard id only to get another one in the next cycle. We should detect this case and handle it properly.

This is a fix to the annoying message seen by users: suspect illegal state: trying to move shard from primary mode to replica mode.
2012-06-22 17:46:57 +02:00
Shay Banon cc3fab45ff Improve cluster resiliency to disconnected sub clusters + fix a shard allocation bug with quick rolling restarts
Two main changes:

Improve cluster resiliency to disconnected sub clusters. If a node pings a master and that node is no longer registered with the master, improve the rejoin process of that node to the cluster. Also, if a master receives a message from another master, pick one to force to rejoin the cluster (based on cluster state versioning).
On quick rolling restart, without waiting for shard allocation, the shard allocation logic can mess up its counts, causing for strange logic in allocating shards, or validation failures on routing table allocation.
2012-06-22 03:36:54 +02:00
Shay Banon b009c9c652 Stored Fields Compression, closes #2037.
Compressing the stored fields file (the .fdt file) directly allows to have better compression on the size of the index, specifically when indexing (and storing) small documents. The compression will be considerably more effective compared to compressing each doc on its own (when setting compress on the _source mapper). The downside is that more data needs to be uncompressed when loading documents.

The settings to control it is `index.store.compress.stored_fields` set to `true` (it defaults to `false`), and can be enabled dynamically using the update settings API. This allows to enabled compression at a later stage (i.e. old time based indices), and then optimize the index to make sure it gets compressed.
2012-06-20 05:31:34 +02:00
Shay Banon fbf4c70af9 add simple compression bench 2012-06-19 13:15:44 +02:00
Martijn van Groningen d66f401ce6 Better fix for mv field highlighting issue #1994 2012-06-19 04:13:47 +02:00
Shay Banon aebd27afbd abstract compression
abstract the LZF compression into a compress package allowing for different implementation in the future
2012-06-19 04:07:11 +02:00
Shay Banon 1a98a9184e fix test to shutdown threadpool 2012-06-19 03:37:08 +02:00
Shay Banon 7b3b130a62 fix tests to shutdown threadpool 2012-06-19 03:33:44 +02:00
Chris Male 040fa2581a Added GeoDistance test which verifies the difference in behaviour between ARC and PLANE, causing elliptical results 2012-06-15 22:55:45 +02:00
Shay Banon 982c8b4664 fix test to work with new noramalization 2012-06-14 15:55:33 +02:00
Chris Male 2315e6d239 Incorporated changes to normalization of latitude and longitudes so latitude normalization is correct and longitude is normalized at the same time 2012-06-14 15:43:36 +02:00
Shay Banon 133bd72f8d Multi Search API: Allow to set search_type on REST endpoint URI to apply to all search requests, closes #2023. 2012-06-13 20:47:24 +02:00
Shay Banon dfe6e58e37 use an array to represent the keys in the uid filter 2012-06-13 16:03:45 +02:00
Shay Banon 6eb419649a better/faster parsing of update request (with upsert) 2012-06-13 13:12:37 +02:00
Shay Banon 0b4fe4add3 rename doc to upsert in update API
a better descriptive name for it, and won't clash with future features on the update api
2012-06-13 12:42:10 +02:00
Martijn van Groningen 1319ed9322 Fixes highlight issue for multivalues fields described in issue #1994 2012-06-11 23:44:45 +02:00
Shay Banon 9905eab73a Update API: Allow to upsert, provide a doc and index it if the doc does not exists, closes #2008. 2012-06-08 02:01:04 +02:00
Shay Banon ccea825966 terms filter uses less memory when cached
move from a TreeSet to an array, sorting on creation
2012-06-07 23:34:21 +02:00
Shay Banon f87632fabd Query DSL: term/terms filter performance improvement (bulk reading), closes #1972. 2012-05-23 21:54:31 +02:00
Shay Banon 2c274e59d5 Percolator: Registering (indexing) a new percolator query will still be stored in memory if actually indexing it fails, closes #1965. 2012-05-19 19:36:01 +02:00
Shay Banon f0007fd4ae Create Index: Allow to provide index warmers when creating an index, closes #1917. 2012-05-07 14:27:30 +03:00
Shay Banon ca2dc1801c Index Template: Allow to register index warmers in an index template, closes #1916. 2012-05-07 14:00:37 +03:00
Shay Banon e0f3b7e885 Index Warmup API, closes #1913. 2012-05-06 18:50:35 +03:00
Shay Banon aeae380258 ClassCastException during percolation query, closes #1905. 2012-05-03 17:57:52 +03:00
Shay Banon 07f3ed05b0 Search Preference: Add _shards prefix to explicitly list shards, and add _prefer_node option, closes #1904 2012-05-03 01:12:22 +03:00
Shay Banon 8ca36c8dd5 allow internally to register index warmup actions, as well as expose stats on it 2012-04-29 00:37:20 +03:00
Shay Banon a4fb33dbc3 Date Histogram Facet: Add `quarter` as an interval, closes #1884. 2012-04-24 19:04:09 +03:00
Shay Banon 98b1f368f5 Better handling of fields that have `.` in their name when doing property based navigation, closes #1875. 2012-04-19 17:28:14 +03:00
Shay Banon 03c9eaf812 NullPointerException in geo_distance_range without to, closes #1865. 2012-04-17 15:51:45 +03:00
Shay Banon 16cd159a38 Upgrade to Lucene 3.6, closes #1862. 2012-04-15 17:39:41 +03:00
Shay Banon b78680c7ae Java API Query DSL: Add wrapper filter similar to wrapper query accepting a json filter in raw format, closes #1844. 2012-04-04 19:53:17 +03:00
Shay Banon cdfa87827a Update API: Allow to specify fields in the request to return updated fields, closes #1838. 2012-04-03 14:11:22 +03:00
Benjamin Devèze 0cf0703a7b add fields parameter for update API (#1822) 2012-04-03 13:35:12 +03:00
Shay Banon 9fb6ecf9f0 allow to more easily plug custom unicast host providers by being able to add them to ZenDiscoveryModule using a plugin 2012-03-31 21:38:39 +03:00
Igor Motov 8859594e36 add extended validation information 2012-03-24 13:40:25 +02:00
Shay Banon 348ed11450 Have streams provided to gateway (shared one) allow marking, closes #1803. 2012-03-22 12:20:00 +02:00
Shay Banon 752ae6e206 optimize acquiring search handler to use a search manager, also, creating a ContextIndexSearcher can be optimized if it is created from a searcher 2012-03-09 22:41:09 +02:00
Shay Banon c08b968246 rename the cached thread pool to generic (from cached), since really, cached is meaningless, and its actually a generic thread pool we use for different operations 2012-03-09 20:32:33 +02:00
Shay Banon e707e93942 Index Blocks: Add index.blocks.write, index.blocks.read, and index.blocks.metadata settings, closes #1771. 2012-03-08 21:56:13 +02:00
Shay Banon 5b76222ee7 Merge branch 'create-post-bug' of https://github.com/Paikan/elasticsearch 2012-03-01 14:54:19 +02:00
Shay Banon feaccee246 Multi level parent/child mapping and search fails, closes #1751. 2012-03-01 14:23:58 +02:00
Benjamin Devèze 7231ee832a set missing create param in PutRequest 2012-02-29 17:56:53 +01:00
Shay Banon c72772e621 msearch should accept a leading \n, closes #1736. 2012-02-27 00:27:43 +02:00
Shay Banon 9d724b8a14 fix test 2012-02-21 13:44:31 +02:00
Shay Banon 0bf61ab6c8 add pre/post zone, pre/post offset, and factor to date histogram builder 2012-02-21 12:43:28 +02:00
Shay Banon c6130b95e5 allow to provide no header (but still \n) for msearch 2012-02-20 22:00:43 +02:00
Shay Banon 4a9cb6408c API: Multi Search, closes #1722. 2012-02-20 18:57:27 +02:00
Benjamin Devèze 36a4cde89f add update integration tests 2012-02-17 23:09:52 +01:00
Shay Banon 7bd87e12a2 Indices query should accept alias names, closes #1698. 2012-02-17 15:03:52 +02:00
Shay Banon f997315f54 Date Mapping: Support "date math" when searching, closes #1708. 2012-02-16 18:10:12 +02:00
Shay Banon 278e5d3a43 Transport buffer overrun can happen because of byte buffer reading optimization introduced in 0.19.0.RC1, closes #1686. 2012-02-09 00:15:08 +02:00
Shay Banon 457f0a4266 Avoid placing a shard replica on the same machine as shard itself, closes #1680. 2012-02-08 15:39:01 +02:00
Shay Banon a5838dc403 improve test, wait for green state post master node startup 2012-02-01 21:17:45 +02:00
Shay Banon f6deb45970 Cluster Allocation: cluster.routing.allocation.allow_rebalance does not allow for rebalancing on relocating shard, closes #1651. 2012-01-30 01:58:51 +02:00
Shay Banon 70c334ec01 Index Allocation: allow to specify maximum total number of shards per node, closes #1650. 2012-01-30 01:43:18 +02:00
Shay Banon 49b6d70dfd Query DSL: prefix query to support _id, closes #1648. 2012-01-29 21:09:11 +02:00
Shay Banon bb6fb6e083 improve test to wait for 2 nodes 2012-01-28 00:26:53 +02:00
Shay Banon da433df217 Mapping: _source mapping to allow for format to convert to (if needed), closes #1639. 2012-01-26 00:18:46 +02:00
Shay Banon 68bb5d1434 by default, index metadata to be stored in smile format and store binary format mapping and alias filter to improve the cost it takes to persist them 2012-01-25 11:58:29 +02:00
Shay Banon c1a2a5c910 close the multicast socket in test 2012-01-24 13:10:38 +02:00
Shay Banon 1b7d329307 add a local gateway test to make sure we recover also latest state when updating index metadata and templates 2012-01-23 00:50:32 +02:00
Shay Banon 942b427940 Local Gateway: Store specific index metadata under dedicated index locations, closes #1631. 2012-01-22 23:34:34 +02:00
Shay Banon 534f487de3 Local Gateway: Move shard state to be stored under each shard, and not globally under _state, closes #1618. 2012-01-18 01:08:35 +02:00
Shay Banon 801c709b42 test with local gateway 2012-01-18 01:02:55 +02:00
Benjamin Devèze 0810808864 fix bug in TTL handling where default TTL value was not set properly 2012-01-17 10:35:16 +01:00
Shay Banon bddea09170 /_status doc count of index wrong, closes #1615. 2012-01-16 13:48:31 +02:00
Shay Banon 21405f5aa4 Highlighting: Add boundary_chars and boundary_max_size to control text boundaries with fast vector highlighter (term vector), closes #1614. 2012-01-15 23:05:34 +02:00
Shay Banon e37c0904f0 Add generic execution of APIs to Client (and indices/cluster) and allow for plugins to register custom APIs, closes #1612. 2012-01-15 16:15:09 +02:00
Shay Banon 8ee6ee05cd Java API: Move all request builders to org.elasticsearch.action... from org.elasticsearch.client.action, closes #1611. 2012-01-15 12:44:50 +02:00
Shay Banon d2d65f2f65 add test marker on the class as well 2012-01-12 16:59:43 +02:00
Olivier Favre 8f0ecbcc0b Improve latitude and longitude normalization 2012-01-12 16:58:44 +02:00
Shay Banon 04a138db5d Allow to provide timeout parameter in request body (as well as URI parameter), closes #1604. 2012-01-12 14:19:21 +02:00
Shay Banon 771dbdb4bc doc nested docs and get / uid 2012-01-11 15:01:40 +02:00
Shay Banon 5b2854e8bb Date Histogram Facet: Add `pre_offset` and `post_offset` options, closes #1599. 2012-01-09 21:28:56 +02:00
Shay Banon d149cbb06e query builder builds a "safe" byte array 2012-01-09 00:17:53 +02:00
Shay Banon 0f1b3f0457 delete by query to use byte reference serialization 2012-01-08 20:52:48 +02:00
Shay Banon 858195351b translog actions to use bytes ref serialization, and have the option to mark BytesStreamInput as unsafe 2012-01-08 17:23:37 +02:00
Shay Banon 45b5594e9b sleep before checking for no master block 2012-01-08 12:17:53 +02:00
Shay Banon e059e213db removed phonetic, fix test config files 2012-01-08 12:06:30 +02:00
Shay Banon 3d51553cf2 Move phonetic token filter to a plugin, closes #1594. 2012-01-07 23:18:30 +02:00
Shay Banon aec5af3800 clean more test yml files 2012-01-07 00:08:09 +02:00
Shay Banon 164df9979a remove yml file conf for test 2012-01-06 23:43:35 +02:00
Shay Banon 5c7d1d0984 remove yml file conf for test 2012-01-06 23:41:28 +02:00
Shay Banon ec8b7c3e23 No master (startup / minimum_master_node) / not recovered blocks should cause proper failures on operations, closes #1589. 2012-01-06 23:38:41 +02:00
Shay Banon a18021c778 Filter cache to have just weighted (node) and none, and index query parser cache to be size based, closes #1590. 2012-01-05 20:44:09 +02:00
Benjamin Devèze d95aa9f266 add ttl tests with routing 2012-01-04 23:37:34 +01:00
Shay Banon e5f2ce0fd6 use factor in scripts, so custom score function will work correctly when it multiplies 2012-01-04 21:53:26 +02:00
Shay Banon 761862a9a9 nicer exception names 2012-01-03 01:05:08 +02:00
Shay Banon 83d5084f62 Update API: Allow to update a document based on a script, closes #1583. 2012-01-02 22:02:19 +02:00
Shay Banon 8c6b2a3077 Date Histogram Facet: Improve time zone handling, add factor option, closes #1580. 2012-01-01 00:09:57 +02:00
Shay Banon 8cf8b478af Scan Search: Improve performance while scrolling through it, closes #1579. 2011-12-31 17:49:19 +02:00
Shay Banon e47ec96ca2 Merge branch 'master' of https://github.com/dakrone/elasticsearch 2011-12-29 14:17:50 +02:00
Lee Hinman f6b036f713 Refactor validate to validateQuery and move into indices admin action 2011-12-28 15:27:59 -07:00
Shay Banon 4e6217c54d simplify toString for cached filter 2011-12-28 23:35:04 +02:00
Lee Hinman be6e18cb36 Add query validation feature 2011-12-27 13:51:59 -07:00
Shay Banon 5049f60b6c Set an index / indices to read only, or make the cluster read only, closes #1573. 2011-12-27 20:35:07 +02:00
bbgordonn 661d04e9de #1452 closed: block writes or metadata changes if {index,cluster}.read_only is set. 2011-12-27 17:19:03 +02:00
Shay Banon cc3f44473f Search: Support partial fields that can returns partial view of the _source, closes #1570. 2011-12-26 16:49:55 +02:00
Shay Banon aa078788f9 Nested objects not deleted on "delete by query", closes #1537. 2011-12-25 13:33:02 +02:00
Shay Banon 73b74847aa cleanup test 2011-12-22 23:24:12 +02:00
jayson.minard 52e6327467 unit tests for issue 1560, customfiltersscore min and multiply search modes 2011-12-22 23:19:58 +02:00
Shay Banon 415ee6425a Allow search to continue when sort field is missing from type mapping, closes #1558. 2011-12-22 14:25:54 +02:00
Shay Banon fe4ba2ad55 Improve multi field mapper with highlighting based on source, closes #1559. 2011-12-22 02:24:36 +02:00
Shay Banon 52743a05fa rename setEncoder to setHighlighterEncoder, its not evident which encoder is refers to 2011-12-21 23:36:16 +02:00
Shay Banon 55d8d0d9c6 Analyze API: Allow to execute it without pre-creating an index, and allow to build custom analyzer (tokenizer + token_filters), closes #1555. 2011-12-21 23:24:55 +02:00
Shay Banon 2b838b808e add another path trie test for wildcard vs. contant 2011-12-20 17:42:06 +02:00
Shay Banon dd6c076454 simplify and improve scaling/blocking thread pools 2011-12-20 12:03:28 +02:00
Shay Banon 41b5c3d562 wait for yellow state in test 2011-12-19 13:51:33 +02:00
Shay Banon 0328a300eb move jmeter files under jmeter, no need for jmx 2011-12-18 01:01:12 +02:00
Shay Banon a3ca1afed5 Translog: When not sync'ing on each operation, buffer writes, closes #1549. 2011-12-18 00:19:35 +02:00
Shay Banon ec04435b06 rename test 2011-12-16 23:36:31 +02:00
Shay Banon 26fc9bcb25 abstract away the fs translog file to an interface 2011-12-16 23:30:31 +02:00
Shay Banon 922833cdc4 source not returned when * specified in fields list, closes #1541. 2011-12-14 21:18:14 +02:00
Shay Banon de861d6f43 Support Multicast discovery for external clients, closes #1532. 2011-12-11 18:54:07 +02:00
Shay Banon e7eed3c182 fix package location of trove extensions 2011-12-10 00:12:42 +02:00
Shay Banon a71f2eed99 fix test to wait for async indexing to finish 2011-12-09 10:04:11 +02:00
Shay Banon 1fd5a48409 wait for yellow status before searching 2011-12-08 16:28:57 +02:00
Shay Banon 5ea6c0bac5 wait for green status in test to make sure shards are allocated 2011-12-07 17:01:57 +02:00
Shay Banon 9781d8675d cleanups, remove unused code 2011-12-06 16:40:07 +02:00
Shay Banon 6a71eab51f finalize structure, tests pass 2011-12-06 02:43:17 +02:00
Shay Banon a8fd2d48b8 first cleanup phase, move to single src 2011-12-06 00:59:23 +02:00