Commit Graph

7413 Commits

Author SHA1 Message Date
David Pilato 8b1c25e11f Upgrading analysis plugins fails
When an analysis plugins provides default index settings using `PreBuiltAnalyzerProviderFactory`,  `PreBuiltTokenFilterFactoryFactory` or `PreBuiltTokenizerFactoryFactory` it fails when upgrading it with elasticsearch superior or equal to 0.90.5.

Related issue: #4936

Fix is needed in core. But, in the meantime, analysis plugins developers can fix that issue by overloading default prebuilt factories.

For example:

```java
public class StempelAnalyzerProviderFactory extends PreBuiltAnalyzerProviderFactory {

    private final PreBuiltAnalyzerProvider analyzerProvider;

    public StempelAnalyzerProviderFactory(String name, AnalyzerScope scope, Analyzer analyzer) {
        super(name, scope, analyzer);
        analyzerProvider = new PreBuiltAnalyzerProvider(name, scope, analyzer);
    }

    @Override
    public AnalyzerProvider create(String name, Settings settings) {
        return analyzerProvider;
    }

    public Analyzer analyzer() {
        return analyzerProvider.get();
    }
}
```

And instead of:

```java
    @Inject
    public PolishIndicesAnalysis(Settings settings, IndicesAnalysisService indicesAnalysisService) {
        super(settings);
        indicesAnalysisService.analyzerProviderFactories().put("polish", new PreBuiltAnalyzerProviderFactory("polish", AnalyzerScope.INDICES, new PolishAnalyzer(Lucene.ANALYZER_VERSION)));
    }
```

do

```java
    @Inject
    public PolishIndicesAnalysis(Settings settings, IndicesAnalysisService indicesAnalysisService) {
        super(settings);
        indicesAnalysisService.analyzerProviderFactories().put("polish", new StempelAnalyzerProviderFactory("polish", AnalyzerScope.INDICES, new PolishAnalyzer(Lucene.ANALYZER_VERSION)));
    }
```

Closes #5030
2014-02-07 12:20:34 +01:00
Simon Willnauer 7a84b94e29 Extend ElasticsearchLuceneTestCase rather than LuceneTestCase
LuceneTestCase misses some thread filters that might fail a test
since a background cluster is still running from a previous test.
2014-02-07 12:02:11 +01:00
tstibbs 8fabd477b8 fixed trace logging hidden by check for isDebugEnabled 2014-02-07 10:38:45 +01:00
Adrien Grand 9cb17408cb Make size=0 return all buckets for the geohash_grid aggregation.
Close #4875
2014-02-07 09:55:10 +01:00
Adrien Grand e1c1120949 Fix BytesRef owning issue in string terms aggregations.
The byte[] array that was used to store the term was owned by the BytesRefHash
which is used to compute counts. However, the BytesRefHash is released at some
point and its content may be recycled.

MockPageCacheRecycler has been improved to expose this issue (putting random
content into the arrays upon release).

Number of documents/terms have been increased in RandomTests to make sure page
recycling occurs.

Close #5021
2014-02-07 09:46:06 +01:00
David Pilato 444dff7b40 [DOCS] delete by query requires a top-level query parameter
Closes #5044
(cherry picked from commit 1e265b3)
2014-02-07 08:50:15 +01:00
Simon Willnauer 0fb8d982be Use patched version of ReferenceManager to prevent infinite loop in
RefrenceManager#accquire()

