3728 Commits

Author SHA1 Message Date
Isabel Drost-Fromm
3b27dce94f Merge pull request #16056 from MaineC/bug-fix/15860
Fix for MatchQueryBuilderTests.testToQuery test failure

Relates to #15860
2016-01-19 09:57:46 +01:00
Simon Willnauer
b73c737608 apply feedback from @nik9000 2016-01-19 09:54:00 +01:00
Simon Willnauer
8e0390b09e Register index.version_created for several analysis plugin tests 2016-01-19 09:35:32 +01:00
Adrien Grand
b2baf039fd Fix compilation. 2016-01-19 09:32:04 +01:00
Adrien Grand
a90d2fa0b4 Merge pull request #16023 from jpountz/fix/implicit_self_conflict
Reuse metadata mappers for dynamic updates.
2016-01-19 09:28:04 +01:00
Adrien Grand
d6cbd6f2f0 Merge pull request #16059 from jpountz/enhancement/mapping_merge_reason
Expose the reason why a mapping merge is issued.
2016-01-19 09:27:32 +01:00
Boaz Leskes
a90b551e36 Translog: remove ChannelReference and simplify Views
Currently we use ref counting to manage the life cycles of a translog file. This was done to allow the creation of view and snapshots, making sure that the underlying files are available. This commit takes a simpler route based on the observation that a snapshot doesn't need to have it's own life cycle but rather can lift on the lifecycle of it's parent (translog or view). If code failes to adhere to this assumption it will get a channel already closed exception. As such, each file is now owned by a single owner and there is no need for reference counting. As part of the rewrite TranslogReader is renamed to  BaseTranslogReader and ImmutableTranslogReader to TranslogReader

Also, I took the opportunity to clean up legacy translog readers we don't need in master.

Closes #15898
2016-01-19 09:05:26 +01:00
Igor Motov
d9a01225cb Transport actions should make started tasks available to their callers
Sometimes action callers might be interested in having an access to the task that they have just initiated. This changes allows callers to get access to the Task object of the actions that they just started if the action supports the task management.
2016-01-18 21:29:23 -05:00
Jason Tedor
b6c9eaa24a Merge pull request #16068 from jasontedor/ip-field-mapper-term-queries
Single IPv4 addresses in IP field term queries

Closes #16058
2016-01-18 17:46:50 -05:00
Jason Tedor
de992877b8 Single IPv4 addresses in IP field term queries
This commit modifies IpFieldMapper#termQuery to permit single IPv4
addresses for use in match and query_string queries.
2016-01-18 17:44:28 -05:00
Nik Everett
63090f5d4b Merge pull request #15761 from nik9000/more_remove_inject
Don't use guice for QueryParsers
2016-01-18 17:39:53 -05:00
Nik Everett
093600cd63 Cleanup ContextAndHeaderTransportTests
We have two similar tests with the same name, ContextAndHeaderTransportTests.
They shared lots of common code so I extracted much of it into
ActionRecordingPlugin, a plugin which records all action requests for later
inspection.

I also removed all the warnings from both tests. That made lang-mustache
compile cleanly without any custom -Xlint so I removed those. To remove
the warnings I had to add type parameters to ActionFilter which seemed
like a good idea anyway.
2016-01-18 16:14:58 -05:00
Jason Tedor
e62221168e No load average if the values are meaningless
This commit modifies the presentation of load average to not be present
in the response if all of the values are meaningless.
2016-01-18 15:11:47 -05:00
Jason Tedor
f5b72b0714 Load average on Windows is never available
Since load average is never available on Windows, this commit modifies
the handling of load average there to just always return null.
2016-01-18 15:11:47 -05:00
Jason Tedor
d55952a90d Tigthen load average test assertions
This commit tightens the load average test assertions by separating out
OS X as a system where we can make tighter assertions about the load
average values.
2016-01-18 15:11:47 -05:00
Jason Tedor
e5013d16f0 Fix test for load average on FreeBSD
This commit fixes the test for load averages on FreeBSD. On FreeBSD, it
is either the case that linprocfs is mounted at /compat/linux/proc in
which case the load averages are available, or this is not the case and
no load average are available. Previously, the test on FreeBSD was
falling back to the catch all case which asserts that the five-minute
and fifteen-minute load averages are not available.
2016-01-18 15:11:43 -05:00
Jason Tedor
2aa94a5133 Normalize unavailable load average
This commit normalizes the one-minute load average obtained from
OperatingSystemMXBean#getSystemLoadAverage to -1 when it is not
available. This is to reflect the Javadocs for this method saying "If
the load average is not available, a negative value is returned."
2016-01-18 15:09:08 -05:00
Nik Everett
15c43b64a1 Don't use guice for QueryParsers
1. Gets guice out of the business of building ScoreFunctionParsers and
QueryParsers.
2. Moves QueryParser registration to SearchModule
3. Moves NamedWriteableRegistry construction out of guice and into Node and
TransportClient.
4. Moves shape registration into SearchModule so now all named writeable
registration is done in the SearchModule.

This is breaking for plugin authors. Instead of declaring new QueryParser
like:

```java
public void onModule(IndicesModule module) {
  module.registerQueryParser(NewQueryParser.class);
}
```

you do it like:

```java
public void onModule(SearchModule module) {
  module.registerQueryParser(NewQueryParser::new);
}
```

The QueryParser's argument no longer come from @Inject, now they come from
the declaration in the plugin. The above example is for a no-arg QueryParser.
Most of the QueryParsers in Elasticsearch are no-arg.

ScoreFunctionParsers have a similar but slightly different change. This:

