4765 Commits

Author SHA1 Message Date
Christoph Büscher
e15e7f7e6e Remove parser argument from methods where we already pass in a parse context
When we pass down both parser and QueryParseContext to a method, we cannot
make sure that the parser contained in the context and the parser that is
parsed as an argument have the same state. This removes the parser argument
from methods where we currently have both the parser and the parse context
as arguments and instead retrieves the parse from the context inside the
method.
2016-04-14 16:18:05 +02:00
Jason Tedor
ed3a71fa2b Fix JvmInfoTests#testUseG1GC to include OpenJDK VMs
Since OpenJDK virtual machines have G1 GC but do not have a java.vm.name
that contains HotSpot, this test fails on OpenJDK. Instead, the
java.vm.name condition should be expanded to include OpenJDK virtual
machines.
2016-04-14 10:09:55 -04:00
Nik Everett
1c5449fe1a Remove PROTOTYPE from scripted_metric aggregation
and cut it to registerAggregation.

Relates to #17085
2016-04-14 10:05:26 -04:00
Yannick Welsch
b7a1baa801 Simplify ActionListenerResponseHandler by adding response supplier (#17752) 2016-04-14 15:46:55 +02:00
Adrien Grand
b3eef99120 Remove FieldStats.Float. #17749
Since doubles can represent all floats accurately, we can just use
FieldStats.Double instead.
2016-04-14 15:03:35 +02:00
Martijn van Groningen
2928fd6ef3 Cleanup query builder for inner hits construction.
* Inner hits can now only be provided and prepared via setter in the nested, has_child and has_parent query.
* Also made `score_mode` a required constructor parameter.
* Moved has_child's min_child/max_children validation from doToQuery(...) to a setter.
2016-04-14 14:43:21 +02:00
Jason Tedor
c9ada75e35 Merge pull request #17740 from jasontedor/g1gc-tests
Pass test JVM arguments to test nodes
2016-04-14 08:08:11 -04:00
Jason Tedor
79d3415210 Help JDK 9 type inference in ShardStateIT.java
The JDK 9 compiler type inference gets confused, so we need to help it
here.
2016-04-14 07:43:41 -04:00
Jason Tedor
4b801f54d1 Add test that JvmInfo correctly determines G1 GC
This commit adds a simple test that JvmInfo is correctly able to
determine whether or not G1 GC is running. As the JvmInfo G1 GC logic is
only applies to HotSpot, the test is constructed to do the same. The
test determines whether or not G1 GC is running by inspecting the test
JVM argument line.
2016-04-14 07:43:40 -04:00
Nik Everett
dd3b4a1e50 Add {} to ifs in org.apache.lucene 2016-04-14 07:38:08 -04:00
Daniel Mitterdorfer
e87b09e8dd Temporarily disable CircuitBreakerServiceIT.testParentChecking() 2016-04-14 13:07:11 +02:00
Colin Goodheart-Smithe
686aff1545 Adds ignore_unmapped option to nested and P/C queries
The change adds a new option to the `nested`, `has_parent`, `has_children` and `parent_id` queries: `ignore_unmapped`. If this option is set to false, the `toQuery` method on the QueryBuilder will throw an exception if the type/path specified in the query is unmapped. If the option is set to true, the `toQuery` method on the QueryBuilder will return a MatchNoDocsQuery. The default value is `false`so the queries work how they do today (throwing an exception on unmapped paths/types)
2016-04-14 10:34:30 +01:00
Daniel Mitterdorfer
c22d93f7cc Increase breaker limit in NettyHttpRequestSizeLimitIT
With the previous breaker limit spurious failures on transport level
can happen in the test. With the new limit we ensure that the breaker
breaks due to a too large HTTP request instead.
2016-04-14 10:12:45 +02:00
Adrien Grand
1c858b57c4 Fix test bug in ZenDiscoveryIT. 2016-04-14 09:52:25 +02:00
Colin Goodheart-Smithe
f7ef600644 Aggregations: Adds serialisation of sigma to extended_stats_bucket pipeline aggregation
Previously the sigma variable in the `extended_stats_bucket` pipeline aggregation was not being serialised in `ExtendedStatsBucketPipelineAggregator`. This PR fixes that.

It also corrects the initial value of sumOfSquares to be 0.

Closes #17701
2016-04-14 08:28:56 +01:00
Nik Everett
86a9365c53 Small format changes in script and monitor packages
Just three files - just adding {}s to if and for statements or making
them single line.
2016-04-13 22:02:42 -04:00
Nik Everett
0386d8ec84 Remove PROTOTYPE from ScriptField
Relates to #17085
2016-04-13 21:30:01 -04:00
Jason Tedor
666172284b Refactor BootstrapCheckTests to use expectThrows
This commit modifies all uses of the pattern try/catch/assert in
BootstrapCheckTests to use expectThrows/assert.

Closes #17731
2016-04-13 18:41:14 -04:00
Nik Everett
3d5def0789 Remove remaining PROTOTYPEs from org.elasticsearch.index.query
Relates to #17085
2016-04-13 16:16:28 -04:00
Jason Tedor
11648cbff6 Merge pull request #17728 from jasontedor/heap-size
Add heap size bootstrap check
2016-04-13 15:11:17 -04:00
Jason Tedor
4f5d73bcb7 Add heap size bootstrap check
This commit adds a bootstrap check to ensure that the initial heap size
and max heap size are set equal to each other.
2016-04-13 15:10:31 -04:00
Boaz Leskes
a0d1f8889d Rebalancing policy shouldn't prevent hard allocation decisions (#17698)
#14259 added a check to honor rebalancing policies (i.e., rebalance only on green state) when moving shards due to changes in allocation filtering rules. The rebalancing policy is there to make sure that we don't try to even out the number of shards per node when we are still missing shards. However, it should not interfere with explicit user commands (allocation filtering) or things like the disk threshold wanting to move shards because of a node hitting the high water mark.

#14259 was done to address #14057 where people reported that using allocation filtering caused many shards to be moved at once. This is however a none issue - with 1.7 (where the issue was reported) and 2.x, we protect recovery source nodes by limitting the number of concurrent data streams they can open (i.e., we can have many recoveries, but they will be throttled). In 5.0 we came up with a simpler and more understandable approach where we have a hard limit on the number of outgoing recoveries per node (on top of the incoming recoveries we already had).
2016-04-13 20:44:41 +02:00
Igor Motov
b01f3b2cd1 Node names cleanup
Fixes two node names contained trailing spaces that was causing cat.tasks test to fail.

Fixes #17718
2016-04-13 12:50:12 -04:00
Sebastian Utz
0b889f1a8f Fix index selection for snapshot restore when non-existent indices are specified (#17715) 2016-04-13 17:25:59 +02:00
Jason Tedor
96456fbd91 Remove remaining uses of JAVA_OPTS
This commit removes the last remaining uses of JAVA_OPTS. Now searching
the codebase for the regex '(?<!ES_)JAVA_OPTS' only shows the uses
warning of its removal and the note about it in the migration docs.
2016-04-13 10:51:53 -04:00
Jim Ferenczi
3c355b66fe Apply the default operator on analyzed wildcard in query_string builder:
* Tokens in the same position are grouped into a SynonymQuery..
 * The default operator is applied on tokens in different positions.
 * The wildcard is applied to the terms in the last position only.
Fixes #2183
2016-04-13 15:41:29 +02:00
Nik Everett
edc09a7ac5 Add NORELEASE while we migrate aggregations 2016-04-13 09:31:54 -04:00
Nik Everett
e1a3aca08b Remove PROTOTYPE from children aggregation
This required some surgery to get serialization working but should allow
us to do the aggregations one at a time.
2016-04-13 09:31:54 -04:00
Nik Everett
a170de5df7 Cut children aggregation to registerAggregation 2016-04-13 09:31:53 -04:00
Nik Everett
b8fdb19312 Remove getQueryPrototype from QueryParser
It isn't used any more.
2016-04-13 09:27:19 -04:00
Jason Tedor
fc7442739c Output all failing bootstrap checks
This commit modifies the boostrap checks to output all failing checks
instead of early-failing on the first check and then possibly failing
again after the user resolves the first failing check.

Closes #17474
2016-04-13 08:48:20 -04:00
Jason Tedor
cfc23a9d67 Move bootstrap checks to node start
This commit moves the execution of the bootstrap checks to after network
services are started. This gives us the flexibility to not merely check
if any of the network settings are set, but instead be smarter about it
and check if the network settings are set in a way that means that the
node will be communicating over an external network (either directly, or
via a proxy). As an bonanza, executing the bootstrap checks in this way
enables us to have the node name in the logs!

Closes #17570
2016-04-13 08:48:10 -04:00
Nik Everett
64f5a4f848 Stop map collisions on FiltersTests
Adds randomUnique to generate unique things and uses it to make unique
keys.

The offending seed was 81AE616FEAD10F17.
2016-04-13 08:35:45 -04:00
Nik Everett
cca3154c43 Rename isSourceEmpty to hasSource
And add a test case for {} to reindex.
2016-04-13 08:19:58 -04:00
Jun Ohtani
048d273408 Cat: cat health supports ts=0 option
If ts=0, cat health disable epoch and timestamp
Be Constant String timestamp and epoch
Move timestamp and epoch to Table
Add rest-api test and test

Closes #10109
2016-04-13 18:08:30 +09:00
Daniel Mitterdorfer
0c7795f53d Merge remote-tracking branch 'danielmitterdorfer/bulk-size-limit'
Closes #17133
2016-04-13 10:43:00 +02:00
Adrien Grand
82849a787a Add back the Version.V_5_0_0 constant. #17688 2016-04-13 10:00:37 +02:00
Daniel Mitterdorfer
117bc68af3 Limit request size on HTTP level
With this commit we limit the size of all in-flight requests on
HTTP level. The size is guarded by the same circuit breaker that
is also used on transport level. Similarly, the size that is used
is HTTP content length.

Relates #16011
2016-04-13 09:58:08 +02:00
Daniel Mitterdorfer
52b2016447 Limit request size on transport level
With this commit we limit the size of all in-flight requests on
transport level. The size is guarded by a circuit breaker and is
based on the content size of each request.

By default we use 100% of available heap meaning that the parent
circuit breaker will limit the maximum available size. This value
can be changed by adjusting the setting

network.breaker.inflight_requests.limit

Relates #16011
2016-04-13 09:54:59 +02:00
Nik Everett
ba9b72c297 Reformat DirectCandidateGenerator's equals method
We'd like to have checkstyle complain about if statements without braces
for all non-single-line if statements.
2016-04-12 17:30:43 -04:00
Nik Everett
fe4d1297df Make AllocationCommands register in the same way as queries
The cluster reroute API had a copy of NamedWriteableRegistry's behavior
inside it in the form of AllocationCommands#registerFactory and
AllocationCommands#lookupFactorySafe. There isn't a reason to duplicate
that effort. So this replaces all of AllocationCommand#Factory with
query-like registration in NetworkModule. Why NetworkModule? Because
the transport client needs it.
2016-04-12 17:29:11 -04:00
Nik Everett
d5d85e4350 Isolate StreamableReader
Makes Writeable not depend on StreamableReader. Keeps the default readFrom
implementation for backwards compatibility during the PROTOTYPE removal
but that'll go when those are gone.

Makes Diffable not extend StreamableReader. Instead Diffable has a readFrom
method. The PROTOTYPE removal will not get to cluster state for a long time
so that method will stay.

Now only a few things implement StreamableReader. They will be addressed
individually and then we'll remove StreamableReader.
2016-04-12 15:43:58 -04:00
Nik Everett
7908759949 Make aggregation registration more like query registration
Creates a class to hold behavior common to these `ParseFieldRegistry`s.

Also renames some weirdly named methods on StreamInput.
2016-04-12 14:50:44 -04:00
Christoph Büscher
fae0666226 Remove norelease comments in test classes
This doesn't seem to block release, and the comments should
rather be tasks that be left in the code base.
2016-04-12 19:48:46 +02:00
Boaz Leskes
5af6982338 TransportNodesListGatewayStartedShards should fall back to disk based index metadata if not found in cluster state (#17663)
When an index is recovered from disk it's metadata is imported first and the master reaches out to the nodes looking for shards of that index. Sometimes those requests reach other nodes before the cluster state is processed by them. At the moment, that situation disables the checking of the store, which requires the meta data (indices with custom path need to know where the data is). When corruption hits this means we may assign a shard to node with corrupted store, which will be caught later on but causes confusion. Instead we can try loading the meta data from disk in those cases.

Relates to #17630
2016-04-12 18:41:00 +02:00
Christoph Büscher
9567f154e6 Removing unused parse method from SortBuilder 2016-04-12 18:00:55 +02:00
Nik Everett
2c487110b2 Remove PROTOTYPE from SearchSourceBuilder
Relates to #17085
2016-04-12 11:57:57 -04:00
Adrien Grand
3bf6f4076c Do not set analyzers on numeric fields.
When it comes to query parsing, either a field is tokenized and it would go
through analysis with its search_analyzer. Or it is not tokenized and the
raw string should be passed to termQuery(). Since numeric fields are not
tokenized and also declare a search analyzer, values would currently go through
analysis twice...
2016-04-12 17:47:29 +02:00
Colin Goodheart-Smithe
f5bade1a0d SimpleQueryParser should call MappedFieldType.termQuery when appropriate. #17678
This will allow to use it on virtual fields like `_index` or `_id` which do not
exist in the index.
2016-04-12 17:47:18 +02:00
Nik Everett
2ed7769ddc Make registerScoreFunction look like registerQuery
The order of the first two arguments was different on the two register
functions. This makes them consistent.
2016-04-12 11:35:29 -04:00