See LUCENE-5436
2014-02-06 21:45:38 +01:00
Adrien Grand aab2c7a444 Be paranoid about double release. 2014-02-06 21:00:56 +01:00
Adrien Grand fa094a46fd Add IndexReader reference counting methods to forbidden APIs. 2014-02-06 21:00:56 +01:00
Clinton Gormley 2b0e580046 [DOCS] Added backwards compatibility instructions to Perl client 2014-02-06 19:10:46 +01:00
Kevin d9b704fd86 add redis transport plugin 2014-02-06 18:19:54 +01:00
Benjamin Devèze c511c46f9f Add Marvel and Paramedic to config file 2014-02-06 18:14:21 +01:00
Lee Hinman d2078a5e28 Add fuzzy/slop support to `simple_query_string`
Ports the change from https://issues.apache.org/jira/browse/LUCENE-5410
2014-02-06 10:05:10 -07:00
Costin Leau f5a8de6321 [DOCS] organize a bit the repository plugins
(cherry picked from commit 88e1c20c4581885db7e5e65edf7eb3629c2d31ca)
2014-02-06 19:01:58 +02:00
Evan Wong 593f98a373 Fixed the string() code literal in the java client index api doc. 2014-02-06 17:29:40 +01:00
Luca Cavanna 80ab15dfc1 Updated nodes info endpoint in elasticsearch.yml
Relates to #4055
2014-02-06 17:25:27 +01:00
Simon Willnauer 162ca99376 Added `cross_fields` mode to multi_match query
`cross_fields` attemps to treat fields with the same analysis
configuration as a single field and uses maximum score promotion or
combination of the scores based depending on the `use_dis_max` setting.
By default scores are combined. `cross_fields` can also search across
fields of hetrogenous types for instance if numbers can be part of
the query it makes sense to search also on numeric fields if an analyzer
is provided in the reqeust.

Relates to #2959
2014-02-06 17:15:55 +01:00
Clinton Gormley 56479fb0e4 [DOCS] Make apt/yum repos more visible 2014-02-06 17:04:37 +01:00
Boaz Leskes 9bf263c741 [DOCS] Fix terms agg value script example 2014-02-06 16:35:49 +01:00
Boaz Leskes ae4ed29f9b [Docs] value_count supports script per 1.1 2014-02-06 15:04:50 +01:00
Clinton Gormley 17e2ca5259 [DOCS] Updated migration docs for multi_field to point to copy_to 2014-02-06 14:34:07 +01:00
Clinton Gormley 6238d406b5 [DOCS] Removed the experimental label from Tribe, Hot Threads
and Completion Suggester
2014-02-06 14:19:17 +01:00
Adrien Grand 728e0e2a2e Ignore case when parsing `script_values_sorted|unique` in aggregations.
Close #5009
2014-02-06 12:01:00 +01:00
David Pilato 583f148334 [DOCS] add azure and gce discovery plugins
Clean EC2 disco doc
Add Azure disco doc
Add Google Compute Engine doc
Fix Zen doc (add `enabled` in `multicast` parameters list) - Fix #5032.
2014-02-06 09:18:42 +01:00
David Pilato 8b1a6fc5b6 Add S3 and HDFS repositories 2014-02-05 17:53:37 +01:00
Clinton Gormley d9bdfe3fec [DOCS] Deprecated the path setting in favour of copy_to
Relates to #4729
2014-02-05 14:47:48 +01:00
Adrien Grand 4e9fa5c9f4 Add Version.1_1_0 (missing in master but already in 1.x). 2014-02-05 11:47:07 +01:00
Adrien Grand 6777be60ce Add script support to value_count aggregations.
Close #5001
2014-02-04 14:29:32 +01:00
Adrien Grand 9333a3c28a Fix hashCode values of aggregations' BytesValues.
This commit removes FilterBytesValues which is very trappy as the default
implementation forwards all method calls to the delegate. So if you do any
non-trivial modification to the terms or to the order of the terms, you need
to remember to override currentValueHash, copyShared, and this is very
error-prone.

FieldDataSource.WithScript.BytesValues and ScriptBytesValues now return correct
hash codes, future bugs here would be catched by the new assertion in
SortedUniqueBytesValues.

This bug was causing performance issues with scripts as all terms were assumed
to have the same hash code.