```java
public void onModule(SearchModule module) {
  module.registerFunctionScoreParser(NewFunctionScoreParser.class);
}
```

becomes

```java
public void onModule(SearchModule module) {
  module.registerFunctionScoreParser(new NewFunctionScoreParser());
}
```

Since all known ScoreFunctionParsers have no arg constructors its simpler to
just build them at registration time rather than specify a supplier that is
used to build them later.
2016-01-18 15:02:47 -05:00
Jason Tedor
3be12ed9fd Merge pull request #15932 from jasontedor/load-average-format
Modify load average format

Relates #15907
2016-01-18 11:59:19 -05:00
Jason Tedor
df598e8129 Modify load average formats
This commit modifies the load_average in the node stats API response
to be an object containing the one-minute, five-minute and
fifteen-minute load averages as fields (if those values are
available). Additionally, this commit modifies the cat nodes API
response to format the one-minute, five-minute and fifteen-minute load
averages as null if any of the respective values are not available.
2016-01-18 11:41:34 -05:00
Adrien Grand
055953d6b3 Expose the reason why a mapping merge is issued.
This would be useful in order to only perform some validations in the case of
a mapping update and in cases when a mapping is restored eg. after a restart,
such as discussed in #15989.

This replaces the current `applyDefault` parameter which can be derived from
the mapping merge reason: the default mapping should be applied only in case of
a mapping update, if the mapping does not exist yet and if this is not the
default mapping.
2016-01-18 17:41:23 +01:00
Christoph Büscher
fcf3bc213d Tests: Reduce number of random runs for shape builder tests 2016-01-18 16:27:30 +01:00
Nik Everett
491d776f65 Merge pull request #16047 from nik9000/unraw_3
Remove some raw warnings from settings
2016-01-18 10:00:44 -05:00
Nik Everett
d1a2bee1e3 Merge pull request #16048 from nik9000/unraw_4
Remove lots of raw from aggregations
2016-01-18 09:57:00 -05:00
Nik Everett
01f37226ab Push an unchecked cast until its really safe 2016-01-18 09:55:56 -05:00
Nik Everett
bfcffa2a00 Merge pull request #16027 from nik9000/shard_core_key_map_closed
Handle closed readers in ShardCoreKeyMap
2016-01-18 09:16:10 -05:00
Nik Everett
1e251bba2d Merge pull request #16046 from nik9000/unraw_2
Squash more raw type warnings
2016-01-18 09:15:21 -05:00
Isabel Drost-Fromm
d531146b90 Fixes test failure with numeric range query. 2016-01-18 15:14:42 +01:00
Simon Willnauer
c2e8ba8970 Register index.version_created on unittest that set it 2016-01-18 15:04:35 +01:00
Simon Willnauer
7c55241ca0 Merge branch 'master' into new_index_settings 2016-01-18 14:46:40 +01:00
Simon Willnauer
a3a7b14efd [TEST] fix error message assertion 2016-01-18 14:45:46 +01:00
Simon Willnauer
dce29d29c0 Normalize template index settings before validating 2016-01-18 14:39:21 +01:00
Simon Willnauer
3e6018fedb add back lcuene_default as a valid setting for our tests to work out of the box 2016-01-18 13:23:24 +01:00
Simon Willnauer
b5c326023f also allow other lucene codecs to be loaded 2016-01-18 13:17:07 +01:00
Martijn van Groningen
7c8a1ecf37 test: added todo 2016-01-18 13:17:01 +01:00
Martijn van Groningen
62089539db s/processorId/processorTag 2016-01-18 13:11:46 +01:00
Martijn van Groningen
c7d220330d added note to jdocs that this exception should never get serialzed 2016-01-18 13:09:10 +01:00
Simon Willnauer
5dc3e721e0 fix test 2016-01-18 13:03:19 +01:00
Simon Willnauer
04bbc5b83c also allow lucene_default as a valid codec 2016-01-18 13:02:28 +01:00
Simon Willnauer
b7c0ac6ad6 Add test to ensure templates don't accept invalid index values 2016-01-18 13:00:10 +01:00
Simon Willnauer
e52a873d1a Restrict index.codec to default and best_compression 2016-01-18 12:59:42 +01:00
Simon Willnauer
9562fb76bc expose default settings via rest API 2016-01-18 12:48:47 +01:00
Martijn van Groningen
328c375970 test: removed forgotten AwaitsFix annotations 2016-01-18 11:59:57 +01:00
Alexander Reelsen
2b0c036b99 Tests: Ensure termvector is not fetched from translog
Setting realTime to false in the get term vector request ensures,
that after a refresh the document is not fetched from the translog,
which seems to yield different in rare test runs.

The change likely triggering this was introduced in #15933
2016-01-18 10:18:43 +01:00
Simon Willnauer
a61723b538 convert index.store.fs.fs_lock 2016-01-18 10:17:11 +01:00
Simon Willnauer
13e5547537 Add REST tests for reset index settings and for listing defaults. 2016-01-18 10:02:37 +01:00
Simon Willnauer
651819ca6c Add validation of index settings passed via cmd and elasticsearch.yaml
From this commit on we also validate all settings starting with `index.` that are
node-level settings configured in yaml files or via commandline arguments or system properties.
This check happens on node startup before the actual node is started.
2016-01-18 09:41:03 +01:00
Simon Willnauer
ef9ef0c47a make get(Setting) fallback to node settings 2016-01-18 09:23:35 +01:00
Simon Willnauer
cc25c4c8be don't validate query cache types - they can be customized 2016-01-18 09:23:35 +01:00
Simon Willnauer
7925e2ef84 convert IndexModule settings 2016-01-18 09:23:35 +01:00