Close #5004
2014-02-04 14:16:09 +01:00
Luca Cavanna 56f4fcb5df [TEST] thrown error when there are no REST tests to run 2014-02-04 13:05:49 +01:00
Clinton Gormley 238b26a466 [DOC] Tidied up geohashgrid aggregations 2014-02-04 11:54:32 +01:00
Jun Ohtani ba415b8ad2 Does not support "script" in value_clunt aggregation. 2014-02-04 10:26:07 +01:00
Adrien Grand cc1ff560df Rename `geohashgrid` to `geohash_grid` in documentation.
It was renamed in fc6bc4c477.

Close #4997
2014-02-04 09:39:55 +01:00
Lars Francke 1bd9dc129b Fix confusing sentence
The original sentence didn't make much sense. I hope this is a bit better. Taken heavy inspiration from c63d8c4fb5
2014-02-03 17:20:40 +01:00
Lars Francke 7cbd0962b5 Improve Aggregations documentation
* Mostly minor things like typos and grammar stuff
* Some clarifications
* The note on the deprecation was ambiguous. I've removed the problematic part so that it now definitely says it's deprecated
2014-02-03 17:16:52 +01:00
Simon Willnauer bd8cb4eb1b Add [0.90.11] version as a constant 2014-02-03 16:27:02 +01:00
Shay Banon d36e345f1f fix docs to reflect removal of byte buffer memory 2014-02-03 09:54:30 -05:00
Shay Banon d591972c18 Remove the in memory buffer Lucene store/directory
closes #4994
2014-02-03 09:52:19 -05:00
Luca Cavanna 56d3e98fff [TEST] added ability to filter REST test sections to run
Added `tests.rest.section` parameter that allows to filter the test sections that get executed via regex (case insensitive)
2014-02-03 15:30:58 +01:00
Luca Cavanna 63f9281bbf [TEST] added missing put warmer body 2014-02-03 15:30:58 +01:00
Luca Cavanna c72e1de1c4 [TEST] fixed typo s/mising/missing 2014-02-03 15:30:58 +01:00
Simon Willnauer f0774eb5d1 Added dedicated test for MultiMatchQuery 2014-02-03 13:04:33 +01:00
markharwood 82c7c81653 Added tests for match/multimatch queries with invalid “type” JSON param 2014-02-03 11:51:31 +00:00
Luca Cavanna 88771fdf99 [TEST] Added ability to test apis that don't return json
The last response body gets now always stashed in the REST tests and can be retrieved via `$body`. This implies that not only expected values can be retrieved from the stashed values, but actual values as well.

Added support for regular expressions to `match` assertion, using `Pattern.COMMENTS` flag for better readability through new custom hamcrest matcher (adopted in do section as well). Functionality added through new feature called `regex` that needs to be mentioned in the skip sections whenever needed till all the runners support it.

Added also example tests for cat count api
2014-02-03 11:26:38 +01:00
markharwood 5f8dbeaa8e Added exception if passed an invalid type param
Closes #4964
2014-02-03 10:09:38 +00:00
Luca Cavanna 1ca565cf9f [TEST] Added check that yaml REST test suites always end with \n
Our yaml parser seems to be too tolerant in some cases, e.g. it properly parses yaml suites when they don't end with a line feed, whereas other clients tests break due to that. We should try to do the same to keep consistency across runners.
2014-02-03 10:05:35 +01:00
George P. Stathis 74dd33689e Parent / child queries should work with non-default similarities 2014-02-02 09:23:12 +01:00
Martijn van Groningen 244723d401 Added `fields` support to `geo_point` and `completion` field type.
Upgrading 0.90.x `multi_field` type that has a `geo_point` or `completion` field type as default field would otherwise fail.
Also it make sense to support these field types, because both support specifying the actual values as string.
2014-02-02 07:16:36 +01:00
Simon Willnauer 9cf8251a0d Add RamUsageEstimator#sizeOf(Object) to forbidden APIs
This method can be a performance trap since it traverse the
entire object tree that is referenced by the provided object.
See LUCENE-5373
2014-01-31 21:43:20 +01:00
Simon Willnauer 6e18a8945d Prevent usage of object based RamUsageEstimator in Completion090PostingsFormat 2014-01-31 21:16:38 +01:00